-- create database db_std_mgr_sys;
// TODO schema都用db开头,表都用t开头,字段都用f开头,存储过程都用proc开头,触发器都用trig开头,函数都用func开头,这样能有效避免用关键字命名,比如班级是class,名字是name这些都是关键字(会显示蓝色的标识符)
use db_std_mgr_sys;;
create table t_student(
f_id bigint(20) not null auto_increment,
f_name varchar(10) not null default '',
f_code varchar(20) not null default '' comment '学号,值唯一',
f_sex varchar(8) not null default '',
f_phone varchar(20) not null default '',
f_school_id bigint not null default -1 comment '所在学校id',
f_grade_id BIGINT not null default -1 comment '所在年级id',
f_cls_id bigint not null default -1 comment '所在班级id',
primary key(f_id),
unique key uk_std_code(f_code) -- 和主键一样默认会创建索引(可以有多个列),uk_std_code是索引名
key idx_phone(f_phone) -- 注意,unique key和key都是会生成索引,而且可以省略key后面的标识符如uk_std_code等,但是不要省略,否则对应索引的名字为第一个字段的名字;primary key的可以省略,因为它的索引名就是PRIMARY(所以explain select* xxx,的是索引名)
)engineinnodb, charset 'utf8', comment '学生表';; -- TODO 就用这种写法了,注意这里先有delimiter ;;

表二:

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)
)engineINNODB, charset utf8;;
/*这里要注意key后面一定要有()而不能直接是primary key uid,这里的key就是索引的意思,
而前面的primary、unique都是修饰,主键也是索引的一种;若只有key没有修饰则表示该索引是普通索引;
若是unique key uq_username (username),则是给这个索引命名为uq_username,否则索引名和索引的列名是一样的为username*/

通过SQL创建一个有主键自动递增有默认值不为空有注释的表的更多相关文章

  1. mysql——主键自动增长&唯一索引

    首先说一下主键和唯一索引的区别 主键:一个数据库的一张表有且仅有一个主键,而且主键不能重复 唯一索引:一个数据库的一张表上唯一索引可以有多个,只是所在唯一索引上的值不能重复,这一点和主键一样 下面我们 ...

  2. Mysql:设置主键自动增长起始值

    比较郁闷昨天在家使用‘alter table `tablename` AUTO_INCREMENT=10000;’怎么也不起效,但是今天下班时间公司一同事尝试了一下就可以了.搞不明白自己当时是怎么操作 ...

  3. sql语句查询数据库中的表名/列名/主键/自动增长值

    原文地址:http://blog.csdn.net/pukuimin1226/article/details/7687538 ----查询数据库中用户创建的表 ----jsj01 为数据库名 sele ...

  4. oracle 主键自动增长

    oracle 主键自动增长 2009-12-11 16:07:00|  分类: 数据库资料|字号 订阅     这几天搞Oracle,想让表的主键实现自动增长,查网络实现如下: create tabl ...

  5. EF5+MVC4系列(5) 删除的方法 1:系统推荐的先查询后remove删除的方法 2:自己new一个包含主键的类,然后 attach附加 remove删除;3:使用db.Entry 修改状态删除4:EntityState的几种状态

      我们还是以订单表为例   1:系统推荐的方法,先查询出来,然后调用remove方法进行删除 我们删除id大于等于4的 static void Main(string[] args) { Delet ...

  6. (2.10)Mysql之SQL基础——约束及主键重复处理

    (2.10)Mysql之SQL基础——约束及主键重复处理 关键词:mysql约束,批量插入数据主键冲突 [1]查看索引: show index from table_name; [2]查看有约束的列: ...

  7. mysql insert一条记录后怎样返回创建记录的主键id,last_insert_id(),selectkey

    mysql插入数据后返回自增ID的方法 mysql和oracle插入的时候有一个很大的区别是,oracle支持序列做id,mysql本身有一个列可以做自增长字段,mysql在插入一条数据后,如何能获得 ...

  8. mongdb创建自增主键(primary key)的相关讨论 - Jason.Zhi

    根据mongodb官方文档介绍,如果在插入(insert)操作时,没有指定主键id,那么它会自动给插入行自动附上一个主键id.看起来不错,但是详细看看,就会发现这个id值有点复杂. 如下图: mong ...

  9. hibernate主键自动生成

    Entity类中,主键尽量使用可以为null值的类型,比如Integer,Long,String等,不要用int,long等.因为如果主键为null,则表示该实体类还没有保存到数据库,是一个临时状态( ...

随机推荐

  1. tab面板,html+css

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  2. NodeMCU Builder, yet another NodeMCU IDE

    最近几天研究基于NodeMCU的Wi-Fi小车,突然之间想要写一个专门开发NodeMCU Lua代码的工具自己用,由于官方已经有了NodeMCU Studio,所以我的就叫NodeMCU Builde ...

  3. JAVA基础1——字节&位运算

    占用字节数 & 取值范围 Java一共有8种基本数据类型(原始数据类型): 类型 存储要求 范围(包含) 默认值 包装类 int 4字节(32位) -2^31~ 2^31-1 0 Intege ...

  4. 去培训机构参加IT培训值不值

    近几年,IT培训机构可谓是琳琅满目,稂莠不齐.培训Java的,培训PHP的,培训大数据的等等吧,不一而足. 自己也算是IT技术圈子待了好多年了,面试过一些机构培训出来的学生,也有几个好哥们在培训机构做 ...

  5. 初学时遇到的小问题Your content must have a ListView whose id attribute is 'android.R.id.list'

    问题提出 错误提示:Your content must have a ListView whose id attribute is 'android.R.id.list' 关于解决Your conte ...

  6. apache mysql无法启动解决办法

    最近在调试几个代码,需要不停的启动关闭服务器和mysql.在连续的几次开关后,无法启动了,每次启动后就直接关闭. 刚开始是怀疑是不是端口被占用了,查看端口后,并没有端口被占用的情况.查看mysql错误 ...

  7. iframe自适应高度???

    最近在做一个项目,部分内容是iframe嵌套的,结果发现它不能自适应高. 于是乎我就用js iframe.height(iframe里body的高度),然并卵用.后来才发现,子页面(iframe所写的 ...

  8. js实现关键词高亮显示 正则匹配

    html 和ajax 部分就不写了,只需将需要匹配的文字传进去就可以了 比如匹配后台传回的字符串data.content中的关键词:直接调用: data.content = highLightKeyw ...

  9. 微信小程序爬坑日记

    新公司上手小程序.30天,从入门到现在,还没放弃... 虽然小程序发布出来快一年了,爬坑的兄弟们大多把坑都踩平了.而我一直停留在"Hello World"的学习阶段.一来没项目,只 ...

  10. go语言常用开源库整理

    框架 https://github.com/go-martini/martini 图形验证码 https://github.com/dchest/captcha ORM https://github. ...