Mysql学习笔记(二)对表结构的增删改查
有将近一个星期都没有更新mysql了。相反linux的东西倒是学习不少。可能我个人情感上对linux更感兴趣一点。但mysql我也不烦,只是一旦将精力投入到了一样事情上去,就很难将精力分散去搞其他的东西。
最近我也调整了学习计划和健身计划。以前是每天晚上下班后,运动半个小时到一个小时,现在是晚上早睡,基本上如果没有特别的安排,10:30是肯定要入睡的。从下班到家,然后抽出二到三个小时学习一下。至于健身,要放在了早上,昨天试验了一下,早上还是起的来的。5:30起床,跑步半个小时,甚至还有时间去早市吃早餐。
实际上,如果下班不干点自己感兴趣的事情,一天也就这么过去了。
mysql的这部分,实际上平时都练习的比较熟悉。本来想要跳过这个章节,后来想到想要将自己的知识组织成为一个系列。即使以后遇到难题了,遗忘了知识点,也可以迅速的从这些笔记中找到答案,迅速的回忆起来。
稳固的知识体系是很重要的,希望我这个好习惯能够一直的坚持下去。
用于测试的sql代码和数据:
#班级表 create table classes( class_no int auto_increment primary key, class_name char(20) not null unique, department_name char(20) not null )engine=innodb default charset=utf8; #下面是一些测试数据: insert into classes(class_name,department_name) values ('英语二班','高一英语二班'), ('英语三班','高一英语三班'), ('英语四班','高一英语四班'), ('英语五班','高一英语五班'), ('英语六班','高一英语六班'), ('数学一班','高一数学一班'), ('数学二班','高一数学二班'), ('数学三班','高一数学三班'), ('数学四班','高一数学四班'), ('数学五班','高一数学五班'), ('数学六班','高一数学六班'), ('语文一班','高一语文一班'), ('语文二班','高一语文二班'), ('语文三班','高一语文三班'), ('语文四班','高一语文四班'), ('语文五班','高一语文五班'), ('语文六班','高一语文六班');
1、表结构之增、删、改、插
注意:这里演示以classes表作为基础。在实际应用中,可以替换成你自己的表名。
原有的表结构如下图:
查看表结构以及字段:
desc classes;
增加字段:
alter table classes add testfield1 varchar(10) not null default '';
删除字段:
alter table classes drop testfield1;
修改字段名:
(为了操作方便,再重新加上字段:alter table classes add testfield1 varchar(10) not null default '';)
alter table classes change testfield1 test varchar(10) not null default '';
仅修改字段类型:
alter table classes modify test chat(10);
modify 和change的作用差不多。区别在于,change是更换字段的名字。而modify只改变该字段的字段类型。
平时使用的使用的时候可以区别使用。
2、对表约束的增、删、改、查。
在工作中经常会遇到给表增加约束,或者删除约束的状况。
添加约束条件:
语法为:alter table 你的表名 add constraint 约束名 约束类型(字段名)
alter table classes add constraint myunique unique(class_no);
删除约束条件:
删除约束条件之前我们要清楚的知道自己的表里已经有了那些约束。
可以通过 show create table 表名 \G 来显示。这里的\G 意思是group 的意思(我主观臆测的)。
show create table classes \G 注意\G后没有;号。
要删除约束条件,还要知道有那些约束条件。
约束条件一般有主键约束(primary key) 外键约束(foreign key) ,唯一索引名(index)
这里先简单的介绍一下什么是外键约束,先看看foreign 是什么意思:外来的外国的。也就是说这张表中的这个字段来源与另外一张表,其中的值不能五中生有,必须从另外一 张表中来。
更加详细的介绍,我们看后面的文章。
删除主键约束:
语法:alter table 表名 drop primary key.
栗子:alter table classes drop primary key.
删除外键约束:
一张表可以有一个主键,但可以有多个外键。因此删除外键的时候要删除当时给外键起的那个名字,即约束名。
语法: aleter table 表名 drop foreign key 约束名;
删除唯一约束:
什么是唯一约束:举个栗子,比如我们的身份证号码是不会重复的,那么在录入身份证的过程中我们就会防止由于失误而录入重复的身份证号码。这就是唯一约束。unqiue(独特的,独一无二的、稀罕的)。当然了唯一约束一个表也可以有多个的,比如用户表里可以既有身份证号、也可以有电话号码。那么我们删除的时候,也要删除约束名。
语法:alter table 表名 drop index 约束名。
alter table classes drop index class_name;
修改表的其他选项:如修改存储引擎类型、修改字符集、修改自增初始值。
修改存储引擎: alter table 表名 engine=新存储引擎;
修改字符集: alter table 表名 charset=新的字符集;
修改自增初试值: alter table 表名 auto_increment=新的初始值;
3、对表名的修改和删除
修改表名虽然很简单,但是我经常用到。
再项目准备阶段、设计数据库的时候。表名为了更加的方便理解,因此设计上应当尽量的人性化,所以难免有修改表名的时候。
修改表名:
alter table 表名 rename 新表名。
这里我们区分一下修改表名和修改字段名的区别:alter table 表名 change 原字段 新字段 约束条件;
啰嗦一下:change强调的是数据结构发生改变,而change强调的是表的名字发生了改变,数据本身并不发生变化。因此可见外国人命名的时候还是非常严禁的。
删除表名:
alter table 表名 ;
在删除表的时候。如果该表中存在外键,那就会报错。为什么呢?大家想一想。
当然删表对于myisam存储引擎就不会报错。这又是为什么呢?
以上就是Mysql学习笔记(二)对表结构的增删改查的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Anda boleh membuka phpmyadmin melalui langkah -langkah berikut: 1. Log masuk ke panel kawalan laman web; 2. Cari dan klik ikon phpmyadmin; 3. Masukkan kelayakan MySQL; 4. Klik "Login".

MySQL adalah sistem pengurusan pangkalan data relasi sumber terbuka, terutamanya digunakan untuk menyimpan dan mengambil data dengan cepat dan boleh dipercayai. Prinsip kerjanya termasuk permintaan pelanggan, resolusi pertanyaan, pelaksanaan pertanyaan dan hasil pulangan. Contoh penggunaan termasuk membuat jadual, memasukkan dan menanyakan data, dan ciri -ciri canggih seperti Operasi Join. Kesalahan umum melibatkan sintaks SQL, jenis data, dan keizinan, dan cadangan pengoptimuman termasuk penggunaan indeks, pertanyaan yang dioptimumkan, dan pembahagian jadual.

Kedudukan MySQL dalam pangkalan data dan pengaturcaraan sangat penting. Ia adalah sistem pengurusan pangkalan data sumber terbuka yang digunakan secara meluas dalam pelbagai senario aplikasi. 1) MySQL menyediakan fungsi penyimpanan data, organisasi dan pengambilan data yang cekap, sistem sokongan web, mudah alih dan perusahaan. 2) Ia menggunakan seni bina pelanggan-pelayan, menyokong pelbagai enjin penyimpanan dan pengoptimuman indeks. 3) Penggunaan asas termasuk membuat jadual dan memasukkan data, dan penggunaan lanjutan melibatkan pelbagai meja dan pertanyaan kompleks. 4) Soalan -soalan yang sering ditanya seperti kesilapan sintaks SQL dan isu -isu prestasi boleh disahpepijat melalui arahan jelas dan log pertanyaan perlahan. 5) Kaedah pengoptimuman prestasi termasuk penggunaan indeks rasional, pertanyaan yang dioptimumkan dan penggunaan cache. Amalan terbaik termasuk menggunakan urus niaga dan preparedStatemen

MySQL dipilih untuk prestasi, kebolehpercayaan, kemudahan penggunaan, dan sokongan komuniti. 1.MYSQL Menyediakan fungsi penyimpanan dan pengambilan data yang cekap, menyokong pelbagai jenis data dan operasi pertanyaan lanjutan. 2. Mengamalkan seni bina pelanggan-pelayan dan enjin penyimpanan berganda untuk menyokong urus niaga dan pengoptimuman pertanyaan. 3. Mudah digunakan, menyokong pelbagai sistem operasi dan bahasa pengaturcaraan. 4. Mempunyai sokongan komuniti yang kuat dan menyediakan sumber dan penyelesaian yang kaya.

Apache menyambung ke pangkalan data memerlukan langkah -langkah berikut: Pasang pemacu pangkalan data. Konfigurasikan fail web.xml untuk membuat kolam sambungan. Buat sumber data JDBC dan tentukan tetapan sambungan. Gunakan API JDBC untuk mengakses pangkalan data dari kod Java, termasuk mendapatkan sambungan, membuat kenyataan, parameter mengikat, melaksanakan pertanyaan atau kemas kini, dan hasil pemprosesan.

Proses memulakan MySQL di Docker terdiri daripada langkah -langkah berikut: Tarik imej MySQL untuk membuat dan memulakan bekas, tetapkan kata laluan pengguna root, dan memetakan sambungan pengesahan port Buat pangkalan data dan pengguna memberikan semua kebenaran ke pangkalan data

Peranan utama MySQL dalam aplikasi web adalah untuk menyimpan dan mengurus data. 1.MYSQL dengan cekap memproses maklumat pengguna, katalog produk, rekod urus niaga dan data lain. 2. Melalui pertanyaan SQL, pemaju boleh mengekstrak maklumat dari pangkalan data untuk menghasilkan kandungan dinamik. 3.MYSQL berfungsi berdasarkan model klien-pelayan untuk memastikan kelajuan pertanyaan yang boleh diterima.

Memasang MySQL pada CentOS melibatkan langkah -langkah berikut: Menambah sumber MySQL YUM yang sesuai. Jalankan YUM Pasang Perintah MySQL-Server untuk memasang pelayan MySQL. Gunakan perintah mysql_secure_installation untuk membuat tetapan keselamatan, seperti menetapkan kata laluan pengguna root. Sesuaikan fail konfigurasi MySQL seperti yang diperlukan. Tune parameter MySQL dan mengoptimumkan pangkalan data untuk prestasi.
