(个人笔记)
数字类型
整形:TINYINT SMALLINT MEDIUMINT BIGINT
小数:float double decimal(p,s) numeric(p,s)
Unsugned无符号范围0-255
Int(3)3没有任何作用
Int (5)zerofill//内容不够五位补0;
Decimal(3,1)宽度3位 小数一位(-99.9—99.9)
float表示的精度大概是7位。
decimal整数最大位数m为65,支持小数最大位数d是30
Char(6)6个字符可存6个汉字
Char()定长字符串;0-255;数据不到5个字符被空格占用
Varchar()变长字符串;0-21845/如果设置5代表最多插入5个字符 一个汉字占一个字符
字符类型若为 gbk,则个字符最多占2个字节,最大长度不能超过32766; 字符类型若为utf8,则每个字符最多占3个字节,最大长度不能超过21845。 若定义的时候超过上述限制,则varchar字段会被强行转为text类型,并产生warning。
datetime时间日期格式‘yyyy-MM-dd HH:ii::ss’表示范围从1000到9999,占用8字节 default current_timestamp
date yyy—MM-dd
time:hh:mm:ss
timestamp:时间戳yyyy-mm-dd HH:ii:ss 4个字节default current_timestamp 可以根据修改改变时间
enum:枚举 适用于单选 65535
set:集合 适合于多选类型 爱好,种族64
数据库操作:
往数据库存储图片文件
从数据库取出图片
Json::
函数用法
Binary 二进制
Binary255
Varbinary 64535
Blob 4Gb
表操作:
create table h like t1 ---复制表的结构
alter table t1 change id sno int(30) first --修改列的名字并修改数据类型
alter table t1 rename column sno to id --修改列名 注意不能省略column
插入表数据
Generated always as
Alter table tv change dir dirty vachar(10) after sex 修改列名位置类型
创建表
属性名 (列名 字段名)类型 约束
Default 默认值 not null不为空 unsigned zerofill 无符号 0填充 auto——increment自增长unique 唯一 pk主键 fk外键 auto_increment=1001设定从1001开始自增 charset设定字符集
Value 插入一个值,values插入多个值
Create user AA identified with mysql_native_password by ‘aa’修改加密插件
Select *from student 查询表
Insert into student value()插入value值
Insert student set name=‘’修改属性值
Drop 删除
Select length()查询长度
Auto—increment自增从最大的那个值开始加一
=等同于java中的==
-- 查看表show tables from d3
-- 查看当前mysql开发环境相关的字符集信息 show variables like 'char%';
主键约束:主键只能有一个,但可以多个属性添加为一个主键,主键属性不能重复插入
alter table wx_student drop primary key--删除主键
alter table wx_student add primary key(sage)添加主键