温故而知新——MYSQL基本操作
发布时间:2020-12-12 02:20:58 所属栏目:MySql教程 来源:网络整理
导读:相关连接: mysql和sqlserver的区别:https://www.cnblogs.com/vic-tory/p/12760197.html sqlserver基本操作:https://www.cnblogs.com/vic-tory/p/12760871.html 一.创建数据库 CREATE DATABASE IF NOT EXISTS student; DROP DATABASE `student`; 二.表 TAB
相关连接: mysql和sqlserver的区别:https://www.cnblogs.com/vic-tory/p/12760197.html sqlserver基本操作:https://www.cnblogs.com/vic-tory/p/12760871.html 一.创建数据库 CREATE DATABASE IF NOT EXISTS student; DROP DATABASE `student`; 二.表 TABLE EXISTS `user`( userId int PRIMARY KEY AUTO_INCREMENT,userName varchar(20) NOT NULL,userSex char(1) CHECK(userSex='男' OR userSex女'),#MYSQL不支持检查约束 createTime timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP20) UNIQUE ); TABLE company (`companyId` KEY AUTO_INCREMENT,`companyName` ); ALTER TABLE `user` ADD `userAge` int COMMENT 用户年龄; #添加字段 user` MODIFY COLUMN `userAge` int NULL COMMENT ; #修改字段 COLUMN `userAge`; #删除字段 ADD CONSTRAINT FK_userId_companyId FOREIGN KEY (`companyId`) REFERENCES `company`(`companyId`); DESC ``; user`; ?三.添加 INSERT INTO `SET `userName`Robin',`userSex`123456789=18; 四.查询 SELECT MAX(`createTime`),1)">MIN(`createTime`),1)">COUNT(*) AS count,1)">AVG(`userAge`),1)">SUM(`userAge`),userId,userName FROM `` WHERE `userSex` ' GROUP BY `userSex`,`userId`,`userName` HAVING MIN(`createTime`)>2019-04-05' ORDER BY `userId` DESC /*ASC*/ ; WHERE `userId` IN NOT IN*/(SELECT `userId` `); user` LIMIT 0,1; WHERE EXISTS NOT EXISTSFROM `WHERE `userId`3'); # 返回TRUE 或者FALSE user` u LEFT JOIN INNER JOIN,LEFT OUTER JOIN,RIGHT OUTER JOIN,RIGHT JOIN,CROSS JOIN*/ `company` c ON u.companyId=c.companyId ; UNION UNION ALL*/ SELECT DISTINCT `userName`,`userSex` user`; 五.更新 UPDATE `SET `userAge`20 user` u JOIN `company` c c.companyId SET c.companyNameBCDRoBinWHERE u.userId1' 六.删除 DELETE TRUNCATE `user`; 七.视图 VIEW v_user_company AS SELECT userId,c.companyId AS u JOIN `company` AS c ON u.companyIdFROM v_user_company; AS EXISTS v_user_company; 八.存储过程 PROCEDURE sp_user_company( IN inPara int ) BEGIN DECLARE count ; INTO `; SET outParacount; SET inOutPara; END; #SET @outPara0; #可省略 #@inOutPara; CALL sp_user_company(1,@outPara,1)">@inOutPara); ; @outPara; #MYSQL 不提供存储过程中的代码修改 PROCEDURE `sp_user_company`; 九.事务 SHOW GLOBAL VARIABLES LIKE autocommitSET GLOBAL AUTOCOMMIT; START TRANSACTIONROLLBACKCOMMIT; 十.自定义函数 FUNCTION fn_user_company() RETURNS int BEGIN ; `; RETURN SELECT fn_user_company(); FUNCTION fn_user_company1(int) BEGIN ; SELECT fn_user_company1(); SHOW FUNCTION `fn_user_company`; #函数不能内部的内容 FUNCTION `fn_user_company`; 十一.游标 `sp_logic`() BEGIN DECLARE stuId DECLARE stuName CHARACTER SET UTF8; DECLARE done DEFAULT DECLARE myCursor CURSOR FOR `; DECLARE CONTINUE HANDLER FOR NOT FOUND SET doneOPEN myCursor; SET total; c:LOOP FETCH myCursor INTO stuId,stuName; IF done1 THEN LEAVE c; END IF ; SET total =total+; LOOP; CLOSE total; END; 十二.常用函数 数值型函数 ? 字符串函数 ? ?日期和时间函数 ? ?聚合函数和流程控制函数 ? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |