1、创建数据库和用户

-- 修改密码   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'

3、创建修改表

--  创建一个学生信息表

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);

4、删除表

--  删除表

DROP TABLE  IF EXISTS student;

-- 01.新增一条数据

INSERT INTO student(stuNo,`name`,stuAge)

VALUES(1,'张三',50);

-- 02.新增一条数据     必须按照创建表时  字段的顺序依次赋值

INSERT INTO student

VALUES(2,'李四',50)

-- 03.新增一条数据  stuNo不是自增 默认stuNo=0 如果设置了自增 可以不显示的给stuNo赋值

INSERT INTO student(`name`,stuAge)

VALUES('王五',50);

-- 04.删除表中所有数据

DELETE  FROM student;

-- 05.同时新增多条数据

INSERT INTO  student

VALUES(1,'张三',50),(2,'李四',50),(3,'王五',50);

5、数据库的备份与恢复

6、四种完整性约束和六大约束

-- 四种完整性约束

-- 01.实体完整性   唯一约束,主键约束

-- 指的就是一条记录!保证每一条记录都是唯一的,有意义的!

-- 02.域完整性     检查约束,外键约束

-- 域在这里指的是字段!保证字段的值必须是有效的!

-- 03.引用完整性   外键约束

-- 一个表中的字段值来自另一个表中的字段值!

-- 引用的表就是外键表/从表

-- 被引用的表就是主表

-- 04.自定义完整性 检查约束

-- 6大约束

-- 01.主键约束    pk  primary key

-- 02.唯一约束    uq  unique

ALTER TABLE student

ADD  CONSTRAINT uq_student_name UNIQUE(NAME)

-- 03.外键约束    fk  foreign key

ALTER TABLE  student

ADD 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_teacher

FOREIGN KEY(tid)

REFERENCES teacher(tId)

-- 04.默认值约束  df  default

-- 05.检查约束    ck  check

-- 06.非空约束    nn  not null

7、修改和删除表中的数据

--   修改表中的数据

-- update  表名  set  需要修改的数据  where  条件

-- 01.修改stuNo=5的姓名为 ‘小黑’

UPDATE student  SET `name`='小黑'

WHERE stuNo=5;

-- 02.修改所有tid=1001 改成 1003

UPDATE student SET tid=1003

WHERE 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;

8、基本的查询语句

--  DQL(data  query language)数据查询语言

-- 01.查询所有的学生信息

SELECT * FROM student;

-- 02.查询指定的学生信息

SELECT * FROM student WHERE studentName='大凡';

-- 03.查询编号是1009的学生编号,姓名以及住址

SELECT  studentNo,studentName,address FROM student

WHERE studentNo=1009;

-- 04.查询的时候使用别名 as 也可以省略

SELECT  studentNo AS 编号,studentName AS 姓名,

address AS 住址 FROM student

WHERE studentNo=1009;

SELECT  studentNo  编号,studentName  姓名,

address  住址 FROM student

WHERE studentNo=1009;

-- 05.查询student和grade两个表中的数据

SELECT * FROM student,grade;

-- 上面的结果是一个 笛卡尔积! 两个表中数据的乘积!

SELECT * FROM student,grade

WHERE student.gradeid=grade.gradeid

-- 06.去重  distinct 查询多列时,必须位于第一个

-- 查询学生成绩在85到95之间的学生编号

SELECT  DISTINCT studentNo,studentResult

FROM  result

WHERE studentResult BETWEEN 85 AND 95;

-- 07.查询学生成绩在85到95之间的学生姓名

SELECT studentName FROM student

WHERE  studentNo IN

(SELECT DISTINCT studentNo FROM result

WHERE studentResult BETWEEN 85 AND 95);

--  验证我们的输出是正确的

UPDATE result SET studentResult=80

WHERE studentNo=1000;

-- 08.查询学生表中 地址不为空的学生姓名和地址

SELECT studentName,address

FROM student

WHERE address!='';

-- 09.查询学生表中地址为空的学生姓名和地址

--  null 代表无值 区别于 ‘’空字符串

SELECT studentName,address

FROM student

WHERE address='';

SELECT studentName,address

FROM student

WHERE address IS NULL;

SELECT studentName,address

FROM student

WHERE address IS NOT NULL;

--  10.查询姓名是 李东方或者刘奋斗的 学生信息

SELECT * FROM student

WHERE studentName='李东方' OR studentName='刘奋斗'

--  11.查询姓名是 李东方或者刘奋斗 再或者是json 的 学生信息

SELECT * FROM student

WHERE

studentName='李东方' OR studentName='刘奋斗'

OR studentName='json';

-- 12.使用in 代替

SELECT * FROM student

WHERE  studentName IN

('李东方','json','刘奋斗');

-- 13.查询姓李的学生信息 _ 代表一个字符  %代表0或者多个字符

SELECT * FROM student

WHERE  studentName LIKE '李_'

SELECT * FROM student

WHERE  studentName LIKE '李%'

SELECT * FROM student

WHERE  studentName LIKE '%才'

SELECT * FROM student

WHERE  studentName LIKE '%才%'

mysql /!/_Mysql(一)相关推荐

  1. chgrp r mysql ._mysql操作命令

    一.启动mysql服务 (1) rpm方式安装的mysql -设置自动启动 #ntsysv --level 3 -手工启动 #service mysqld start (2) 编译安装的mysql - ...

  2. mysql @ $_mysql常见笔试题

    一.Mysql常见笔试题 1.Mysql 中有哪几种锁? (1)表级锁:开销小,加锁快.不会出现死锁,锁定粒度大,发生锁冲突的概率高,并发度低. (2)行级锁:开销大,加锁慢.会出现死锁,锁定粒度小, ...

  3. mysql+'@'%_mysql忘记登录的人:命令拒绝用户”@’%’

    跑步秀表示我以具有数据库所有权限的用户身份登录. 跑步表状态;导致错误.并且错误不显示我已登录的用户名! 就好像对于这个命令,mysql忘记了我是谁.其他select语句工作正常.有人可以解释一下吗怎 ...

  4. dmb: 数据库监控及灾备系统(for mysql)_MySQL企业级数据库灾备(备份)系统-DMB v2.1发布...

    为了这系统宅了很多个周末,又一个小长假过去了, DMB v2.1终于可以那得出手了,现在分享出来让朋友们使用,希望能得到更多更好的建议.DMB 对InnoDB存储引擎支持在线热备(ibbackup, ...

  5. mysql ( )_MYSQL (一)

    一.下载安装 数据库是什么?数据库就是文件夹,数据就是文件夹中一个一个的表,每一个表就有一行一行的数据 WINDOWS版本 1 https://www.mysql.com/ View Code 安装解 ...

  6. mysql+'@'%_mysql全局权限账户%登录不上ERROR 1045 (28000): Access denied for user 'zzq'@'localhost' (usi......

    报错:ERROR 1045 (28000): Access denied for user 'zzq'@'localhost' (using password: YES) 帐号密码都对了 就是连不上. ...

  7. freecplus框架-MySQL数据库操作

    文章目录 一.源代码说明 二.概述 三.connection类 四.sqlstatement类 五.程序流程 1.无结果集SQL的程序的流程 2.有结果集SQL的程序的流程 六.示例程序 1.创建超女 ...

  8. 基于linux+windows Qt+Mysql 开发的在线答题系统

    目录 一 项目描述 二 段位介绍 三 效果展示 四 服务器代码 1.common.h 2.db.h(数据库类) 3.myserver(处理客户端事件) 4.Tcpserver(监听) 5.Tcpsoc ...

  9. mysql提示python没有安装_MySQL-Python安装问题小记

    安装完MysqL-python后import加载模块提示以下错误, ImportError: libMysqLclient_r.so.16: cannot open shared object fil ...

最新文章

  1. 首款VR全身触控体验套件Teslasuit,让你浑身“来电”
  2. laravel json字段添加_Laravel 6.0.4 中将添加计划任务事件
  3. 事件处理 ajax,AJAX的多事件处理机制
  4. IDEA中使用maven下载速度很慢时的解决办法
  5. Pygame实现记录事件到文本中
  6. Linux源码安装mysql 5.6.12(cmake编译)
  7. SpringBoot整合Shiro实现登录认证授权操作
  8. 函数作为参数传递至函数内部进行调用
  9. ffmpeg drawtext同时添加多行文本
  10. ue4设置组合键_UE4快捷键
  11. 如何把二维表转成一维表
  12. oracle学习入门系列之五内存结构、数据库结构、进程
  13. Python(十三)IO编程
  14. stm32专题二十一:LCD显示原理
  15. P1108 低价购买(DP)
  16. 王川:小米盒子的产品观
  17. MySQL 数据库重启
  18. linux挂载img镜像文件,如何挂载.img格式的镜像
  19. fcpx插件:Stupid Raisins Flow Pop(48个平滑和无缝过渡)
  20. jmeter ip 欺骗

热门文章

  1. 大数据治理平台有哪些价值
  2. 如何讲商业智能(BI)融入大数据中
  3. Django 模板中使用 Ajax POST
  4. mysql 表迁移 并筛选_使用perl实现拆分数据表(mysql)并迁移数据实例
  5. 客户端和服务器之间的信息结构,客户端和服务器之间的信息结构
  6. java session机制_如何学习Session的机制使用
  7. sqlserver 没有维护计划_设定数据库备份计划,安全放心不怕事!
  8. Python的操作符?
  9. 由canvas实现btn效果有感
  10. 数据中心那些常见的问题