day49-数据类型、约束条件
数据类型:
1.整型--默认情况下都是带有符号的, id int(8)…… 如果数字没有超过9位,默认用0填充,如果数字超出8位,有几位存几位
总结:针对整型字段,括号内无需指定宽度,因为它默认的宽度已足够存储
2.浮点型--FLOAT、DOUBLE、DECIMAL,精确度不同 float< double < decimal
3.字符型--
char 定长 char(4): 超过4个字符报错,不够四个字符空格补全
varchar 变长 varchar(4):超过4个字符报错,不够有几个存几个
注:显示的时候MySQL会自动将多余的空格剔除,若不剔除,需以下操作
char:
缺点:浪费空间
优点:存取都很简单,之间按照固定的字符取数据即可
varchar
优点:节省空间
缺点:存取较为麻烦, 解决方案:存数据时增加1bytes的报头说明数据大小
以前基本使用char类型,现在使用varchar多
4.时间类型--
分类: date:年月日 、datetime:年月日时分秒、time:时分秒、year
5.枚举、集合类型

6.约束条件--
1)default 默认值
2)unique 唯一:单列唯一+结合唯一
3)主键:primary key,
a.从约束效果来看,primary key等价于 not null+unique 即非空+唯一
b.除了有约束效果外,还是Innodb 存储引擎组织数据的依据,Innodb存储引擎在创建表时必须要有primary key
因为类似于书的目录,便于提升查询效率,并且是建表的依据
拓展: auto_increment自增(当编号特别多的时候,人为去维护太麻烦
补充:delete from删掉数据后自增信息不会清空
truncate t1 删除数据并充值数据
day49-数据类型、约束条件的更多相关文章
- python开发mysql:mysql数据类型&约束条件
一 整形 只有Int类型跟存储没有关系,显示的是宽度,其他类型都是限制 整形类型:[(m)][unsigned][zerofill] 作用:存储年龄,等级,id,各种号码 m,代表显示宽度 默认11 ...
- oracle常用数据类型&约束条件(及案例)
一.数据类型 数据类型 说明 数字 number [小数,整数] number(5,3)表示总共5个数字,小数点后3个,最大值99.999 number(5) 表示整数 最大值99999 字符 ...
- MySQL基本数据类型与约束条件
昨日内容回顾 数据存储的演变 # 方向: 朝着更加统一和方便管理 数据库的发展史 # 由本地保存逐步演变为线上保存 数据库的本质 # 本质上就是一款CS架构的软件 """ ...
- MYSQL数据类型 表基本操作 表记录增删改 单表查询
一.数据类型 常用的数据类型如下: 整数:int,bit 小数:decimal 字符串:varchar,char 日期时间: date, time, datetime 枚举类型(enum) 特别说明的 ...
- (五)mysql表操作和约束条件
(1)表基本操作 1)创建表 create table 表名(字段 数据类型 约束条件) mysql> create table student1(id int,name varchar(50) ...
- 一篇文章让Oracle程序猿学会MySql【未完待续】
一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...
- MySQL(一) 数据表数据库的基本操作
序言 这类文章,记录我看<MySQL5.6从零开始学>这本书的过程,将自己觉得重要的东西记录一下,并有可能帮助到你们,在写的博文前几篇度会非常基础,只要动手敲,跟着我写的例子全部实现一遍, ...
- mysql学习笔记(一)
my建表操作 创建表 create Table <表名> ( 字段名1,数据类型 [列级约束] [默认值], 字段名2,数据类型 [列级约束] [默认值], ... [表级约束], [co ...
- mysql命令整理0919 不定期更新中
1)新建数据库 create database +database_name: 查询数据库 show databases; 切换数据库 use database_na ...
- 数据库(MySQL)表基本操作
数据库表基本操作 思前想后,最终还是把博客的名字改成了数据库表基本操作,以前叫SQL语句大全,感觉用"大全"这个名词 ...
随机推荐
- C#和.NET Framework 简介
C#是一种通用的类型安全且面向对象编程的语言.这种语言的目标是提高程序员的生产力,为此需要在简单性.可表达性和性能之间实现平衡.C#语言的首席架构师从第一个版本开始就是Anders Hejlsberg ...
- Unit mysqld.service could not be found.
具体命令 service mysqld status systemctl status mysqld 结果 Unit mysqld.service could not be found. 查看mysq ...
- (一)REDIS之常见数据结构及操作
(一)基本数据结构 1.1 String结构: String底层结构是动态字符串,可修改指定位置数据,通过预分配冗余空间减少内存的频繁分配,实际分配的空间capacity一般要高于实际字符串长度len ...
- net6 - System.ComponentModel.DataAnnotations Attribute
using System; using System.Web.DynamicData; using System.ComponentModel.DataAnnotations; [MetadataTy ...
- Day 22 22.1.2:增量式爬虫 - 场景2的实现
场景2的实现: 数据指纹 使用详情页的url充当数据指纹即可. 创建爬虫爬虫文件: cd project_name(进入项目目录) scrapy genspider 爬虫文件的名称(自定义一个名字即可 ...
- gRPC中protobuff type和C# type原生标量对应表
查看Microsoft官方文档: Create Protobuf messages for .NET apps | Microsoft Docs
- [BOM]打包代码前,快速去除前端日志
一般开发时使用console.log() 方法.于是可以在js文件的最开头加上: console.log = function(){}
- [node]把静态html挂到node接口下
主要适用于同网段下不同设备查看同一html. 来自知乎. 需要先安装一个node,安装过程不表. 新建文件:nodeServer.js var express = require('express') ...
- 【性能监控】nmon和pyNmonAnalyzer的搭建和使用
1,安装nmon 二进制安装:暂时空着,没有FQ,访问不了nmon的官网. 下载对应操作系统的文件,直接运行: 下载地址:https://pan.baidu.com/s/1gTBh10-ark5gbe ...
- js - class 操作
js - class 操作 // 添加 function addClass(dom, classNameString = '') { if (!dom.className.length) dom.cl ...