通过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 问题,合并两个表,相同的列如果某一行值为空,而对应的另一行值不为空

Oracle中查询某字段不为空的SQL语句怎么写

查找值不为null的列sql语句

sql 使用自动递增主键创建表

在oracle 怎样设置自动递增的的字段,也就是设置自动递增的ID 主键

SQL - 创建一个学生表,要求有主键约束和非空约束