-
插入记录: Second:INSERT [INTO] table_name SET column_name = {expr|DEFAULT},... /** 该方法与第一种的区别在于此方法可以使用子查询(SubQuery) 且该方法只能插入一条数据 */ Eg: INSERT INTO table_name SET username='Designer',password=md5('123'),sex=0; Third:INSERT [INTO] table_name [(column_name,...)] SELECT ... /** 此方法可以将查询结果插入到指定的数据表中 */查看全部
-
多表更新查看全部
-
插入记录: INSERT [INTO] table_name [(column_name,...)] {VALUES|VALUE} ({expr|DEFAULT},...),(...),...; /** column_name 表示列名 expr 表示表达式 DEFAULT 可直接书写,表示默认值 当字段有自动增加的属性后,在插入表的所有字段的数据时,可以填写 NULL 或 DEFAULT 这两个关键字,表示按照原先默认自动增长的属性 插入多行数据时,可以用逗号隔开 */ Eg: INSERT INTO table_name VALUE(DEFAULT,'BeforeDayBreak',md5('123'),DEFAULT,0),(NULL,'Superman',md5('123'),DEFAULT,0);查看全部
-
MySQL目录结构查看全部
-
设置存储引擎 (1)通过修改MySQL配置文件实现 - default-storage-engine = engine (2)通过创建数据表命令来实现 - CREATE TABLE tbl_name( ... ... ) ENGINE = engine; CREATE TABLE tp1( s1 VARCHAR(10) ) ENGINE = MyISAM; SHOW CREATE TABLE tp1; (3)通过修改数据表命令实现 - ALTER TABLE tbl_name ENGINE [=] engine_name; ALTER TABLE tp1 ENGINE = InnoDB; SHOW CREATE TABLE tp1;查看全部
-
各种存储引擎的特点 csv 以逗号分割的存储引擎 MyISAM:适用于事务的处理不多的情况 InnoDB:适用于事务处理比较多,需要有外键支持的情况查看全部
-
MySQL存储引擎——外键和索引 1、外键:保证数据一致性的策略 2、索引:类似目录,是对数据表中一列或多列的值进行排序的一种结构,方便快速查找到数据 3、各引擎特点如图查看全部
-
1.事务 - 事务用于保证数据库的完整性。 2.事务特性 - 原子性(Atomicity) - 一致性(Consistency) - 隔离性(Isolation) - 持久性(Durability)查看全部
-
相关知识点 (1)并发控制 - 当多个连接对记录进行修改时保证数据的一致性和完整性 锁 - - 共享锁(读锁):在同一个时间段内,多个用户可以读取同一资源,读取过程中数据不好发生任何变化 - 排它锁(写锁):在任何时候只能有一个用户写入资源,当进行写锁时会阻塞其他的读锁或者写锁操作。查看全部
-
1.存储引擎 查看数据表的创建命令 SHOW CREATE TABLE tbl_name; SHOW TABLES; SHOW CREATE TABLE t; MySQL可以将数据以不同的技术存储在文件(内存)中,这种技术就称为存储引擎。 每一种存储引擎使用不同的处处机制、索引技巧、锁定水平,最终提供广泛且不同的功能。 MySQL所支持的存储引擎 - MyISM - InnoDB - Memory - CSV - Archieve查看全部
-
存储过程(call procedure proc_name[(123,@name,@num...)]) 自定义函数(select func_name(a,b...)) 注意: A、需要修改分隔符(delimiter /) B、复合结构包含在 begin ... end 语句块中 C、复合结构中的 sql 语句以 分号 结束查看全部
-
alter procedure sp_name [characteristic ...] comment 'string' | {contains sql | no sql | reads sql data | modifies sql data} | sql security {definer | invoker} 2.删除存储过程 DROP PROCEDURE [IF EXISTS] sp_name;查看全部
-
1.创建带有多个OUT类型参数的存储过程 DESC users; SELECT * FROM users; SELECT ROW_COUNT(); // DESC test; INSERT test(username) VALUES('A'),('B,'),('C'); SELECT ROW_COUNT(); //返回被插入的记录总数 SELECT * FROM test; UPDATE test SET username = CONTCAT(username, '--immoc') WHERE id <= 2; SELECT row_COUNT(); //得到被更新的记录总数 DELIMITER // CREATE PROCEDURE rmUserByAgeAndRtInfos(IN p_age SMALLINT UNSIGNED, OUT delNums SMALLINT UNSIGNED, OUT leftNums SMALLINT UNSIGNED) BEGIN DELETE FROM users WHERE WHERE age = p_age; SELECT ROW_COUNT() INTO delNums; SELECT COUNT(id) FROM users INTO leftNums; END // DELIMITER ; SELECT * FROM users; SELECT COUNT(id) FROM users WHERE age = 20; CALL rmUserByAgeAndRtInfos(20, @a, @b); SELECT * FROM users; SELECT COUNT(id) FROM users WHERE age = 23; CALL rmUserByAgeAndRtInfos(23, @a, @b); SELECT @a, @b;查看全部
-
1.创建带有IN和OUT参数的存储过程 DELIMITER // CREATE PROCEDURE rmUserAndRtUserNums(IN p_id INT UNSIGNED, OUT userNums INT UNSIGNED) BEGIN DELETE FROM users WHERE id = p_id; SELECT count(id) FROM users INTO userNums; END // DElIMITER ; SEELCT COUNT(id) FROM users; CALL rmUserAndRtUserNums(27, @nums); SELECT @nums; //@nums - 就是用户变量 DECLARE声明的变量都是在BEGIN与END之间,是局部变量 SET @i = 7; //通过@或SET设置的变量称为用户变量查看全部
-
1.创建带有INT类型参数的存储过程 DESC users; DELIMITER // CREATE PROCEDURE removeUserByID(IN id INT UNSIGNED) BEGIN DELETE FROM users WHERE id = id; END // DELIMITER ; CALL removeUserById(3); //参数名称最好不要和表中的字段相同 SELECT * FROM users; //全删除了 DELIMITER // CREATE PROCEDURE removeUserById(IN p_id INT UNSIGNED) BEGIN DELETE FROM users WHERE id = p_id; END // DELIMITER ; SELECT * FROM users; CALL removeUserById(22); SELECT * FROM users WHERE id = 22; 2.修改存储过程 ALTER PROCEDURE sp_name [characteristic] COMMENT 'string' |{CONTAINS SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA} |SQL SECURITY{DEFINER|INVOKER} 3.删除存储过程 DROP PROCEDURE [IF EXISTS] sp_name; DROP removeUserById;查看全部
举报
0/150
提交
取消