mysql算是在job description上经常出现要求测试人员掌握的数据库之一,一般都是Oracle或者mysql,要会其中之一。当然也有用Navicat Premium或者PostgreSQL 这种工具的。
个人觉得不管面试还是笔试数据库都考的比其他东西会少,甚至不考,但是必须会。
鉴于昨日介绍了xmind思维导图工具,所以今天来看下用xmind做冰山一角,一小部分mysql的思维导图啥效果。
数据库乱七八糟的概念就不复习太多了,直接看命令吧,懂数据库的可以跳过下面语句,毕竟是写文章给纯小白准备了足够你入门的注释。
-- 举例:创建数据库 nowcoder CREATE DATABASE nowcoder; -- create:创建 -- database: 数据库 -- nowcoder:数据库名称 -- CREATE DATABASE:创建数据库 -- 举例:在数据库nowcoder中创建学生表student -- 表中的字段有学号、学生姓名、性别、班号 CREATE TABLE nowcoder.student ( sid INT,-- 学号 sname CHAR(30), -- 姓名 sex ENUM("F","M") -- 性别【F:女 M:男】 ); -- CREATE TABLE 建表 -- table 表 -- nowcoder.student:里面的student是表名,"."表示从属关系 -- sid:字段名,列名 -- INT:数据类型,这里表示整型,里面可以存放整数 -- CHAR(30):字符型,里面可以存放的字符的个数为30个 -- ENUM:枚举类型 -- 举例:往数据库nowcoder中的表student中插入一条数据: -- 【学号:1,姓名:zhangsan,性别:M】 INSERT INTO nowcoder.`student`(sid,sname,sex) VALUES(1,"zhangsan","M"); -- insert:插入 -- into :往...里面 -- INSERT INTO :往...里面...插入 -- student`(sid,sname,sex) : -- 往student表的sid、sanme、sex三个字段中插入数据 -- VALUES:值,里面放要插入的数据, -- 数据的个数,需要和字段的个数一致 举例:修改nowcoder数据库中,student表中的数据, 将学号为1的数据的性别修改为F UPDATE nowcoder.`student` SET sex="F" WHERE sid=1; -- update修改 -- set 设置 -- where 条件,这里用来指出要修改的数据符合的条件 举例:查询nowcoder数据库student表中姓名为lisi的学生的学号和性别 SELECT sid,sex FROM nowcoder.`student` WHERE sname="lisi"; -- sex 性别 -- sid 学号 -- select 查询 -- from 从哪里查数据 -- where 条件,后面跟要查询的数据符合的条件 举例:查询nowcoder数据库student表中的所有数据 -- 方法一 SELECT * FROM nowcoder.`student`; -- 方法二 SELECT sid,sname,sex FROM nowcoder.`student`; -- * 号代表表中的所有数据 五、数据库的操作 1、数据库的创建 注意:数据库不能重名【重名时报 XX already EXISTS XX 已经存在】 -- 数据库库名命名规则重要说明: -- (1)数据库名称可以支持大写字母A-Z,小写字母a-z,数字0-9,字符包括下划线_、,可以组合使用;-- 数字、字母、下划线 -- (2) 数据库名称一般以字母开头; -- (3)数据库名称不建议以纯数字命名; -- (4) 数据库名称在1-30个字符之间; -- (5) 数据库名称可以支持中文,但不建议使用中文命名。 总结:数据库名称,不能重名,以字母、数字、下划线组合构成,以字母开头,不建议使用纯数字或者中文命名。 -- 创建数据库语法: CREATE DATABASE 库名 设置默认字符集 字符集名称 COLLATE 排序规则; CREATE DATABASE 库名 DEFAULT CHARACTER SET 字符集名称 COLLATE 排序规则; 举例:创建数据库schoolc,使该数据库可以支持中文,创建好的数据库, 对输入的sql语句中的字符不区分大小写 CREATE DATABASE schoolc DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 2、修改数据库的字符集 -- 特别说明: (1)只能对存在的数据库进行修改,否则报错; (2)用本方法修改数据库的字符集后,新的字符集只对修改后创建的表有效; (3)如果修改前的数据库不支持中文,那么,修改数据库前建的表,修改后 仍然不支持中文。 解决办法: 使用语句,执行如下语句,修改表的字符集: ALTER TABLE 库名.表名 CONVERT TO CHARACTER SET utf8; -- 语法: ALTER DATABASE 库名 CHARACTER SET 新字符集名称 COLLATE 排序规则; 举例:修改数据库schoolc,修改这个数据库的字符集为gb2312, 排序规则为 gb2312_chinese_ci,使该数据库对输入的sql语句不区分大小写,并支持中文 ALTER DATABASE schoolc CHARACTER SET gb2312 COLLATE gb2312_chinese_ci; 3、删除数据库 -- 语法: DROP DATABASE 库名; -- drop 删除的意思 -- DROP DATABASE:删除数据库的意思 举例:删除指定的数据库schoolc DROP DATABASE schoolc; 六、MySQL数据类型 说明:MySQL支持四种数据类型 数值型、字符型、日期时间型、混合型 数值型:用来放数字 [整数 小数] 字符型:用来放名称、文字描述、文章等字符或者字符串 日期时间型:用来放日期、时间 混合型:用来放字符序列、性别(男、女)等 1、数值型 TINY:微小 SMALL:小 MEDIUM:中等的 INTEGER:整数,int为integer的简写 Big:大 BYTE 字节 bit:位 1BYTE=8BIT KB 千字节 1kB=1024*8 BIT MB兆字节 GB 吉字节 TB: 说明: 一般tinyint、int、integer、mediumint、bigint类型存放整数 Float、double、decimal类型存放小数 一般做测试需要建表时,对于整数字段,常用INT型号 CREATE TABLE test.stu ( sid INT, sid1 TINYINT, sid2 SMALLINT, sid3 MEDIUMINT, sid4 INTEGER, sid5 BIGINT, score FLOAT(6,2), score1 DOUBLE(6,2), score2 DECIMAL(6,2) );