数据库关系模型和SQL
文章目录
为例介绍关系模型,以Mysql数据库为例。
安装
MariaDB 安装
1.安装mariadb-server,会自动安装mariadb
>yum install mariadb-server
2.启动服务
>systemctl start mariadb.service
3.开机启动
>systemctl enable mariadb.service
4.为了安全设置mysql服务
>mysql_secure_installation
5.数据库密码登录
>mysql -u root -p
6.导入测试脚本
mysql -uroot -p < test.sql
显示所有数据库
show databases;
创建并授权用户
grant all on *.* to '用户名'@'%' identified by '密码';
flush privileges;
SQL语句
SQL是结构化查询语言Structured Query Language。1987年被ISO组织标准化。
所有主流的关系型数据库都支持SQL,NoSQL也有很大一部分支持SQL。
SQL语句分为
- DDL 数据定义语言,负责数据库及数据库对象定义,由create(创造),alter(更改),drop(终止)等三种语句组成。
- DML 数据操作语言,负责对数据库对象的操作,CRUD增删改查。
- DCL 数据控制语言,负责数据库权限访问控制,由grant(授权),revoke(撤销)两个指令组成。
- TCL 事务控制语言,负责处理ACID事务,支持commit(提交),rollback(回滚)指令。
语言规范
- SQL语句大小写不敏感
- 一般建议,SQL的关键字及函数大写
- SQL语句末尾应该使用分号结束
- 注释
- 多行注释
/*message*/
- 单行注释
-- message
- MySQL 注释可以使用#
- 多行注释
- 使用空格或缩进提高可与读性
- 命名规范
- 必须以字母开头
- 可以使用数字,#,$ 和 _
- 不可使用关键字
DCL
grant授权,revoke撤销
1.授权 all权限 on employees库的所有表 to qy用户 在任意ip 以*963.为密码来访问
>grant all on employees.* to 'qy'@'%' identified by '*963.';
2.撤销 qy用户 的所有权限 on 所有库
>revoke all on *.* from qy;
符号 * 为通配符