mysql存储过程加速
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 首先看一个存储过程,这个存储过程是为了构造数据使用的。当然贴出来的存储过程简化了一些不必要的表结构。 CREATE PROCEDURE modifyRootEntry() BEGIN DECLARE done INT DEFAULT FALSE; DECLARE u
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
首先看一个存储过程,这个存储过程是为了构造数据使用的。当然贴出来的存储过程简化了一些不必要的表结构。
CREATE PROCEDURE modifyRootEntry()
BEGIN
DECLARE done INT DEFAULT FALSE;
DECLARE userId INT;
DECLARE userIdIter CURSOR FOR SELECT DISTINCT user_id from entries;
OPEN userIdIter;
read_loop: LOOP
FETCH userIdIter INTO userId;
IF done THEN
LEAVE read_loop;
END IF;
INSERT INTO entries (id, name, user_id, parent_id) VALUES(0, 'root_parent', userId, 0);
UPDATE entries SET parent_id=0 where user_id=userId AND name='file_root' AND parent_id is NULL;
END LOOP;
CLOSE userIdIter;
END;
CREATE PROCEDURE modifyRootEntry()
BEGIN
DECLARE done INT DEFAULT FALSE;
DECLARE userId INT;
DECLARE userIdIter CURSOR FOR SELECT DISTINCT user_id from entries;
START TRANSACTION; // here !
OPEN userIdIter;
read_loop: LOOP
FETCH userIdIter INTO userId;
IF done THEN
LEAVE read_loop;
END IF;
INSERT INTO entries (id, name, user_id, parent_id) VALUES(0, 'root_parent', userId, 0);
UPDATE entries SET parent_id=0 where user_id=userId AND name='file_root' AND parent_id is NULL;
END LOOP;
CLOSE userIdIter;
COMMIT;// here !
END;
UPDATE entries SET parent_id=0 where user_id=userId AND name='file_root' AND parent_id is NULL;
CREATE PROCEDURE modifyRootEntry()
BEGIN
DECLARE done INT DEFAULT FALSE;
DECLARE userId INT;
DECLARE userIdIter CURSOR FOR SELECT DISTINCT user_id from entries;
START TRANSACTION; // here !
OPEN userIdIter;
read_loop: LOOP
FETCH userIdIter INTO userId;
IF done THEN
LEAVE read_loop;
END IF;
INSERT INTO entries (id, name, user_id, parent_id) VALUES(0, 'root_parent', userId, 0);
END LOOP;
UPDATE entries SET parent_id=0 where user_id=userId AND name='file_root' AND parent_id is NULL; // here!
CLOSE userIdIter;
COMMIT;// here !
END;
CREATE PROCEDURE pFastCreateNums (cnt INT UNSIGNED)
BEGIN
DECLARE s INT UNSIGNED DEFAULT 1;
TRUNCATE TABLE Nums;
INSERT INTO Nums SELECT s;
WHILE s*2
BEGIN
INSERT INTO Nums SELECT a+s FROM Nums;
SET s = s*2;
END;
END WHILE;
END;

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



The main role of MySQL in web applications is to store and manage data. 1.MySQL efficiently processes user information, product catalogs, transaction records and other data. 2. Through SQL query, developers can extract information from the database to generate dynamic content. 3.MySQL works based on the client-server model to ensure acceptable query speed.

VS Code To switch Chinese mode: Open the settings interface (Windows/Linux: Ctrl, macOS: Cmd,) Search for "Editor: Language" settings Select "Chinese" in the drop-down menu Save settings and restart VS Code

The main uses of Linux include: 1. Server operating system, 2. Embedded system, 3. Desktop operating system, 4. Development and testing environment. Linux excels in these areas, providing stability, security and efficient development tools.

Although Notepad cannot run Java code directly, it can be achieved by using other tools: using the command line compiler (javac) to generate a bytecode file (filename.class). Use the Java interpreter (java) to interpret bytecode, execute the code, and output the result.

Visual Studio Code (VSCode) is a cross-platform, open source and free code editor developed by Microsoft. It is known for its lightweight, scalability and support for a wide range of programming languages. To install VSCode, please visit the official website to download and run the installer. When using VSCode, you can create new projects, edit code, debug code, navigate projects, expand VSCode, and manage settings. VSCode is available for Windows, macOS, and Linux, supports multiple programming languages and provides various extensions through Marketplace. Its advantages include lightweight, scalability, extensive language support, rich features and version

VS Code The methods of multi-line commenting are: 1. Shortcut keys (Ctrl K C or Cmd K C); 2. Manually add comment symbols (/ /); 3. Select menu ("Comment Block"); 4. Use extensions; 5. Recursive comments (/* /) and block comments ({/ and /}). Multi-line comments help improve code readability and maintainability, but overuse should be avoided.

To set the shortcut keys for Sublime Text, follow these steps: Open the shortcut key settings file Key Bindings - User. Add shortcut key settings using the format { "keys": ["key combination"], "command": "command" }. Save changes. Reload the shortcut key settings for the changes to take effect.

The relationship between SQL and MySQL is the relationship between standard languages and specific implementations. 1.SQL is a standard language used to manage and operate relational databases, allowing data addition, deletion, modification and query. 2.MySQL is a specific database management system that uses SQL as its operating language and provides efficient data storage and management.
