【Oracle和MySQL以及DM8】主流数据库Oracle以及MySQL批量生成数据1kw
在Oracle和MySQL中批量生成1000万条(1kw)数据的方法如下:
Oracle:
-- 创建表
CREATE TABLE test_data (
id NUMBER PRIMARY KEY,
data VARCHAR2(100)
);
-- 批量插入数据
DECLARE
CNT NUMBER := 1;
BEGIN
WHILE CNT <= 10000000 LOOP
INSERT INTO test_data (id, data) VALUES (CNT, 'Data' || CNT);
COMMIT;
CNT := CNT + 1;
END LOOP;
END;
MySQL:
-- 创建表
CREATE TABLE test_data (
id INT AUTO_INCREMENT PRIMARY KEY,
data VARCHAR(100)
) ENGINE=InnoDB;
-- 批量插入数据
DELIMITER //
CREATE PROCEDURE insert_data()
BEGIN
DECLARE cnt INT DEFAULT 1;
WHILE cnt <= 10000000 DO
INSERT INTO test_data (data) VALUES (CONCAT('Data', cnt));
SET cnt = cnt + 1;
END WHILE;
END; //
DELIMITER ;
-- 调用存储过程
CALL insert_data();
DM8(达梦数据库):
-- 创建表
CREATE TABLE test_data (
id INT PRIMARY KEY,
data VARCHAR(100)
);
-- 批量插入数据
DO
$BODY$
DECLARE
cnt integer := 1;
BEGIN
WHILE cnt <= 10000000 LOOP
INSERT INTO test_data (id, data) VALUES (cnt, 'Data' || cnt);
COMMIT;
cnt := cnt + 1;
END LOOP;
END;
$BODY$;
请注意,这些操作可能需要一定的时间来完成,并且可能会影响数据库的性能。在生产环境中,应该在系统负载较低时进行此类操作。
评论已关闭