一、LAB1:(单选、多选)
作用:
1、字段的值只能在给定范围中选择
2、enum 单选 只能在给定的范围内选一个值,如性别 sex 男male/女female
3、set 多选 在给定的范围内可以选择一个或一个以上的值(爱好1,爱好2,爱好3...)
目标:

表school.student3
姓名 name varchar(50)
性别 sex enum('m','f')
爱好 hobby set('music','book','game','disc')
1、创建表
示例:
mysql> use school
mysql> create table student3(
name varchar(50),
sex enum('m','f'),
hobby set('music','book','game','disc')
);
Query OK, 0 rows affected (0.31 sec)
2、查看表结构
示例:
1)mysql> desc student3;
+-------+-----------------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-----------------------------------+------+-----+---------+-------+
| name | varchar(50) | YES | | NULL | |
| sex | enum('m','f') | YES | | NULL | |
| hobby | set('music','book','game','disc') | YES | | NULL | |
+-------+-----------------------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
2)mysql> show create table student3\G
*************************** 1. row ***************************
Table: student3
Create Table: CREATE TABLE `student3` (
`name` varchar(50) default NULL,
`sex` enum('m','f') default NULL,
`hobby` set('music','book','game','disc') default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
========================================================
3、插入数据
示例:
mysql> insert into student3 values ('tom','m','book,game');
Query OK, 1 row affected (0.00 sec)
4、查询数据
示例:
mysql> select * from student3;
+------+------+-----------+
| name | sex | hobby |
+------+------+-----------+
| tom | boy | book,game |
+------+------+-----------+
1 row in set (0.00 sec)
5、插入非法数据
示例:
mysql> insert into student3 values ('jack','m','film');
ERROR 1265 (01000): Data truncated for column 'hobby' at row 1
(超出范围)
网友评论