数据类型

  • 整型 默认有符号

    无符号(unsigned) 和有符号 用 0 填充 zerofill

  • 约束的作用: 保证数据的完整性 和一致性

  • tinyint[ -128 , 127 ] 小整数 无符号(0,255)

  • int 整数

  • bigint 极大整数

  • 浮点型

    float 单精度

    double 双精度

    decimal 小数 精准的小数

  • 日期类型

    year 年份 date 年月日 time 时分秒 datetime 年月日时分秒

    now() 获取当前的事件( 根据数据类型 )

  • 枚举 和 集合

    enum('male 男', 'female 女', 'other') default 'male';

    enum("vip1","vip2","vip3","vip4") 指定范围内多选一

    set('play', 'music', 'read', 'study') 在指定范围内多选多

  • bool 类型

    使用 tingint(1) 来表示 boolean 类型

完整性约束

  • not null 如果单独设置 不能插入空值
  • default 默认如果设置了 not null 又设置了 default 插入空则走 default

unique key 唯一

  • 单列唯一

    unque (name)

  • 多列唯一

    unque (id), unque (name) 只要有一列相同 就不能插入

  • 联合唯一

    unque (id, name) 多列相同不能插入

primary key 主键

  • 单列主键

    id int primary key

  • 联合主键

    primary key(id, name)

  • 自增 auto_increment

    id int primary key auto_increment 设置主键自增

foreign key 外键

  • constraint 约束

    KEY `fk_course_teacher` (`teacher_id`),   -- 指定外键的key
    CONSTRAINT `fk_course_teacher` FOREIGN KEY (`teacher_id`) REFERENCES `teacher` (`tid`)
    -- 指定外键关联 REFERENCES(参考) teacher 表中的 tid 字段

创建表

-- ----------------------------
DROP TABLE IF EXISTS `city`; -- 如果数据库中 有 city 表就先 删除 再 创建
CREATE TABLE `city` (
`city_id` smallint(5) unsigned NOT NULL auto_increment,
`city` varchar(50) NOT NULL,
`country_id` smallint(5) unsigned NOT NULL,
-- 时间 在创建新记录和修改现有记录的时候都对这个数据列刷新
`last_update` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`city_id`), -- 指定主键
KEY `idx_fk_country_id` (`country_id`), -- 指定外键
CONSTRAINT `fk_city_country` FOREIGN KEY (`country_id`) REFERENCES `country` (`country_id`) on delete restrict ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- 指定引擎 默认字符集
  • 查看表
  • desc 表名;

清空表

  • 如果有自增 新增的数据 以之前的值开始

    delete from 表名;

  • 删除快 从零开始

    truncate table 表名;

Mysql 数据类型 以及约束的更多相关文章

  1. Mysql 数据类型、约束类型

    mysql数据类型 MySQL中定义数据字段的类型对你数据库的优化是非常重要的. MySQL支持多种类型,大致可以分为三类:数值.日期/时间和字符串(字符)类型.   数值类型 MySQL支持所有标准 ...

  2. 关系型数据库MySql 数据类型与约束

    MySql数据库 :数据类型与约束 注意 :  在创建数据表的时候,需要对数据表中的字段设置 数据类型和约束, 便于检测用户输入的数据是否正确有效. 1 数据类型 数据类型的选用原则 : 够用就行,尽 ...

  3. Mysql数据类型、约束、存储引擎

    一.数据类型 整数类型 默认有符号的 设置为无符号 1.create table t2(age tinyint unsigned); 2.建表后用alter修改 tinyint[(m)] [unsig ...

  4. MySQL 数据类型和约束(外键是重点🙄)

    数据类型 1. 数字(默认都是由符号,宽度表示的是显示宽度,与存储无关).tinyint 括号里指定宽度 七位2进制数最大数就是2**7 -1=127 最小是-128 验证: create tabel ...

  5. MySql数据库数据类型及约束介绍

    1,MySql中数据类型介绍 整型及浮点型 数据类型 存储范围 字节 TINYINT 有符号值:-2^到2^7-1 无符号值:0到2^8-1 2 SMALLINT 有符号值:-2^15到2^15-1 ...

  6. MySql基本数据类型及约束

    1. 常用的数据类型(data_type) 字符串类型 CHAR(n) : 固定长度 VARCHAR(n) : 可变长度 NCHAR(n) : 使用utf8存储,固定长度 NVARCHAR(n) : ...

  7. Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束

    Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束 一丶MySQL的存储引擎 什么是存储引擎:    MySQL中的数据用各种不同的技术存储在文件( ...

  8. Mysql 常见数据类型及约束

    Mysql 常见数据类型及约束 最近在跟几个不太懂技术的同事(哈哈, 其实我也不懂), 要整一个数据库项目, 然后前端, 后端, 都没有像样的, 数据输出还不是由我们控制.... 这可难受了, 然后总 ...

  9. MySQL 数据类型简介 创建数据表及其字段约束

    数据类型介绍 MySQL 数据类型分类 整型 浮点型 字符类型(char与varchar) 日期类型 枚举与集合 具体数据类型见这篇博客 MySQL表操作中的约束 primary key 主键约束 非 ...

随机推荐

  1. T-SQL :SQL Server系统数据库(二)

    master:master数据库储存实例范围的元数据信息,服务器配置,实例中的所有数据库信息和初始化信息. Resource:Resource数据库是一个隐藏,只读数据库,存储所有系统对象的定义.当查 ...

  2. [Linux] PHP-FPM开启慢日志记录

    fpm:FastCGI Process Manager 是一种替代的PHP FastCGI实现,对于负载较重的站点非常有用. .先进的进程控制,优雅的停止启动 .能够使用不同的uid/gid/chro ...

  3. Java Date类的使用总结

    Date类表示特定的瞬间,精确到毫秒. 有2种方法可以创建Date对象(这里不考虑已过时的构造函数) 1.public Date()——分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫 ...

  4. Spring核心——Bean的定义与控制

    在Sring核心与设计模式的文章中,分别介绍了Ioc容器和Bean的依赖关系.如果阅读过前2文就会知道,Spring的整个运转机制就是围绕着IoC容器以及Bean展开的.IoC就是一个篮子,所有的Be ...

  5. Your local changes to the following files would be overwritten by merge:

    在服务器改动之后,用sourcetree提交会产生冲突,解决办法:

  6. Netty实现一个简单聊天系统(点对点及服务端推送)

    Netty是一个基于NIO,异步的,事件驱动的网络通信框架.由于使用Java提供 的NIO包中的API开发网络服务器代码量大,复杂,难保证稳定性.netty这类的网络框架应运而生.通过使用netty框 ...

  7. C# 动态加载程序集信息

    本文通过一个简单的实例,来讲解动态加载Dll需要的知识点.仅供学习分享使用,如有不足之处,还请指正. 在设计模式的策略模式中,需要动态加载程序集信息. 涉及知识点: AssemblyName类,完整描 ...

  8. vue 构建项目遇到的问题

    1.我在打包完成后,打开index.html文件发现地址并没有携带路由. config下的 index.js 中的build命令的配置有一个属性叫assetsPublicPath,它的值为‘/’.意思 ...

  9. WangleEditor3提交数据(servlet-jsp)

    用servlet提交 WangEditor3编辑的内容,找了很多资料没发现,大多用的框架,今天终于解决了,记录一下. WangEditor3不支持放在textarea中,servlet是无法直接获取到 ...

  10. Spark之UDAF

    import org.apache.spark.sql.{Row, SparkSession} import org.apache.spark.sql.expressions.{MutableAggr ...