当前位置:网站首页>mysql创建表
mysql创建表
2022-08-02 03:18:00 【bsegebr】
1.先判断表是否存在,存在就先删除表
DROP TABLE IF EXISTS `table_name`;
2. 创建表及表字段
CREATE TABLE `table_name` (
`id` int NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT ‘主表id’,
`name` string NOT NULL COMMENT ‘名称’
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3.语句代码
DROP TABLE IF EXISTS `table_name`;
CREATE TABLE `table_name` (
`id` int NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '主表id',
`name` string NOT NULL COMMENT '名称'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
4.列参数说明
- 2.1数据类型对应表中类的数据类型。11数据类型中详细介绍了如何使数据类型的语法。需要注意以下点:
1> 些参数不是适于所有类型的,AUTO_INCREMENT只适于整形和浮点型数据,DEFAULT不可于BLOB、TEXT、GEOMETRY
和JSON类型;
2> 字符数据类型(CHAR、VARCHAR、TEXT、ENUM、SET及其他)可以指列字符集。CHARSET与CHARACTER SET等效,校验字符
集可以使COLLATE参数指定。10字符集、校验、解码中有详细介绍。MySQL5.7对于字符列的长度指字符个数,对于BINARY和
VARBINARY列指字节数。创建个拥有name列的表test,name列使utf8字符集,并使utf8_bin进校验,如下所:
3> 对于CHAR、VARCHAR、BIANRY和VARBINARY类型的列创建索引时可以使最左长度 col_name(length)语法来制定个索引的
长度。BLOB和TEXT列设置索引时必须指定索引的长度。索引长度对于字符类型列来说指字符个数,对于进制字符指字节数。只有
InnoDb和MyIsam引擎才持BLOB和TEXT列创建索引。对于个唯索引列,如果严格的SQL模式被设置时会直接报错,如果没有社
会严格的SQL模式,索引被键减少到列的最长度并且会产警告;对于唯索引列,因为缩减索引长度可能会导致唯向的插,
这样就打破了唯索引原则,所以会直接报错。
4> JSON类型的数据列是不能被设置索引的,如果要如此可以从JSON列中提取相应来成列进索引达到该效果
3.是否为空
3.1NULL 与 NOT NULL 3.2如果没有指定空与空,则默认为空。在MySQL5.7中只有InnoDB、MyIsam和Memory存储引擎才能持索引列中含有NULL值,其他情况下必须把索引列指定为NOT NULL
4.默认值
4.1 DEFAULT
5.自增
5.1 AUTO_CREMENT
6.主键
6.1 PRIMARY KEY
7.注释说明
7.1 COMMENT
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
猜你喜欢
随机推荐
JunitTest单元测试
day11--shell脚本
Good Key, Bad Key (thinking, temporary exchange, classic method)
Foundry教程:使用多种方式编写可升级的智能代理合约(下)
APK的安装过程分析 PMS包管理器
MySQL中的时间函数
(转帖)HashCode总结(2)
rem adaptation
精益思想如何加速企业的全局价值流动?
centos安装mysql8
7-43 字符串关键字的散列映射 (25 分) 谜之测试点
总体写作原则
DOM破坏及复现实验
TRICK第二弹
MySQL中根据日期进行范围查询
DAY-1 | 求两个正整数的最大公约数与最小公倍数之和——辗转相除法
小程序(开发必备常识)1
程序员的七夕浪漫时刻
Heao Technology Network Interview (with reference answers)
知识体系树