mysql数据库

、增、删、改、查数据库表字段的结构

(1)选择要操作的数据库

[sql]  view plain  copy
  1. mysql> USE my_db;  

(2)创建数据库表stu_tbl

[sql]  view plain  copy
  1. mysql>CREATE TABLE stu_tbl(  
  2. mysql>name VARCHAR(20) NOT NULL PRIMARY KEY,   
  3. mysql>id INT NOT NULL,   
  4. mysql>score TINYINT UNSIGNED NOT NULL);  
  5. Query OK, 0 rows affected (0.81 sec)  
(3)查看my_db数据库有多少数据库表

[sql]  view plain  copy
  1. mysql> SHOW TABLES;  
  2. +-----------------+  
  3. | Tables_in_my_db |  
  4. +-----------------+  
  5. | stu_tbl         |  
  6. +-----------------+  
  7. 1 row in set (0.00 sec)  

(4)查看stu_tbl数据库表的字段结构

[sql]  view plain  copy
  1. mysql> DESC stu_tbl;  
  2. +-------+---------------------+------+-----+---------+-------+  
  3. | Field | Type                | Null | Key | Default | Extra |  
  4. +-------+---------------------+------+-----+---------+-------+  
  5. name  | varchar(20)         | NO   | PRI | NULL    |       |  
  6. | id    | int(11)             | NO   |     | NULL    |       |  
  7. | score | tinyint(3) unsigned | NO   |     | NULL    |       |  
  8. +-------+---------------------+------+-----+---------+-------+  
  9. rows in set (0.00 sec)  

(5)删除整个数据库表

[sql]  view plain  copy
  1. mysql> DROP TABLE  stu_tbl;  
  2. Query OK, 0 rows affected (0.59 sec)  
  3.   
  4. mysql> SHOW TABLES;  
  5. Empty set (0.00 sec)  

(5)删除数据库表的一个字段,删除id字段

[sql]  view plain  copy
  1. mysql> ALTER TABLE stu_tbl DROP COLUMN id;  
  2. Query OK, 0 rows affected (1.08 sec)  
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> DESC stu_tbl;  
  6. +-------+---------------------+------+-----+---------+-------+  
  7. | Field | Type                | Null | Key | Default | Extra |  
  8. +-------+---------------------+------+-----+---------+-------+  
  9. name  | varchar(20)         | NO   | PRI | NULL    |       |  
  10. | score | tinyint(3) unsigned | NO   |     | NULL    |       |  
  11. +-------+---------------------+------+-----+---------+-------+  
  12. rows in set (0.01 sec)  

(6)给数据库表stu_tbl添加一个love字段

FIRST说明,把该字段设为数据库表的第一个字段。

[sql]  view plain  copy
  1. mysql> ALTER TABLE stu_tbl ADD love VARCHAR(20) NOT NULL FIRST;   
  2. Query OK, 0 rows affected (1.00 sec)  
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> DESC stu_tbl;  
  6. +-------+---------------------+------+-----+---------+-------+  
  7. | Field | Type                | Null | Key | Default | Extra |  
  8. +-------+---------------------+------+-----+---------+-------+  
  9. | love  | varchar(20)         | NO   |     | NULL    |       |  
  10. name  | varchar(20)         | NO   | PRI | NULL    |       |  
  11. | id    | int(11)             | NO   |     | NULL    |       |  
  12. | score | tinyint(3) unsigned | NO   |     | NULL    |       |  
  13. +-------+---------------------+------+-----+---------+-------+  
  14. rows in set (0.00 sec)  
AFTER说明,把该字段放到id字段后面
[sql]  view plain  copy
  1. mysql> ALTER TABLE stu_tbl ADD love VARCHAR(20) NOT NULL AFTER id;  
  2. Query OK, 0 rows affected (0.94 sec)  
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> DESC stu_tbl;  
  6. +-------+---------------------+------+-----+---------+-------+  
  7. | Field | Type                | Null | Key | Default | Extra |  
  8. +-------+---------------------+------+-----+---------+-------+  
  9. name  | varchar(20)         | NO   | PRI | NULL    |       |  
  10. | id    | int(11)             | NO   |     | NULL    |       |  
  11. | love  | varchar(20)         | NO   |     | NULL    |       |  
  12. | score | tinyint(3) unsigned | NO   |     | NULL    |       |  
  13. +-------+---------------------+------+-----+---------+-------+  
  14. rows in set (0.01 sec)  

(7)把数据库表stu_tbl中score字段名字修改为mathscore,位置放在name后面。

[sql]  view plain  copy
  1. mysql> ALTER TABLE stu_tbl CHANGE score mathscore TINYINT UNSIGNED NOT NULL AFTER name;  
  2. Query OK, 0 rows affected (0.34 sec)  
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> DESC stu_tbl;  
  6. +-----------+---------------------+------+-----+---------+-------+  
  7. | Field     | Type                | Null | Key | Default | Extra |  
  8. +-----------+---------------------+------+-----+---------+-------+  
  9. name      | varchar(20)         | NO   | PRI | NULL    |       |  
  10. | mathscore | tinyint(3) unsigned | NO   |     | NULL    |       |  
  11. | id        | int(11)             | NO   |     | NULL    |       |  
  12. +-----------+---------------------+------+-----+---------+-------+  
  13. rows in set (0.00 sec)  

(8)在数据库表stu_tbl建好之后,修改唯一键。

把id字段,设置为唯一键

[sql]  view plain  copy
  1. mysql> ALTER TABLE stu_tbl ADD UNIQUE (id);  
  2. Query OK, 0 rows affected (0.33 sec)  
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> DESC stu_tbl;  
  6. +-------+---------------------+------+-----+---------+-------+  
  7. | Field | Type                | Null | Key | Default | Extra |  
  8. +-------+---------------------+------+-----+---------+-------+  
  9. name  | varchar(20)         | NO   | PRI | NULL    |       |  
  10. | id    | int(11)             | NO   | UNI | NULL    |       |  
  11. | score | tinyint(3) unsigned | NO   |     | NULL    |       |  
  12. +-------+---------------------+------+-----+---------+-------+  
  13. rows in set (0.00 sec)  
把id字段的唯一键性质取消,使用INDEX

[sql]  view plain  copy
  1. mysql> ALTER TABLE stu_tbl DROP INDEX id;  
  2. Query OK, 0 rows affected (0.10 sec)  
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> DESC stu_tbl;  
  6. +-------+---------------------+------+-----+---------+-------+  
  7. | Field | Type                | Null | Key | Default | Extra |  
  8. +-------+---------------------+------+-----+---------+-------+  
  9. name  | varchar(20)         | NO   | PRI | NULL    |       |  
  10. | id    | int(11)             | NO   |     | NULL    |       |  
  11. | score | tinyint(3) unsigned | NO   |     | NULL    |       |  
  12. +-------+---------------------+------+-----+---------+-------+  
  13. rows in set (0.00 sec)  

(9)把数据库表stu_tbl更改名字为stu1_tbl;

[sql]  view plain  copy
  1. mysql> RENAME TABLE stu_tbl TO stu1_tbl;  
  2. Query OK, 0 rows affected (0.05 sec)  
  3.   
  4. mysql> SHOW TABLES;  
  5. +-----------------+  
  6. | Tables_in_my_db |  
  7. +-----------------+  
  8. | stu1_tbl        |  
  9. +-----------------+  
  10. 1 row in set (0.00 sec)  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lm_y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值