mysql数据库创建表时通过设置什么属性可以设置字段编号自动增加_Mysql数据库创建表样例和解释...
目录
照着下面样例创建表,设置自己的表名,字段和字段属性,基本都能满足需求啦:
参数解释:
1. AUTO_INCREMENT是设置该字段为自增列:
2. COMMENT '邮箱' :字段备注邮箱
3. UNSIGNED 数字类型无符号化
4.ZEROFILL 缺位补0显示
5. ENGINE=InnoDB 设置表的存储引擎类型为InnoDB,支持外键和事务处理
6. DEFAULT CHARSET=utf8 设置的是数据库表默认字符编码为utf8
7. PRIMARY KEY (id) 设置id字段主键约束
8.UNIQUE KEY (name)设置name字段唯一性约束
照着下面样例创建表,设置自己的表名,字段和字段属性,基本都能满足需求啦:
CREATE TABLE test1(
id bigint(20) NOT NULL AUTO_INCREMENT, # 自增列为id
name VARCHAR(255) DEFAULT NULL COMMENT '姓名', #name字段默认为空,备注为姓名
age INT(10) UNSIGNED NOT NULL DEFAULT '0', #age是无符号字段,不可为空,默认0
student_number int(10) UNSIGNED ZEROFILL, # student_number一共10位,缺位补0
PRIMARY KEY (id) # 设置id是主键
UNIQUE KEY (name) # name设置唯一性约束
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 # 存储引擎为InnoDB,自增列值从1开始累加,默认编码为UTF8
参数解释:
1. AUTO_INCREMENT是设置该字段为自增列:
必须设置在主键+整数类型数据列字段上
序号的最大值受该列的数据类型约束,如TINYINT数据列的最大编号是127,如加上UNSIGNED,则最大为255。一旦达到上限,AUTO_INCREMENT就会失效。
AUTO_INCREMENT=1 指 从1开始增长,当你把第一条记录删除时,再插入第二跳 数据时,主键值是2,不是1
重设自增的起始值n:alter table table_name AUTO_INCREMENT=【n】
如果要人工插入自增列,如果列值与已有的值重复,则会出错。如果大于已有值,则下一个编号从该值开始递增。
当进行全表删除时,会从1重新开始编号。
获取最后新增值:last_insert_id()
2. COMMENT '邮箱':字段备注邮箱
建表最好养成良好的习惯,给字段加中文备注,因为建表的时候字段都是英文,多了可能不知道代表什么,还有的为了隐私保护字段名用元素代码表示,此时写个comment,就便于查看这个列表示的是什么数据。
3. UNSIGNED 数字类型无符号化
是一种数据类型设置,要和数据类型int等一起用,适用于没有负数还想增加数据范围的情况(增加数据范围也可以将INT类型提升为BIGINT类型)
比如:INT的类型范围-2147483648~2147483647
INT UNSIGNED范围0~4294967295
4.ZEROFILL缺位补0显示
只是输出显示属性的设置,不更改存储方式,当插入mysql中该字段的值的长度小于定义的长度时,会在数值前面补全相应数据的0。
比如int(4) zerofill
输入 1的时候,显示0001,会自动补全0;但是数据库内部存储还是1,0001只是格式化输出显示而已
5. ENGINE=InnoDB设置表的存储引擎类型为InnoDB,支持外键和事务处理
ENGINE=MyISAM MyISAM不支持事务处理等高级处理
6. DEFAULT CHARSET=utf8设置的是数据库表默认字符编码为utf8
7. PRIMARY KEY (id)设置id字段主键约束
主键不可重复,不为空,且每表只有一个
8.UNIQUE KEY (name)设置name字段唯一性约束
可用来防止数据插入的时候重复的,建立UNIQUE KEY后,数据库表会自动创建基于这个字段的索引。
mysql数据库创建表时通过设置什么属性可以设置字段编号自动增加_Mysql数据库创建表样例和解释...相关推荐
- html如何设置重置按钮,在HTML网页上,表单中元素的TYPE属性值设置为()时,用语创建重置按钮。...
在HTML网页上,表单中元素的TYPE属性值设置为()时,用语创建重置按钮. 更多相关问题 A non-current asset ( cost $15,000, depreciation $10,0 ...
- Oracle数据库:排序order by语句,select from where order by的执行先后顺序,各种样例
Oracle数据库:排序order by语句,select from where order by的执行先后顺序,各种样例 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多 ...
- MySQL设置表的字段值自动增加
MySQL中,为插入的新纪录自动生成唯一的ID,使用AUTO_INCREMENT约束实现. AUTO_INCREMENT字段可以是任何整数类型,默认情况下,该字段的值是从1开始自增的. 使用AUTO_ ...
- mysql 一个字段走索引吗_mysql数据库--explain(查询表是否走索引)各个字段含义...
1.1 id列 数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 1.2 select_type列 常见的有: ◆ simp ...
- Redis中哈希hash数据类型(增加修改(设置单一属性、设置多个属性)、获取(获取键所有属性、获取单一属性值、获取多个属性值)、删除、使用hash可能出现的问题)
hash⽤于存储对象,对象的结构为属性.值 值的类型为string [应用:如购物车内某个宝贝的所有属性] [help hset] 1. 增加.修改 1.1 设置单个属性 hset key fiel ...
- dw如何设置html图片大小,Dreamweaver如何设置图像属性?DW设置图像属性方法介绍
Dreamweaver中如何设置图像属性?下面小编就为大家详细介绍一下,一起来看看吧! 方法/步骤 在dreamweaver中如何设置图片属性,首先我们需要打开这个工具,随后进行一个新的HTML界面的 ...
- mysql 字段包含横杠_mysql数据库创建删除带横杠的数据库名
mysql> create database d-d; ERROR 1064 (42000): You have an error in your SQL syntax; check the m ...
- mysql 扫描所有字段_select扫描mysql innodb表时,select只输出主键列,会不会扫描全表?...
题主假定按照主键检索.我们假定是等值查询.范围查询和表遍历情形可以在文末经推导得出. primary key A set of columns-and by implication, the inde ...
- mysql 数据库 自动备份_MYSQL数据库自动备份
第一步:配置mysql的环境变量 在PATH中添加mysql的路径到bin目录(如:E:\mysql\MySQL Server 5.1\bin) 第二步:创建批处理文件(.bat)内容如下: @ech ...
最新文章
- jquery中如何以逗号分割字符串_百度知道
- 数据中台实战入门篇:数据中台对内、对外合作机制
- 13道BGP属性面试题
- python指定变量类型_Python#160;变量类型_python教程
- html assign无效,Object.assign的一些用法
- 值得一做》关于并查集的进化题目 BZOJ1015(BZOJ第一页计划)(normal-)
- 【牛客 - 125A】灰魔法师(打表,暴力)
- 掌握spec只需读这一篇文章,CentOS、RedHat、SUSE粉的福利来了
- Ubuntu 14.04 配置caffe环境
- 西班牙税收现“4大变化” 侨胞当心“钱包”
- 寻找固定的和----2013年2月26日
- 详解测试开发工程师六大能力模型
- java 整合永中云预览模块
- 如何设置Sketch快捷键,Sketch提升效率的常用技巧
- 【超实用】在微信文章中点击号码直接拨打电话,轻松运营~
- FPGA Verilog HDL 系列实例--------双向移位寄存器
- 随机森林 n_estimators参数 max_features参数
- Ubuntu系统修改用户名
- 联想小新蓝屏问题解决方法三步走!
- 在 关闭页面/卸载(unload)文档 之前向服务器发送请求