数据库是按照一定格式存储数据的一些文件的组合。
实际上是一堆文件,这些文件存储了具有特定格式的数据。
数据库管理系统 DataBaseManagement 简称DBMS。
管理数据库中的数据,可以对其进行增删改查。
SQL是结构化查询语言 定义了操作所有关系型数据库的规则 DBMS–执行–SQL–操作–DB
常用命令 退出MySQL exit 查看有哪些数据库 show databases; 注意以分 结尾,英文状态
使用时某个数据库 use 数据库名; 创建数据库 create database 你想要的名;
show tables 展示某个数据库中的表;
数据库最基本的单元是表:table 任何一张表都有行(row)和列(column)
行被称为数据/记录。
SQL语句的分类
DDL 数据定义语言 (凡是带有create(新建),drop(删除),alter(修改)的都是DDL)
DDL主要操作的表的结构,不是表中的数据
DML数据操作语言(凡是对表中的数据进行增删改的都是DML)
insert delete update
DQL 数据查询语言(凡是带select关键字的都是查询语言)
DCL数据控制语言 授权(grant) 撤销权限(revoke)
TCL事务控制语言 (包括事务提交commit,事务回滚rollback)
MySQL服务的启动
1手动 2 cmd–services.msc 3 使用管理员打开cmd net start / stop mysql 启停命令
登录退出
mysql -uroot -p exit
还可登录他人 mysql -hip(目标ip地址)-uroot -p连接目标的密码
mysql –host=ip –user=root –password=连接目标的密码
SQL语法
SQL语句可以单行或多行书写,以分 结束 不区分大小写
三种注释 单行注释:–(一个空格)注释内容 或 #(不用加空格)注释内容 #是MySQL特有
多行注释:/*注释*/
DDL操作数据库
Retrieve 查询 show databases;查询所有数据库的名称
show create database 数据库名称; 查询某个数据库的字符集:查询某个数据库的创建语句
查看以my开头的(my后面可有多个字符)数据库 show databases like ‘my%’;
查看以my开头的(my后面只有一个字符)数据库 show databases like ‘my_’;
Create创建 create database 你想要的名; 为了保险可以 create database if not exists 你想要的名;
还可指定创建 例如创建字符集为gbk的数据库 create database if not exists db4 character set gbk;
Drop 删除 drop database 数据库名称; drop database if exists 数据库名;
alter修改 alter database 名 charset gbk;
选择数据库 use 数据库名称;
查看当前是哪个数据库 select database();
DDL操作表:CRUD(Create创建 Retrieve 查询 Update修改 Delete删除 )
Retrieve 查询 show tables;查询当前数据库所有表的名称
show table status like ‘student’G 查看表状态 G表示列表信息,后面不用加分
两种方式
desc 表名称; 看表的字段信息;desc student id;只看某项
show (full)columns from 数据表名; 看表的字段信息;加full之后可看详细信息
show create table studentG查看表的结构,可查看创建时的sql语句
show tables like ‘my%’; 查看以my开头的(my后面可有多个字符)表
习题
(1) 查看test数据库中所有数据表。
show tables;
(2) 查看当前数据库中Employee数据表的状态。
show table status like ’employee’G
(3) 查看Department数据表所有字段的信息(两种方式)。
desc department;
show columns from department;
(4) 查看Employee数据表中age字段的信息。
desc employee age;
(5) 查看Department数据表详细信息(包括权限、注释等)。
show full columns from department;
(6) 查看Departmen数据表的创建语句。
show create table departmentG
Create创建 create table 表名(
字段名1 数据类型1,
字段名2 数据类型2,
…
字段名n 数据类型n
);
mysql的数据类型 数值 日期 字符串
数值 如age int score double(参数1:总长度,参数2:小数点后保留的位数)
日期 如birthday date
字符串 name char(10)存“张三”会用10个字符空间,因为他不会计算 (存储的性能高 浪费空间)
name varchar(10)存“张三”会用2个字符空间,他会计算张三占几个字符 (存储性能低 节约空间)
Drop 删除 drop table 表名; drop table if exists 表名;
alter修改 修改表名 alter table 表名 rename to 新表名;.1.2
添加一列 alter table 表名 add 列名 数据类型;.6
修改数据类型 alter table 表名 modify 列名 新数据类型;.5
修改列名和数据类型 alter table 表名 change 列名 新列名 新数据类型;.4
删除列 alter table 表名 drop 列名;.9
习题
1、 将数据表department的表名改成depart,并进行查看。
alter table department rename to depart;
2、 将数据表depart的表名改成department,并进行查看
alter table depart rename to department;。
3、 将数据表department的字符集改成gbk。
alter table department charset = gbk; show create table department G
4、 将数据表employee的“id”字段的字段名改为“emid”,并查看修改结果。
即使不改类类型 也要写int
alter table employee change id emid int ;desc employee;
5、 将数据表employee的“name”字段的字段类型改为char(10),并查看修改结果。
alter table employee modify name char(10); desc employee name;
6、 在数据表employee中新增“sex”字段,字段类型为char(2),放在“name”字段之后,并查看修改结果。
alter table employee add sex char(2) after name ; desc employee;
7、 在数据表employee中修改“did”字段位置,放在第一个字段位置,并查看修改结果。
alter table employee modify did int first; desc employee;
8、 在数据表employee中新增phone char(11),address varchar(60)两个字段。
alter table employee add(phone char(11),address varchar(60));
9、 在数据表employee中删除“sex”字段,并查看结果
alter table employee drop sex; desc employee;
10、删除数据表department,并查看结果。
drop tabledepartment; show tables;
DDL 数据定义语言 (凡是带有create(新建),drop(删除),alter(修改)的都是DDL)
上面这个更好
DDL操作表:CRUD(Create创建 Retrieve 查询 Update修改 Delete删除 )
DML(对表的数据进行增删改)(增insert删delete改update查select)
添加数据-为所有字段添加信息
insert into employee values(1001,1,’张三’,18);
添加数据-为部分字段添加信息
insert into employee (did,emid,name) values(1002,2,’李四’);
添加数据-一次添加多行数据
insert into employee values(1003,4,’李丽’,19),(1002,5,’张强’,20);
查询数据
查询数据-查询表中全部字段
select * from employee; (不要用,这样人们不知道查哪些)
查询数据-查询表中部分字段
查部分 select emid,name from employee;
查询数据-简单条件查询
select * from employee where did=1001;
修改数据
update employee set age=20 where name=’张三’;
全部改为19
update employee set age=19;
删除数据
delete from employee where emid =5;
全部删除
delete from employee;
习题
1、 创建mydb数据库,在mydb数据库中创建一张电子杂志订阅表(subscribe)。
create database mydb;
2、电子杂志订阅表中要包含4个字段,分别为编 (id int)、
订阅邮件的邮箱地址(email varchar(50))、
用户是否确认订阅 (status int,使用数字表示,1表示已确认,0表示未确认)、
邮箱确认的验证码(code varchar(10))。
create table subscribe(
->id int,
->email varchar(50),
->status int comment’使用数字表示,1表示已确认,0表示未确认’,
->code varchar(10)
-> );
3、为电子杂志订阅表添加5条数据,如表所示
id |
|
status |
code |
1 |
tom123@163.com 声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
4款良心电脑软件,功能强大,值得收藏
上一篇
2022年5月12日
自动化部署CI/CD的搭建 自动化部署项目 (Jenkins服务器搭建)—-书写脚本
下一篇
2022年5月12日
|