一、实验目的
1.掌握修改表结构的方法;
- 增加列
alter table 表名 add 列名 列类型
alter table 表名 add 列名 列类型 after 列名
- 修改列类型
alter table 表名 modify 列名 新类型
- 修改列
alter table 表名 change 列名 新字段名 字段选项 ;
- 调整列位置
alter table 表名 change 列名 新列名 字段选项 after字段名
- 删除列
alter table 表名 drop column 字段名
2.插入记录;
insert into 表名 values
二、实验内容
1.创建数据库(自己命名),使用以下代码创建表格yg
DROP TABLE IF EXISTS yg;
CREATE TABLE yg(
编号 char(6) NOT NULL primary key,
姓名 char(10) NOT NULL,
出生日期 date,
性别 tinyint(1) NOT NULL DEFAULT 1,
籍贯 char(10)
);
2. 修改“出生日期”类型为“datetime”
(贴图)
3. 将“性别”列调整到“姓名”列的后面(还要保持“性别”原有的属性)
(贴图)
4. 在“性别”列后插入“政治面貌”列,类型为char(4)
(贴图)
5. 删除“籍贯”列
(贴图)
6. 查看“yg”表的表结构
(贴图)
7. 给数据库插入3条记录(内容自己输入)
(贴图)
8. 查看“yg”表的所有记录
(贴图)
mysql> create table yg;
ERROR 1113 (42000): A table must have at least 1 column
mysql> create table yg(
-> 编号 char(6) NOT NULL primary key,
-> 姓名 char(10) NOT NULL,
-> 出生日期 date,
-> 性别 tinyint(1) NOT NULL DEFAULT 1,
-> 籍贯 char(10)
-> );
Query OK, 0 rows affected (0.01 sec)
mysql> alter table yg modify column `出生日期` datetime;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> ALTER TABLE yg CHANGE COLUMN 性别 性别 TINYINT(1) NOT NULL DEFAULT 1 AFTER 姓名;
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc yg;
+----------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+------------+------+-----+---------+-------+
| 编号 | char(6) | NO | PRI | NULL | |
| 姓名 | char(10) | NO | | NULL | |
| 性别 | tinyint(1) | NO | | 1 | |
| 出生日期 | datetime | YES | | NULL | |
| 籍贯 | char(10) | YES | | NULL | |
+----------+------------+------+-----+---------+-------+
5 rows in set (0.02 sec)
mysql> ALTER TABLE yg ADD COLUMN 政治面貌 CHAR(4) AFTER 性别;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> ALTER TABLE yg DROP COLUMN 籍贯;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> DESCRIBE yg;
+----------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+------------+------+-----+---------+-------+
| 编号 | char(6) | NO | PRI | NULL | |
| 姓名 | char(10) | NO | | NULL | |
| 性别 | tinyint(1) | NO | | 1 | |
| 政治面貌 | char(4) | YES | | NULL | |
| 出生日期 | datetime | YES | | NULL | |
+----------+------------+------+-----+---------+-------+
5 rows in set (0.01 sec)
mysql> INSERT INTO yg (编号, 姓名, 性别,政治面貌,出生日期) VALUES
-> ('001', '张神', '男', '群众', 2000),
-> ('002', '作鬼', '女', '群众', 2000),
-> ('003', '有影', '男', '群众', 2000);
Query OK, 3 rows affected, 6 warnings (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 6
mysql> SELECT * FROM yg;
+------+------+------+----------+---------------------+
| 编号 | 姓名 | 性别 | 政治面貌 | 出生日期 |
+------+------+------+----------+---------------------+
| 001 | 张神 | 0 | 群众 | 0000-00-00 00:00:00 |
| 002 | 作鬼 | 0 | 群众 | 0000-00-00 00:00:00 |
| 003 | 有影 | 0 | 群众 | 0000-00-00 00:00:00 |
+------+------+------+----------+---------------------+
3 rows in set (0.00 sec)