一、数据和表

一、创建数据库

CREATE DATABASE 数据库名称;

语句以英文 ';'(分号)结尾,表示执行SQL语句

二、使用数据库

USE 数据库名称;

三、创建数据库里的表

1. CREATE TABLE 表名称;

注意:表名/列名等称中不能有空格,如需要有空格吗,必须使用‘_’(下划线)代替空格

2. 创建表时需一同定义表中的列名

CREATE TABLE first_sheet

(

姓名 VARCHAR(30),

性别 DEC(1),

出生日期 DATE

体重 DEC(3,1)

);

注意:

① 数据类型必须定义,数据长度也须定义;数据长度中逗号前的表示数据允许存储总位数,逗号后表示小数点后的位数;

②列名需用英文逗号隔开,最后一个列名不需要逗号。

3. 描述表的结构

DESC 表名;

DESC 是'describe'的简称

4. 删除表

DROP 表名;


四、常用数据类型

1. CHARVARCHAR

① CHAR 存储不可变长的字符串,定义后所占有的空间是固定的;

② VARCHAR 存储可变长的字符串,定义后所占用的空间是不固定的,因此使用时可尽量把长度多定义一部分

③ VARCHAR 最大255字符

区别:

① CHAR占用的空间固定,如CHAR(10),即使存储‘aaa’也需要占有10个字符,'aaa'3个+7个空字符);VARCHAR占用的空间不固定,如VARCHAR(10),存储'aaa'只需要占用3个字符。

② CHAR的运算效率更快,但是占用的空间更大,VARCHAR的运算速度慢些,但是占用的空间更灵活;想要获得效率,就必须牺牲一定的空间,这也就是数据库设计上常说的‘以空间换效率’。

2. INTEGERINT

表示正负整数,包含0,二者无本质区别

3. BLOB

存储大文本数据时使用

4. DEC,即DECIMAL缩写

存储数值

5. DATE

存储日期

6. DATETIME

存储日期和时间


五、INSERT语句

1. INSERT INTO 表名 (列名1,列名2,.....) VALUES ('value1','value2',..........);

注意:

① 数据值得顺序和列名的顺序必须一致;

② INSERT语句里CHAR、VARCHAR、BLOB和DATE的值必须加英文单引号;

③ DEC和INT等数值不需要加单引号。

2. 各种INSERT语句

① 列名的顺序可以改变,但是数值的顺序也需要根据改变的列名一起改变;

② 可省略所有列名,但是必须按建表时的顺序填入所有的数值;

③ 可省略部分列名,只填写已输入的列名对应的数值,其余未填写列名的数值会定义为NULL。

3. SELECT 基本语句

SELECT * FROM 表名

表示从表里查询所有的数据


六、NULL和DEFALUT

1. NULL

① NULL表示未定义的数值,它不等于零,也不是空字符串变量,甚至不等于它自己

② 可以把数值改为不接受NULL,这么做的话INSERT语句里一定要提供NOT NULL的值,否则会提示出错:

CREATE TABLE first_sheet

(

姓名 VARCHAR(30) NOT NULL,

性别 DEC(1) NOT NULL,

出生日期 DATE NOT NULL

体重 DEC(3,1)

);

2.DEFALUT

① 如果某些列通常有某个特定的值,那么我们可以把这个特定的值指派为DEFALUT的默认值

② 只要没有另外指派其他值,DEFALUT的值就会在每次新增记录时插入表中。

CREATE TABLE first_sheet

(

姓名 VARCHAR(30) NOT NULL,

性别 DEC(1) NOT NULL,

出生日期 DATE NOT NULL

身高 VARCHAR(3) NOT NULL DEFALUT 170

体重 DEC(3,1)

);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容