20200923冯佳丽
学习日志
使用MySQL数据库
MySQL部署结构
服务器端
客户端
使用客户端连接服务器端
mysql.exe -h127.0.0.1 -P3306 -uroot -p
-h:host 主机(ip地址/域名)
-P:port 端口
-u:user 用户名
-p:password 密码
简写方式:mysql -uroot -proot
注:MySQL常用的管理命令
show databases; 查看数据库名
use 数据库名; 进入数据库
show tables; 查看数据表
desc 表名; 查看表结构
quit; 退出连接
SQL
概念:
SQL(Structured Query Language),结构化查询语言,用于操作关系型数据库服务器,对数据执行增删改查
执行方式
交互模式:
客户端输入一行,点击回车,服务器执行一行,适用于临时性的查看数据
脚本模式:
客户端把要执行的命令编写在一个脚本文件中,一次性的提交给服务器执行,适用于批量的操作数据
输入 “ mysql -uroot < C:/xampp/htdocs/…./01.sql ” 然后回车
SQL语法规范
1、每条SQL命令必须以英文的分号作为结束,一条命令可以跨越多行
2、假如某一条命令出现语法规范,则这条命令以及后边所有的命令不再执行
3、SQL不区分大小写,习惯上数据库关键字用大写,非关键字用小写,项目在上线后,如果关键字小写可能会造成错误
4、SQL命令中可以使用单行注释(#...)和多行注释(/*… */),注释的内容不会被服务器执行
SQL命令
DDL(定义数据):create:创建、 drop:删除、alter:修改数据库
DML(操作数据):insert:插入数据、 update:更新数据、delete:删除数据
DQL(查询数据) :select:查询数据
DCL(控制用户权限):grant:授权、revoke:收回权限
列类型
数值型(引号可加可不加)
整型
tinyint:微整型,占1个字节,范围 -128~127
smallint:小整型,占2个字节,范围-32768~32767
int:整型,占4个字节,范围-2147483648~2147483647
bigint:大整型,占8个字节
浮点型
float:单精度浮点型,占4个字节,最多3.4E38,比INT范围大的多,可能产生计算误差
double:双精度浮点型,占8个字节,范围比BIGINT大的多,可能产生计算误差
布尔型
decimal(M,D):定点小数,不会产生计算误差,M代表总的有效位数,D代表小数点后的有效位数
日期时间型(必须加引号)
date 日期型 2019-12-25
time 时间型 14:32:50
datetime 日期时间型 2019-12-25 14:32:50
字符串类型(必须加引号)
varchar(M) 变长字符串,不会产生空间浪费,操作速度相对慢,M最大值是65535,常用于存储姓名、文章标题、文章的内容…
char(M) 定长字符串,可能产生空间浪费,操作速度相对快,M最大值是255,常用于存储手机号码、身份号码等固定长度的数据
text(M) 大型变长字符串,M最多是2G
列约束
主键约束 primary key auto_increment
唯一约束 unique
非空约束 not null
检查约束 check
默认值约束 default
外键约束 foreign key(列) references 表(主键列)
简单查询
查询特定的列
select eid,ename from lfemp;
查询所有的列
select * from lfemp;
给列起别名
select eid as 编号,ename 姓名 from lfemp;
合并相同的项
select distinct sex from lfemp;
查询时执行计算
select ename,salary*12 from lfemp;
结果集的排序
select * from lfemp order by salary asc/desc;
条件查询
select * from lfemp where salary >=5000;
模糊条件查询
select * from lfemp where ename like '%e_'; %表示有0~n个字符 _表示1个字符
分页查询
select * from lfemp limit m,n;
学习感受:
今天内容是自己sql server课上学过一些,相对比较轻松,不过时间长也忘记了,算是巩固,唤醒的自己记忆吧。
评论留言