开发者社区 > 数据库 > 数据仓库 > 正文

adb不支持创建存储过程,有没有类似以下mysql这样快速插入大数据量的sql

adb不支持创建存储过程,有没有类似以下mysql这样快速插入大数据量的sql

-- 创建表 DROP TABLE IF EXISTS s1; CREATE TABLE s1(num BIGINT(20)); -- 创建存储过程 DROP PROCEDURE IF EXISTS sum1; delimiter $$ CREATE PROCEDURE sum1() BEGIN DECLARE i INT DEFAULT 1;

WHILE i <= 10000 DO
	INSERT INTO s1 (num) values(i);
	SET i = i + 1;
END WHILE;

END$$ delimiter ; -- 调用存储过程 CALL sum1();

展开
收起
cuicuicuic 2023-05-10 14:47:05 210 0
2 条回答
写回答
取消 提交回答
  • 参考文档:https://help.aliyun.com/document_detail/123582.html?spm=a2c4g.123583.0.0.1eac5e37DZ8szD,此回答整理自钉群“云数据仓库ADB-开发者群”

    2023-05-10 15:49:55
    赞同 展开评论 打赏
  • 随心分享,欢迎友善交流讨论:)

    对于ADB数据库,可以使用以下方式来快速插入大数据量:

    1、使用INSERT INTO语句插入多条数据,例如:

    INSERT INTO table_name (column1, column2, column3) VALUES

    (value1, value2, value3),

    (value4, value5, value6),

    (value7, value8, value9),

    ......;

    2、使用LOAD DATA LOCAL INFILE语句从文件中读取数据并插入表中,例如:

    LOAD DATA LOCAL INFILE 'data.txt' INTO TABLE table_name

    FIELDS TERMINATED BY ',' LINES TERMINATED BY '

    ';

    其中,data.txt为包含数据的文本文件,以逗号分隔,一行表示一条数据。

    需要注意的是,在使用LOAD DATA LOCAL INFILE语句时,需要在adb的连接参数中添加local_infile=1,以允许从本地文件加载数据。

    以上两种方式都可以快速插入大数据量,但并不需要使用存储过程。如果您需要执行复杂的数据操作,可以使用函数、触发器等ADB支持的其他特性来实现。

    2023-05-10 15:24:33
    赞同 展开评论 打赏

相关产品

  • 云原生数据仓库 AnalyticDB PostgreSQL版
  • 热门讨论

    热门文章

    相关电子书

    更多
    SQL Server在电子商务中的应用与实践 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载