字段
修改字段
alter table 表名 modify 字段名 数据类型 [属性][位置];
重命名字段
alter table 表名 change 旧字段 新字段名 数据类型 [属性][位置];
删除字段
alter table 表名 drop 字段名;
数据操作
新增数据
insert into 表名 values(值列表);
插入数据(指定字段列表)
同新增数据
查看数据
select * from 表名 [where 条件];
更新数据
update 表名 set 字段=值[where];
删除数据(删除不可逆)
delete from 表名 [where 条件];
查看所有字符集
show character set;
查看服务器默认的对外处理字符集
show variables like 'chaacter_set%';
快捷方式设置服务器对客户端字符集的认识
set names 字符集; -- 一般设置为gbk
校对集问题
数据比较的方式
一般分为3种:_bin:binary 二进制比较,取出二进制位,一位一位的比较,区分大小写。
_cs:case sensitive 大小写敏感
_ci:case insenstive 大小写不敏感
查看所支持的校对集
show collation;
校对集应用:只有当数据产生比较时,校对集才会生效
比较(根据某个字段排序):select * from 表名 order by 字段名;
校对集修改:必须在没有数据之前声明好,如果有了数据,那么再进行校对集修改,修改无效。
数据类型
对数据进行统一分类,从系统角度出发,为了能使用统一方式进行管理,更好的利用有效的空间。
SQL数据类型分为3类:数值型,字符串型,时间日期型。
数值型
数值型数据都是数值,系统将其分为整数型和小数型。
整数型
存放整数型数据,在SQL中,因要更多的考虑磁盘空间,所以又将整数型分为5类。
Tinyint:迷你整型,使用一个字节存储。
Smallint:小整型,使用两个字节存储。
mediumit:中整型,使用三个字节存储。
int:标准整型,使用四个字节存储。
bigint:大整型,使用8个字节存储。
小数型
小数型又分为浮点型和定点型
浮点型(float):小数点浮动,精度有限,还会丢失精度。浮点型又分为两种:Float(单精度,占四个字节存储数据),Double(双精度,占8个字节存储数据)
定点型(decimal):小数点固定,精度固定,不会丢失精度。绝对的保证整数部分不会被四舍五入,小数部分有可能(理论上来说小数部分也不会丢失精度)
下面分别创建浮点数表和定点数表
当然,不一定你所输入的所有命令服务器都能识别,上次说了,在SQL语句报错中,他只会告诉用户报错的大概位置,不会说明报错原因,那如果出现警告呢?如何查看警告?很简单,只需有一句命令就可以查看警告了。、
show warnings; -- 有没有很简单呀,哈哈哈~~~
时间日期型
datetime:时间日期 YYYY-mm-dd HH:ii:ss 表示的范围从1000到9999
data:日期,就是datetime的date部分
time:时间段,指定的某个区间之间
timestamp:时间戳
year:年份,两种形式,year(2)和year(4)
字符串类型
字符串类型:char,varchar,text,blob,enum和set
定长:char类型 磁盘在定义结构时,就已经确定了最终数据的存储长度。
varchar 在分配空间的时候,按照最大的空间分配,但实际上最终用了多少,是根据具体的数据来确定。
文本字符串 根据存储数据类型格式分类,text(存储文字)和blob(存储二进制数据)
枚举字符串 enum,定义 enum(能出现的元素列表)
使用:存储数据只能使用上面定义好的数据
作用:规范数据格式;节省空间
集合字符串 实际存储的是数值,而不是字符串(集合是多选)
定义:set(元素列表);
使用:可使用元素列表中多个