SQL分类
DDL: 数据定义语句。 如: CREATE(创建) / ALTER (更改)/ DROP(删除的是表和数据库)
DML: 数据操纵语句。如:INSERT(添加) / UPDATE(更新) / DELETE(删除表中的数据)
DQL: 数据查询语句。如:SELECT
创建数据库
create database ...;
使用数据库
use ...;
删除数据库
drop database ...;
显示所有的数据库
show database;
创建数据表的语法结构
create table ...(
);
显示所有表
show table;
创建用户
create user '... '@'localhost' identified by '加密码'
在identified前面加'%'可以使任何电脑登陆。
授权
1. 给`user1`用户分配对`test`这个数据库操作的权限
GRANT CREATE,ALTER,DROP,INSERT,UPDATE,DELETE,SELECT ON test.* TO 'user1'@'localhost';
2. 给`user2`用户分配对所有数据库操作的权限
GRANT ALL ON *.* TO 'user2'@'%';
撤销授权
撤销user1用户对test操作的权限
REVOKE ALL ON test.* FROM 'user1'@'localhost';
查看权限
查看`user1`用户的权限
SHOW GRANTS FOR 'user1'@'localhost';
删除用户
DROP USER '用户名'@'主机名';
修改普通用户密码
set password for '用户名'@'主机名' = '新密码';
查看表结构
DESCRIBE ...;
DESC ...;
创建和dept结构一样的表
CREATE TABLE d LIKE dept;
删除表
DROP TABLE table_name
添加列
ALTER TABLE d ADD id INT;
修改列属性
ALTER TABLE d MODIFY id VARCHAR(20);
修改列名
ALTER TABLE d CHANGE id ss VARCHAR(20);
删除列
ALTER TABLE d DROP ss;
重命名表
RENAME TABLE d TO dd;
CRUD(添加(Create)、查询(Retrieve)、修改(Update)、删除(Delete))操作
添加数据
INSERT INTO table_name (列列表) VALUES(值列表)
例子:INSERT INTO dept(deptno,deptname)VALUES(5,'安保部');
查询数据
查询所有数据
SELECT *FROM dept;
查询某列的数据
SELECT deptname FROM dept;
根据条件查询*
SELECT deptno FROM dept WHERE deptname='销售部';
修改数据
全部修改为6
UPDATE dept SET deptno=6;
根据条件修改
UPDATE dept SET deptno=1 WHERE deptname='研发部';
删除数据
删除数据 ,一定要加 where 条件
DELETE FROM dept WHERE deptno=5;
全部删除
DELETE FROM dept;
where条件连接
当`sql`语句中的条件有多条时,可以将多个条件连接起来。他们之间的关系有一下几种:
`and`
`a and b`: 表示 需要同时满足 a 条件 和 b 条件
`or`
`a or b`: 表示 满足 a 条件 或 b 条件都可以
`in`
`in(a, ... ,b)`: 表示在 a 及 b 这些值中都可以
`like`
模糊查询, % 表示任意个字符 _ 表示一个字符