首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql中一条insert语句批量插入多条记录

这种方式只能够一次插入一条数据,要想插入多条数据,就得多次调用此sql语句,意味着多次与数据库建立连接。...但是这样一来,就会增加服务器的负荷,因为,执行每一次SQL服务器都要同样对SQL进行分析、优化等操作。幸好MySQL提供了另一种解决方案,就是使用一条INSERT语句来插入多条记录。...这并不是标准的SQL语法,因此只能在MySQL中使用。...])); 可以看到,和原来的常规INSERT语句的区别,仅仅是在VALUES 后面增加值的排列,每条记录之间用英文输入法状态下的逗号隔开,是不是so easy。...建议: 在程序中,插入批量数据时,最好使用这种通过一条INSERT语句来一次性插入的方式。这样可以避免程序和数据库建立多次连接,从而增加服务器负荷。

5.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用HUE执行多条SQL

    因此,当我们执行如下的SQL的时候,就会报错: 会提示表不存在(图中的错误是Impala查询系统抛出的日志),因为HUE默认只会执行最后一条SQL。那么,如果我们要执行多条SQL怎么办呢?...很简单,只要选中对话框中的所有SQL,然后点击运行就可以顺序执行所有的SQL,如下所示: image.png 我们可以看到,3条SQL都被成功执行了,在“运行”按钮的上方可以看到显示的是3/3,表示执行进度...student(id int, name string) insert into student values(1001,'Xiaoming') select * from student,因此当我们要批量执行多条...值得注意的是,这些批量执行的SQL,都是在同一个session内完成的。也就是说,如果在第一条SQL中设置了session级别的参数,会影响后面执行的SQL。...例如,在impala中,我们就可以通过该方法来设置SQL的提交队列: 这里,HUE并没有自动地顺序执行完所有的SQL,而是在第一条执行完成后就停止了。

    2.2K40

    Hue执行多条语句问题

    由于没有仔细看hue页面上的历史执行记录,当时很困惑,为什么drop掉表后,创建表还会出现表已经存在的情况呢?...之前有遇到impala-shell中多次执行drop和create语句,由于impalad更新元数据有几秒的延迟,所以会出现 Tablealready exists的情况,于是加上了 setSYNC_DDL...卡了一段时候之后,回头看了下hue的历史记录,发现drop table语句根据没有执行。这才猛然想起来,自己执行的时候没有选中所有语句,HUE提交SQL默认是只会执行最后一条SQL。...另外,SQL结尾处如果没有显式地增加分号结尾,那么即使全部选中之后再执行,Hue也会将三个SQL当成一条SQL来执行,而不是按照换行符进行分割。...因此当我们要批量执行多条SQL的时候,一定要在每条SQL的结尾处加上分号。

    2.5K30

    MySQL避免插入重复记录的方法

    mysql在存在主键冲突或者唯一键冲突的情况下,根据插入策略不同,一般有以下三种避免方法。...| 5 | | 3 | 3 | qwewqe | 3 | +----+------+--------+------+ 3 rows in set (0.00 sec) 插入一条与记录...,新增了一条id=4,c1=3的记录. replace into语句执行完会返回一个数,来指示受影响的行的数目。...KEY中出现重复值,则在出现重复值的行执行UPDATE;如果不会导致重复的问题,则插入新行,跟普通的insert into一样。...使用insert into,你必须具有insert和update权限 如果有新记录插入,则受影响行的值显示1;如果原有的记录被更新,则受影响行的值显示2;如果记录被更新前后值是一样的,则受影响行数的值显示

    2.3K51

    MySQL 批量插入记录报 Error 1390 (HY000)

    1.背景 Golang 后台服务使用 GORM 实现与 MySQL 的交互,在实现一个通过 Excel 导入数据的接口时,使用 Save 方法一次性插入大量记录(>1w)时报了如下错误: Error 1390...3.分批插入 既然不允许一次插入太多记录,那么可以改为分批插入,而不是一次性插入所有数据。 // 待插入记录。...不知道你有没有疑问,我这里分批插入每批记录数是 1000,那可以采用 2000 或者其他数量吗?每批插入记录数的上限是多少呢? 带着这个疑问,请继续往下看。 4.一次最多能插入多少条记录?...MySQL 服务端之所以报 Error 1390 (HY000) 错误,直接原因是一次插入过多的记录,但更深层次的原因是 MySQL SQL 语句的占位符数量有上限,最大值为 16bits 无符号整数的最大值...为什么插入语句会涉及到占位符呢? 一条 SQL 在 DB 接收到最终执行完毕返回,大致的过程如下: 词法和语义解析。 优化 SQL 语句,制定执行计划。 执行并返回结果。

    78710
    领券