2020923王杉
学习内容:
MySQL:
-
数据库:数据库是按照一定的形式来组织、存储数据,目的是为了操作数据的增删改查
-
数据库历史:网状数据库、层次型数据库、关系型数据库、非关系型数据库
-
数据库存储:内存/特定文件/第三方服务器/数据库服务器
-
关系型数据库逻辑结构:Server(数据库服务器)/Database(数据库)/Table(数据表)/Row(行)/Column(列)
-
常见的关系型数据库:①SQLit②MySQL③SQL Server④Oracle
-
计算机存储字符:
-
存储英文字符:ASCII、Latin-1
-
存储中文字符:GB2312、GBK、BIG5、Unicode
-
中文乱码:中文乱码产生的原因:mysql默认使用Latin-1编码
解决:①SQL脚本文件另存为的编码为utf8②客户端连接服务器端使用的编码(set names utf8)③服务器端创建数据库使用的编码(charset=utf8)
-
-
MySQL数据库使用:
-
服务器:mysql目录下的bin文件mysql.exe(负责存储和维护数据,启动文件确保3306端口不被占用)
-
客户端:mysql目录下的bin文件mysql.exe(负责向数据库发起增删改查)
-
客户端连接服务器端:mysql.exe -h127.0.0.1 -P3306 -uroot -p (简写:mysql -uroot -proot)
-h:host 主机(ip地址/域名)
-P:port 端口
-u:user 用户名
-p:password 密码
-
常用命令:show databases;查看数据库名 use 数据库名;进入数据库 show tables;查看数据表 desc 表名;查看表结构 quit;退出
-
-
SQL:
-
SQL是结构化查询语言,对关系型数据库进行增删改查。
-
执行方:①式交互模式(客户端输入执行,临时性操作数据)②脚本模式(脚本文件批量操作数据)
-
SQL规范:①每一条命令必须以英文分隔符结束,一条命令可以跨多行
②一条出错后,这条以及后面命令不会再执行
③不分大小写,关键字大写非关键字小写
④注释单行# 多行/**/
-
SQL命令:①DDL(定义数据):
create:创建 drop:删除 alter:修改数据库
②DML(操作数据):
insert:插入数据 update:更新数据 delete:删除数据
③DQL(查询数据):
select:查询数据
④DCL(控制用户权限):
grant:授权 revoke:收回权限
-
SQL语句使用实例:
set names utf8;设置客户端连接服务器端编码为(utf8)
frop database if exists lfsql;如果存在同名的数据库,丢弃数据库
create database lfsql charset=utf8;创建数据库,设置存储的编码
use lfsql; 进入数据库
...
-
-
列类型:数值型:整形、浮点型、布尔型
日期时间型
字符串类型
-
列约束:
- 主键约束:primary key auto_increment
- 唯一约束:unique
- 非空约束:not null
- 检查约束:check
- 默认约束:default
- 外键约束:foreign key(列)references 表(主键列)
-
查询数据:
1.简单查询:
查询特定的列 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_';
分页查询 select * from lfemp limit m,n;
2.复杂查询:
学习心得:
今天学习了数据库的操作方法和一些基本数据库知识,要学习的东西还多,加油!
近期评论