列属性:

定义一个字段时对该字段设置的额外的信息或约束

  1、  关联操作:reference

  2、  字段默认值:default value

  3、  主索引和唯一索引:primary key 和unique key

  4、  自动增长:auto_increment

  5、  是否允许为空:null、not null

  6、  comment:列注释

默认情况下,字段都允许为空(缺省值为null),not null不能为空

当给一个not null 的字段插入值的时候,系统首先判断该字段是否有默认值,如果没有,就报错。

default

自定义默认属性,通常配合not null 一起使用。

  create table student (

     id int not null default 100

  );

在插入数据时,用default关键字代替

primary key

简称PK,可以唯一标识某条记录的字段或字段的组合(组合主键)

设置主键的两种方式:

  1、  在定义一个字段时,直接在后面设置primary key

    create table student (

      id int unsigned primary key

    );

主键字段不能重复,值不能重复,不能为空

  2、  定义完毕字段后再定义主键(组合主键只能使用这种方式)

    primary key(id)

    primary key(id,name)

unique key

增加该属性后,该字段的值就不能重复。可以简写成unique

  unique key (id,name)定义两个唯一键

主键和唯一键的区别:

  1、  主键不允许为空,唯一键允许为空

  2、  主键只能有一个,但唯一键可以有多个

  3、  主键可以用两个字段组合为组合主键,而唯一键的多个字段都是唯一键

auto_increment

每次插入记录时,自动为某个字段的值加1,默认从1开始

使用这个属性有两个条件:

  1、  该字段类型必须为整型;

  2、  该字段必须存在索引(比如:主键索引)

开启auto_increment后,每次插入主键字段的时候,就可以直接插入null,这里的null是告诉系统,开启自动加载机制。

增加表选项,auto_increment自动增长初始值

  create table student (

    num int

  )auto_increment 100;

开启了自动增长机制,也可以手动插入,自动增长是以前面出现的最大值自动增长

delete from 表中所有数据之后,并不会重置自动增长机制,可以使用truncate table 表名  或者truncate 表名,来重建表:

  1、  先把原表drop掉

  2、  再按以前的原表的结构重新创建一次

comment

专门为列做注释的,这里的列注释内容属于列定义的一部分,一起显示出来

在列定义的后面,comment “注释内容”

索引

索引的本质就是在“原始表”的基础之上根据某个或某些字段进行排序后的“内置表”

索引的作用,能极大提高表数据的查询速度,但它以降低增删改的速度为代价的。

  1、普通索引:key(字段1,字段2……)或index(字段1,字段2……)

  2、唯一索引:unique key()

  3、主键索引:primary key()

  4、全文索引

  5、哈希索引

  6、空间索引

mysql数据类型和列属性的更多相关文章

  1. MySQL (二)-- 数据类型(列类型)、数值类型、 小数类型、 时间日期类型、 字符串类型 、 MySQL记录长度、列属性

    1 数据类型(列类型) 所谓的数据类型:对数据进行统一的分类,从系统的角度出发是为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中将数据类型分成了三大类: 2 数值类型 数值类型数据:都 ...

  2. MySQL之字段数据类型和列属性

    数据类型: 对数据进行统一的分类,从系统的角度出发,为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中将数据类型分成了三大类:数值类型.字符串类型.时间日期类型. 数值型: 数值型数据: ...

  3. mysql的数据类型与列属性

  4. mysql学习笔记--列属性

    一.是否为空----null || not null 二.默认值----default 三.自动增长----auto_increment 四.主键----primary key 1. 主键:唯一标识表 ...

  5. 【拼接属性查询方式】MySql某一列属性值为拼接时的查询方式

    数据库中某一列的值为 使用IN查询是无法查询到数据的,只能查询到IN(2)或者IN(2,3)  查询结果: , style_id) 正确方式:使用FIND_IN_SET函数 , style_id) , ...

  6. 【转】MySQL数据类型和常用字段属性总结

    来源:http://www.jb51.net/article/55853.htm 这里先总结数据类型.MySQL中的数据类型大的方面来分,可以分为:日期和时间.数值,以及字符串.下面就分开来进行总结. ...

  7. MySQL数据类型和常用字段属性总结

    前言 好比C++中,定义int类型需要多少字节,定义double类型需要多少字节一样,MySQL对表每个列中的数据也会实行严格控制,这是数据驱动应用程序成功的关键.MySQL提供了一组可以赋给表中各个 ...

  8. MySQL数据类型和属性

    日期和时间数据类型 MySQL数据类型 含义 date 3字节,日期,格式:2014-09-18 time 3字节,时间,格式:08:42:30 datetime 8字节,日期时间,格式:2014-0 ...

  9. mysql的数据类型和字段属性

    本文内容: 数据类型 数值类型 整数型 浮点型 定点型 日期时间类型 字符串类型 补充: 显示宽度与zerofll 记录长度 字段属性 空\不为空值:NULL.NOT NULL 主键:primary ...

随机推荐

  1. Java开发中经典的小实例-(二分法)

    public int binarySearch(int[] data,int aim){//以int数组为例,aim为需要查找的数 int start = 0; int end = data.leng ...

  2. 转!!left join on and 与 left join on where的区别

    数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户.       在使用left jion时,on和where条件的区别如下: 1. on条件是在生成临时 ...

  3. 在重新生成解决方案时,出现的错误:无法将文件“obj\x86\Debug\*.exe”复制到“obj\Debug\*.exe”。文件正由另一进程使用,因此该进程无法访问此文件

    此例是VS2010的CS项目. 在重新生成解决方案时,出现的错误. 解决步骤:先关闭解决方案,再在项目文件下的bin\Debug\*.exe删除这类之前生成得.exe文件,再在VS2010下重新生成.

  4. Nginx安装与使用

    前言 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大 ...

  5. xml报文解析和组装

    package com.xjts.cipher.util;import java.io.File;import java.io.FileWriter;import java.io.IOExceptio ...

  6. SQL SERVER与SSIS 数据类型对应关系

  7. 配置项setOption -- title

    标题组件,包含主标题和副标题.在 ECharts 3 中可以存在任意多个标题组件,这在需要标题进行排版,或者单个实例中的多个图表都需要标题时会比较有用. title.show boolean [ de ...

  8. Android之Activity状态的保存和恢复

    系统在某些情况下会调用onSaveInstanceState()和onRestoreInstanceState() 这两个方法来保存和恢复Activity的状态. 一句话:Activity在" ...

  9. 20145218&20145240 《信息安全系统设计基础》实验二 固件设计

    20145218&20145240 <信息安全系统设计基础>实验二 固件设计 实验报告链接:http://www.cnblogs.com/20145240lsj/p/6035512 ...

  10. 张艾迪:全面开放“A"计划

    全面开放A计划.放飞梦想.放飞世界 AOOOiA.global将全面开启"A"计划.与世界分享We Share .与世界一同探索求知.全面开放"A"计划:拉近世 ...