mysql基础 day02

1.SQL命令

        (1)修改数据

                update  表名  set   列明='...', ... where id=' ...' ;

        (2)删除数据

                delete from  表名  where  id='...' ;

2.计算机如何存储字符

(1)如何存储英文字符

        ASCII 对所有的英文字母及其符号进行了编码,总共有128个

        mysql默认使用Latin-1  对欧洲字符进行了编码,总共有256个,兼容ASCII

(2)如何存储中文字符

        GB2312 对6千多汉字进行了编码,兼容ASCII

        GBK 对2万多汉字进行了编码,兼容 GB2312

        BIG 台湾繁体字编码

        Unicode 对世界上主流国家常用的语言进行了编码,分为三种存储方式  utf-8 ,  utf-16, utf-32

(3)mysql中文乱码原因

        默认使用Latin-1 编码

(4)解决mysql中文乱码

        脚本文件另存为的编码为 utf8

        客户端连接服务器端使用的编码为 utf8

        服务器端创建数据,使用的存储编码为 utf8

3.列类型

创建数据表的时候,指定可以存储的数据类型

create table t1(

Id   列类型

); 

(1)数值型 —— 可以省略引号

        tinyint 微整型,占1个字节,范围  -128 ~ 127

        smallint  小整型,占2个字节 ,范围 -32768 ~ 32767

        int   整型,占4个字节,范围 -2147483648 ~ 2147483647

        bigint  大整型,8个字节

        float   单精度浮点型,占4个字节,范围比int大的多,以牺牲小数点后若干位为代价,数字越大精度越低,最大值3.4e38

        double  双精度浮点型,占8个字节,范围比bigint大的多,数字越大精度越低

        decimal(M,D)   定点小数,小数点的位置不会发生变化,M代表总的有效位数,D代表小数点后的有效位数

        boolean/bool   布尔型,只有两个值,分别是 ture和false,代表真和假,通常用于存储只有两个值的数据,例如:性别、是否在线 等

ture和false 是关键字,不能加引号

在使用的时候,布尔型会自动转换为tinyint,ture转为1,false转为0;也可以直接插入1或者0

(2)日期时间型 —— 引号不能省略

        date  日期型

        time  时间型

        datetime  日期时间型

(3)字符串型 —— 引号不能省略

        varchar(M)   变长字符串,几乎不会产生空间浪费,数据操作速度慢,M的最大值为65535,用于存储变化长度的数据。例如:标题、姓名、详情...

        char(M)   定长字符串,可能会产生空间浪费,数据操作速度快,M的最大值为255,用于存储固定长度的数据,例如 手机号码、身份证号码

        text(M)  大型变长字符串,M的最大值是2G

varchar(5)char(5)
aa\0a\0\0\0\0
abab\0ab\0\0\0
一二三一二三\0一二三\0\0

4.列约束

mysql 可以对要插入的数据进行验证,只有满足条件才允许插入。例如:性别只能是男女,一个人的成绩范围 0~100...

create table t1(

Id int  列约束

);

(1)主键约束 —— primary key

        声明了主键约束的列上不允许插入重复的值,一个表只能有一个主键约束,通常加在编号列,会加快数据的查找速度,按照编号从小到大排列

主键约束的列禁止插入null

null  表示空,是一个暂时无法确定的值。例如:无法确定商品的价格、无法确定员工的手机号码,都可以用null表示

null   是关键字,不能加引号

(2)非空约束 —— not null

        声明了非空约束的列禁止插入null

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值