码迷,mamicode.com
首页 > 数据库 > 详细

MySQL数据库操作语句(补充1)(cmd环境运行)

时间:2017-08-31 23:12:09      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:text   mysql数据库   sql   var   语句   枚举类   enum   输入   def   

一.字符串类型

enum枚举类型

 1 /*
 2 也叫做枚举类型,类似于单选!
 3 如果某个字段的值只能从某几个确定的值中进行选择,一般就使用enum类型,
在定义的时候需要将该字段所有可能的选项都罗列出来:
4 5 */ 6 7 create table test_enum( 8 gender enum(male,female,secret); 9 ); 10 11 -- 而在插入数据的时候,只能在规定的选项中的进行选择: 12 insert into test_enum values(male); 13 insert into test_enum values(female);

 -- 数据库中实际存储的其实是整型数据!

技术分享

1 -- 插入female
2 insert into test_gender values(2); 

text 

在实际的开发中,自由输入区一般都用text类型,比如新闻正文,博客正文等!

1 create table news(
2     news_id int(11) primary key  auto_increment  ,
3     content text 
4 );

 

set

/*
也叫做集合类型,类似于多选项!
如果一个字段的值只能是某个或某几个选项的值,最好使用set类型
同enum类型一样,在定义的时候也需要把所有可能的选项都罗列出来:

*/
create table zifu(
  hobby set(sleep,eat,study,php,LOL,WOW)
);

insert into zifu values(sleep,php,LOL);

其实,多选项实际存储的也是整型数据:

技术分享

1 -- 选择sleep 和php    1+8= 9
2 insert into zifu  values(9); 

二.列属性

 

null和not null

默认情况下,字段都是可以为空的,也就是该属性的缺省值为null

 

1 -- not null 不能为空  unsigned非特殊字符
2 create table stu(
3    name varchar(20) not null,
4    age tinyint unsigned
5 );

default

自定义默认值属性,也叫做default约束,通常就是配合not null属性一起使用,也就是说某个字段不允许为空,但是如果用户没有给该字段插入数据,就用默认值去填充!

create table user_my(
   id int primay key auto_increment
   name varchar(32) unique key default 我是没有设置唯一键内容的name
);
-- 当然,也可以直接插入default关键字,意思就是插入默认值:

insert into user_my values(23,default);

 

primary key

 1.设置主键之后就不能添加重复的主键的值了

 2.主键会自动增加非空约束

定义主键方法有2:

 

 1 -- 1.直接在字段的后面进行设置
 2 create table stu(
 3     id int unique primary key  auto_increment   
 4 );
 5 
 6 -- 2.定义完字段后再定义主键
 7 create table stu(
 8     id int unique  auto_increment,
 9     primary key(id)
10 );

注意:

如果某个主键是一个组合主键,就只能使用第二种方式!

1 create table tea(
2     tea_name varchar(20),
3     class_id tinyint unsigned, 
4     day_num tinyint unsigned,
5     -- 定义组合主键
6     primary key(tea_name,class_id)
7 );

unique key

 1 -- 1.直接在字段后面加unique
 2 create table stu(
 3     id int unsigned primary key auto_increament,
 4     stu_id int unsigned unique key,
 5     tel char(11)  unique key
 6 );
 7 
 8 -- 2.先定义字段,后设置unique key
 9 create table stu(
10     id int unsigned primary key auto_increament,
11     stu_id int unsigned ,
12     tel char(11) ,
13     -- 定义两个唯一键
14     unique key(stu_id,tel)
15 );

 

MySQL数据库操作语句(补充1)(cmd环境运行)

标签:text   mysql数据库   sql   var   语句   枚举类   enum   输入   def   

原文地址:http://www.cnblogs.com/mrszhou/p/7460691.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!