练习:
1、在yg_tab表里添加名id的字段,在所有字段的上方,为主键字段且有自动增长功能。把表中的name和sex字段设置为index字段。
在部门字段下方添加mail字段默认值是user@tarena.com。
在id字段下添加名为yg_id字段,字段值不允许重复,
在mail字段下方添加loves字段保存员工的爱好 默认爱好 IT,film
2、查看表结构看设置是否正确
3、向表中插入3条新的员式记录
4、查看记录是否插入成功
5、删除表里所有字段的索引属性
6、查看表结构是否删除成功。
7、复制当前表新表名为 newuser
8、删除yg_tab表中所有记录
mysql> alter table yg_tab modify id int(2) not null primary key auto_increment; ///在yg_tab表中添id字段在最上方,字段类型int(2) //不允许空值not null //设置为主键primary key //自动增长功能 auto_increment Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0 |
mysql> select * from yg_tab; //查看yg_tab表的内容。 +----+------+--------+------+-----------+----------+------+------------+---------+ | id | name | gender | age | entrytime | position | work | department | work_id | +----+------+--------+------+-----------+----------+------+------------+---------+ | 1 | tom | boy | 23 | 2013 | staff | IT | plan | 100 | | 2 | jea | gril | 18 | 2012 | manager | chef | finance | 100 | | 3 | kek | boy | 24 | 2010 | staff | driv | personnel | 100 | +----+------+--------+------+-----------+----------+------+------------+---------+ 3 rows in set (0.00 sec) |
mysql> create index name on yg_tab(name); //为yg_tab表的name字段设置index Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0 //设置name字段为索引,索引名为name |
mysql> create index gender on yg_tab(name); Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: 0 //同上。 |
mysql> alter table yg_tab add loves set("IT","film","game") default "IT,film"; Query OK, 3 rows affected (0.00 sec) Records: 3 Duplicates: 0 Warnings: //添加字段loves, //多选 set("IT","film","game") //默认值为"IT,film" |
mysql> alter table yg_tab modify mail char(15) not null ; //添加yg_tab表中的mail字段 //指定宽度为15字节。 //不允许为空值 not null Query OK, 3 rows affected (0.01 sec) Records: 3 Duplicates: 0 Warnings: 0. |
mysql>insert into yg_tab values ("6","anmi","gril","24","2013","manager","chef","finance","106","anmi@tarena.com","film"); //添加记录。 |
mysql> select * from yg_tab; +----+------+--------+-----+-----------+----------+------+------------+---------+-----------------+---------+ | id | name | gender | age | entrytime | position | work | department | work_id | mail | loves | +----+------+--------+-----+-----------+----------+------+------------+---------+-----------------+---------+ | 1 | tom | boy | 23 | 2013 | staff | IT | plan | 100 | user@tarena.com | IT,film | | 2 | jea | gril | 18 | 2012 | manager | chef | finance | 100 | user@tarena.com | IT,film | | 3 | kek | boy | 24 | 2010 | staff | driv | personnel | 100 | user@tarena.com | IT,film | | 4 | heh | boy | 18 | 2011 | staff | IT | plan | 101 | heh@tarena.com | IT | | 5 | lia | boy | 34 | 2003 | manager | chef | finance | 103 | liay@tarena.com | film | | 6 | anm | gril | 24 | 2013 | manager | chef | finance | 106 | anmi@tarena.com | film | +----+------+--------+-----+-----------+----------+------+------------+---------+-----------------+---------+ 6 rows in set (0.00 sec) |
mysql> create table newuser select * from ygdb.yg_tab; //复制ygdb.yg_tab,新表名为newuser Query OK, 6 rows affected (0.00 sec) Records: 6 Duplicates: 0 Warnings: 0 |
mysql> show tables; +----------------+ | Tables_in_ygdb | +----------------+ | newuser | | yg_tab | +----------------+ 2 rows in set (0.00 sec |
mysql> alter table yg_tab modify id int(2) not null; //yg_tab表中的id字段保留类型,修改不能为空值 Query OK, 6 rows affected (0.00 sec) Records: 6 Duplicates: 0 Warnings: 0 |
mysql> alter table yg_tab drop primary key; //删除yg_tab表的主键 Query OK, 6 rows affected (0.00 sec) Records: 6 Duplicates: 0 Warnings: 0 |
mysql> delete from yg_tab; //删除yg_tab表的所有内容 Query OK, 6 rows affected (0.00 sec) |
转载于:https://blog.51cto.com/linuxengineer/1347396