首页 > 代码库 > mysql

mysql

技术分享

技术分享

 

技术分享
-- 修改密码   ctrl+shift+c/r  添加/取消  注释SET PASSWORD  FOR root@localhost=PASSWORD(新密码);-- 查询所有的数据库SHOW DATABASES ;-- 创建数据库CREATE DATABASE IF NOT EXISTS  t11;--  删除数据库DROP DATABASE t11;--  切换到指定的数据库USE mysql;-- 查询mysql数据库中user表中所有用户SELECT `host`,`user` FROM mysql.user--  `反引号`  区别关键字-- 创建用户CREATE USER bdqn IDENTIFIED BY bdqn;--  给用户授权GRANT ALL ON *.* TO bdqn;-- 删除用户DELETE FROM mysql.user WHERE USER=bdqn
01.创建数据库和用户

技术分享

 

技术分享
--  创建一个学生信息表CREATE TABLE  student(stuNo INT(4)  NOT NULL PRIMARY KEY,stuName VARCHAR(20) NOT NULL,stuAge  INT(3)  -- 不能加 ,)-- 修改表名ALTER TABLE student RENAME  AS stu;-- 给表中新增字段ALTER TABLE stu ADD stuSex VARCHAR(2);-- 修改表中字段的类型ALTER TABLE stu MODIFY stuName VARCHAR(10);-- 删除表中指定的字段ALTER TABLE  stu DROP stuSex;-- 修改字段的名称ALTER TABLE  stu CHANGE stuName `name` VARCHAR(10);
02.创建修改表

 

技术分享
--  删除表DROP TABLE  IF EXISTS student;-- 01.新增一条数据INSERT INTO student(stuNo,`name`,stuAge)VALUES(1,张三,50);-- 02.新增一条数据     必须按照创建表时  字段的顺序依次赋值INSERT INTO studentVALUES(2,李四,50)-- 03.新增一条数据  stuNo不是自增 默认stuNo=0 如果设置了自增 可以不显示的给stuNo赋值INSERT INTO student(`name`,stuAge)VALUES(王五,50);-- 04.删除表中所有数据 DELETE  FROM student;-- 05.同时新增多条数据INSERT INTO  studentVALUES(1,张三,50),(2,李四,50),(3,王五,50);
03.删除表,向表中新增数据

 

数据库的备份

cmd进入命令行

mysqldump -u用户名 -p 数据库名称 >指定的文件

 技术分享

 

数据库的恢复

前提是必须要有对应的数据库

 mysql -u用户名 -p <指定的文件

技术分享

 技术分享

 


 

技术分享
-- 四种完整性约束-- 01.实体完整性   唯一约束,主键约束-- 指的就是一条记录!保证每一条记录都是唯一的,有意义的!-- 02.域完整性     检查约束,外键约束-- 域在这里指的是字段!保证字段的值必须是有效的!-- 03.引用完整性   外键约束-- 一个表中的字段值来自另一个表中的字段值!-- 引用的表就是外键表/从表-- 被引用的表就是主表-- 04.自定义完整性 检查约束-- 6大约束-- 01.主键约束    pk  primary key-- 02.唯一约束    uq  uniqueALTER TABLE studentADD  CONSTRAINT uq_student_name UNIQUE(NAME)-- 03.外键约束    fk  foreign keyALTER TABLE  studentADD tid INT(4);  -- 在student表中新增字段CREATE TABLE teacher( -- 创建teacher表tId INT(4) NOT NULL PRIMARY KEY,tName VARCHAR(20));INSERT INTO teacher  -- 给teacher表新增数据VALUES(1000,教师1),(1001,教师2),(1002,教师3),(1003,教师4);ALTER TABLE  student  -- 在从表中创建外键关系ADD CONSTRAINT fk_teacherFOREIGN KEY(tid)REFERENCES teacher(tId);-- 04.默认值约束  df  default-- 05.检查约束    ck  check-- 06.非空约束    nn  not null
04.四种完整性约束和6大约束

 

技术分享
--   修改表中的数据 -- update  表名  set  需要修改的数据  where  条件 -- 01.修改stuNo=5的姓名为 ‘小黑’UPDATE student  SET `name`=小黑WHERE stuNo=5;-- 02.修改所有tid=1001 改成 1003UPDATE student SET tid=1003WHERE tid=1001-- 删除表中的数据-- delete from  表名  where  条件--  删除stuAge在20 到100之间的数据DELETE FROM student WHERE stuAge>=20 AND stuAge<=100;DELETE FROM student WHERE stuAge BETWEEN 200 AND 500;-- 删除teacher表中所有的数据DELETE  FROM teacher;
05.修改和删除数据

 

导入需要的sql文件

01.cmd

 之后进入mysql

技术分享

02.sqlyog中

技术分享

 

技术分享

 

技术分享
--  DQL(data  query language)数据查询语言-- 01.查询所有的学生信息SELECT * FROM student;-- 02.查询指定的学生信息SELECT * FROM student WHERE studentName=大凡;-- 03.查询编号是1009的学生编号,姓名以及住址SELECT  studentNo,studentName,address FROM studentWHERE studentNo=1009;-- 04.查询的时候使用别名 as 也可以省略SELECT  studentNo AS 编号,studentName AS 姓名,address AS 住址 FROM studentWHERE studentNo=1009;SELECT  studentNo  编号,studentName  姓名,address  住址 FROM studentWHERE studentNo=1009;-- 05.查询student和grade两个表中的数据SELECT * FROM student,grade;-- 上面的结果是一个 笛卡尔积! 两个表中数据的乘积!SELECT * FROM student,gradeWHERE student.gradeid=grade.gradeid-- 06.去重  distinct 查询多列时,必须位于第一个-- 查询学生成绩在85到95之间的学生编号SELECT  DISTINCT studentNo,studentResultFROM  result WHERE studentResult BETWEEN 85 AND 95;-- 07.查询学生成绩在85到95之间的学生姓名SELECT studentName FROM studentWHERE  studentNo IN(SELECT DISTINCT studentNo FROM result WHERE studentResult BETWEEN 85 AND 95);--  验证我们的输出是正确的UPDATE result SET studentResult=80WHERE studentNo=1000;-- 08.查询学生表中 地址不为空的学生姓名和地址SELECT studentName,addressFROM studentWHERE address!=‘‘;-- 09.查询学生表中地址为空的学生姓名和地址--  null 代表无值 区别于 ‘’空字符串SELECT studentName,addressFROM studentWHERE address=‘‘;SELECT studentName,addressFROM studentWHERE address IS NULL;SELECT studentName,addressFROM studentWHERE address IS NOT NULL;--  10.查询姓名是 李东方或者刘奋斗的 学生信息SELECT * FROM studentWHERE studentName=李东方 OR studentName=刘奋斗--  11.查询姓名是 李东方或者刘奋斗 再或者是json 的 学生信息SELECT * FROM studentWHERE studentName=李东方 OR studentName=刘奋斗OR studentName=json;-- 12.使用in 代替SELECT * FROM studentWHERE  studentName IN(李东方,json,刘奋斗);-- 13.查询姓李的学生信息 _ 代表一个字符  %代表0或者多个字符SELECT * FROM studentWHERE  studentName LIKE 李_SELECT * FROM studentWHERE  studentName LIKE 李%SELECT * FROM studentWHERE  studentName LIKE %才SELECT * FROM studentWHERE  studentName LIKE %才%
06.基本的查询语句

 


 

mysql