通过SQL创建一个有主键自动递增有默认值不为空有注释的表
Posted Silentdoer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过SQL创建一个有主键自动递增有默认值不为空有注释的表相关的知识,希望对你有一定的参考价值。
-- create database db_std_mgr_sys; use db_std_mgr_sys; create table student( std_id bigint not null auto_increment, std_name varchar(10) not null default ‘‘, std_code varchar(20) not null default ‘‘ comment ‘学号,值唯一‘, std_sex varchar(8) not null default ‘‘, std_phone varchar(20) not null default ‘‘, school_id bigint not null default -1 comment ‘所在学校id‘, grade_id BIGINT not null default -1 comment ‘所在年级id‘, cls_id bigint not null default -1 comment ‘所在班级id‘, primary key(std_id) )engine=INNODB,CHARSET=‘utf8‘,comment=‘学生表‘;
表二:
use db_std_mgr_sys; create table `user`( uid bigint not null auto_increment, username varchar(20) not null, `password` varchar(40) not null, phone varchar(20) not null, email varchar(30) not null, primary key (uid), unique key (username), unique key (phone), unique key (email) )engine=INNODB charset=utf8
/*这里要注意key后面一定要有()而不能直接是primary key uid,这里的key就是索引的意思,
而前面的primary、unique都是修饰,主键也是索引的一种;若只有key没有修饰则表示该索引是普通索引;
若是unique key uq_username (username),则是给这个索引命名为uq_username,否则索引名和索引的列名是一样的为username*/
以上是关于通过SQL创建一个有主键自动递增有默认值不为空有注释的表的主要内容,如果未能解决你的问题,请参考以下文章
sql union all 问题,合并两个表,相同的列如果某一行值为空,而对应的另一行值不为空