数据类型:

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-数据类型、约束条件的更多相关文章

  1. python开发mysql:mysql数据类型&约束条件

    一 整形 只有Int类型跟存储没有关系,显示的是宽度,其他类型都是限制 整形类型:[(m)][unsigned][zerofill] 作用:存储年龄,等级,id,各种号码 m,代表显示宽度 默认11 ...

  2. oracle常用数据类型&约束条件(及案例)

    一.数据类型 数据类型 说明 数字 number [小数,整数] number(5,3)表示总共5个数字,小数点后3个,最大值99.999 number(5) 表示整数  最大值99999    字符 ...

  3. MySQL基本数据类型与约束条件

    昨日内容回顾 数据存储的演变 # 方向: 朝着更加统一和方便管理 数据库的发展史 # 由本地保存逐步演变为线上保存 数据库的本质 # 本质上就是一款CS架构的软件 """ ...

  4. MYSQL数据类型 表基本操作 表记录增删改 单表查询

    一.数据类型 常用的数据类型如下: 整数:int,bit 小数:decimal 字符串:varchar,char 日期时间: date, time, datetime 枚举类型(enum) 特别说明的 ...

  5. (五)mysql表操作和约束条件

    (1)表基本操作 1)创建表 create table 表名(字段 数据类型 约束条件) mysql> create table student1(id int,name varchar(50) ...

  6. 一篇文章让Oracle程序猿学会MySql【未完待续】

    一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...

  7. MySQL(一) 数据表数据库的基本操作

    序言 这类文章,记录我看<MySQL5.6从零开始学>这本书的过程,将自己觉得重要的东西记录一下,并有可能帮助到你们,在写的博文前几篇度会非常基础,只要动手敲,跟着我写的例子全部实现一遍, ...

  8. mysql学习笔记(一)

    my建表操作 创建表 create Table <表名> ( 字段名1,数据类型 [列级约束] [默认值], 字段名2,数据类型 [列级约束] [默认值], ... [表级约束], [co ...

  9. mysql命令整理0919 不定期更新中

    1)新建数据库 create database +database_name:         查询数据库  show databases;       切换数据库   use database_na ...

  10. 数据库(MySQL)表基本操作

                                    数据库表基本操作 思前想后,最终还是把博客的名字改成了数据库表基本操作,以前叫SQL语句大全,感觉用"大全"这个名词 ...

随机推荐

  1. mysql命令行如何执行sql脚本

    本文介绍在windows操作系统和Linux操作系统中,如何在命令界面模式下执行对应的sql脚本到mysql数据库 Windows操作系统下 mysql -u root -p db1 < E:\ ...

  2. centos7 python设置虚拟环境

    virtualenv 是一个可以在同一计算机中隔离多个python版本的工具.有时,两个不同的项目可能需要不同版本的python,如 python2.6.6 / python3.0 ,但是如果都装到一 ...

  3. 修改 input框、textarea框的placeholder样式

    /* 设置input框提示内容的样式 */ input::-webkit-input-placeholder { font-size: 14px; color: #ccc; font-weight: ...

  4. 测试elasticsearch保存时报找不到类型的错误

    java测试存储数据到es时报错:...ActionRequestValidationException: Validation Failed: 1: type is missing... /** * ...

  5. 代码and截图

    1.babassl ZUC算法代码: #include <stdio.h> #include <string.h> #include <openssl/crypto.h& ...

  6. mysql ID起始值重置方法

    方法一,执行SQL:truncate table `table_name`; 这种方法好处是运行速度超快 方法二,执行如下SQL: (还是假定表名是test)delete from `table_na ...

  7. windows检查

    # coding: UTF-8 import psutil import platform import re def get_cpu_used(upu_base, interval=1): perc ...

  8. 【个人笔记】Ubuntu 16.04 LTS 安装 Leanote 二进制版命令记录

    此命令根据<Leanote 二进制版详细安装教程 Mac and Linux>操作记录而得. 参考链接:https://github.com/leanote/leanote/wiki/Le ...

  9. 下载低版本Xcode方法

    1.浏览器打开下面链接 https://developer.apple.com/download/all/ 2.没登录需要登录appid账号 3.搜索想要下载的xcode版本号 4.点击下载即可

  10. Ajax JavaScript传参-javascript加载本地文件

    get请求需要拼接到url里面 post请求,需要放到send方法里面,后端取值的时候,Ajax用JavaScript传输跟用postman传输,取值方式有些区别,这里做一下详细记录 传参格式{'id ...