查看全局变量 SHOW GLOBAL VARIABLES;
查看回话变量 SHOW SESSION VARIABLES;
查看当前mysql数据库的所有属性的字符编码 SHOW VARIABLES LIKE ‘character_%’;
SELECT VERSION();
SELECT PASSWORD(‘mysql’), MD5(‘mysql’), sha(‘mysql’);
查看当前用户的权限 SHOW GRANTS;
查看当前所使用的数据库 SELECT DATABASE();
SQL分类
DDL:数据定义语言 CREATE ALTER DROP RENAME TRUNCATE 默认会执行commit,所以数据不可回滚
DML:数据操纵语言 INSERT DELETE UPDATE SELECT 默认会执行commit;先执行set autocommit=FALSE 可以回滚数据
DCL:数据控制语言 COMMIT ROLLBACK SAVEPOINT GRANT(用于设置权限) REVOKE(用于回收权限)
创建表时,可以自定义计算列,如:
a INT,
b INT,
c INT GENERATED ALWAYS AS (a+b) VIRTUAL 创建数据表时,此列为计算列
视图的DML操作(增、删、改)会直接影响数据表的数据,反之亦然;
查看所有表和视图 SHOW TABLES;
查看表或视图的结构 DESC aa;
查看视图属性 SHOW TABLE STATUS LIKE ‘get_fault_item’;
查看视图的详细定义 SHOW CREATE VIEW get_fault_item;
定义存储过程时,要使用delimiter自定义结束符
调用存储过程使用 CALL
调用存储函数使用 SELECT
定义存储过程参数时,一般与字段的类型保持一致,或者参数的类型范围>字段的类型范围
SET GLOBAL log_bin_trust_function_creators = 1;
SHOW VARIABLES LIKE ‘log_bin_trust_function_creators’;
SHOW TABLE STATUS LIKE ‘aa’;
创建存储过程
CREATE PROCEDURE SUM1(a INT)
BEGIN
DECLARE SUM INT DEFAULT 0;
DECLARE i INT DEFAULT 1;
while i<=a do
SET SUM = SUM +i;
SET i = i + 1;
END while;
SELECT SUM;
END
执行存储过程
CALL SUM1(100);
删除存储过程
DROP PROCEDURE if EXISTS SUM;
创建存储过程
CREATE PROCEDURE mywhile()
BEGIN
DECLARE i INT DEFAULT 0;
outer_label:begin
while i<10 DO
SET i=i+1;
if i>2 then
SELECT ‘跳出循环’ COLUMN1;
leave outer_labell
ELSE
SELECT i AS COLUMN1;
END if;
END while;
END outer_label;
END
创建存储过程
CREATE PROCEDURE SUM2(a