mysql数据库定义语句

2025-11-18 06:31:30

1、创建某数据库:

create  database   数据库名  【charset  编码名】【 collate 排序规则名】;

说明:

1,编码名是用于设定当前数据库中的文本数据存储的时候,默认使用的字符编码,通常有:gbk,utf8。虽然可以省略,但 墙裂 建议不要省略。

显示所有可用的编码名: show  charset

2,collate用于设定该编码下的“排序方式”,也是一个名字,比如:gbk_bin,gbk_chinese_ci

显示所有可用的排序规则名: show  collation;

通常不写,因为每一种编码名(字符集),都有一个默认的排序规则。

什么是排序规则:

就是某种字符集内的所有单个字符的一个顺序的规定!

比如英文中:b>a,  B>A,  a > B

删除某数据库:

drop  database 【if  exists】 数据库名;

修改某数据库:

alter  database  数据库名  【charset  新的编码名】【 collate 新的排序规则名】;

可见:修改数据库,其实也就只是修改数据库的编码和排序规则而已;

使用某数据库:

use  数据库名;

显示所有数据库名:

show  databases;

数据类型

总览

mysql数据库定义语句

2、可见:

数据类型分3大类:数值型,字符型,时间型;

整数类型

mysql数据库定义语句

3、说明:

1,每一种类型所存储的数据占据的空间是固定的,而跟数据的大小无关。

2,整数类型的通用写法:

类型名【(显示长度)】【unsigned】 【zerofill】

3,显示长度是指select出来数据时的显示长度,而跟数据大小无关。

4,unsigned(无符号)用于设定该字段不可以存储负数。

5,zerofill用于设定在显示长度的设定上来填充0

#演示整数类型的使用:

create table int_test(

    id int,

    age tinyint unsigned,

    f3 smallint(8) zerofill  

    );

insert into int_test values(1, 1, 1);

insert into int_test values(123, 123, 123);

mysql数据库定义语句

4、小数类型

小数:

浮点数:

float:单精度浮点数:只能精确到6-7位

double:双精度浮点数:能够精确到大约15位

定点数:

decimal:可以精确到自己设定的位数,该位数可以在0-30之间。

decimal的通常设定形式为:decimal(总长度,小数点后长度)

一个典型错误提示:

mysql数据库定义语句

5、举例:

mysql数据库定义语句

6、结果:

mysql数据库定义语句

7、常见字符串类型

字符串在“字面值”上,必须使用单引号。

定长字符串:char

必须设定长度,表示其设定的长度,也就是最终存储的数据长度。如果数据不足设定长度,内部会补空格填充到设定长度;

这里,长度是指“字符个数”,最大能设定为255.

变长字符串:varchar

必须设定长度,表示其设定的长度,是该字段最长能存储的长度,如果存储的实际数据不够那么长,则就按实际数据存储。

这里,长度是指“字符个数”,最大能设定为65535(理论值).


长文本字符串:text

不用设定长度,其默认都是65535个字节。

mysql数据库定义语句

8、enum类型:枚举类型——就是多个选项中选择一个——相当于“单选项的数据值”:

它确实主要用于应用中的“单选项”的数据存储。

形式:

enum(‘选项值1’,‘选项值2’,‘选项值3’,......)

说明:

1,每个选项值,都是一个字符串;

2,每次存储只能存储其中一个值;

3,这些选项值,在系统内部其实分别对应整数值:1,2,3,4,5,.....这样内部处理数据更高效。

4,我们在操作中,也可以直接使用这个整数值;

举例:

mysql数据库定义语句

9、set类型:相当于“多选项的数据值”:

它确实主要用于应用中的“多选项”的数据存储。

形式:

set(‘选项值1’,‘选项值2’,‘选项值3’,......)

说明:

1,每个选项值,都是一个字符串;

2,每次存储都能存储其中一个或多个值,形式为:’值1,值2,值4’

3,这些选项值,在系统内部其实分别对应整数值:1,2,4,8,16,32,.....这样内部处理数据更高效。

4,我们在操作中,也可以直接使用这些整数值:但需要一定的运算规则。

mysql数据库定义语句

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢