SQL Server批量插入數(shù)據(jù)提示錯(cuò)誤:INSERT語(yǔ)句中行值表達(dá)式的數(shù)目超出了1000行值的最大允許值問(wèn)題的解決辦法
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
:SQL Server批量插入數(shù)據(jù)提示錯(cuò)誤:insert語(yǔ)句中行值表達(dá)式的數(shù)目超出了1000行值的最大允許值問(wèn)題的解決辦法 sql語(yǔ)句類似于這種: insert into test(name) values (1),(2),(3),(4),(5),(6),...(1001) --這里是1001條記錄 那么如何解決這個(gè)問(wèn)題呢: 第一種思路:拆分把 sql 分批插入,不要大于1000條數(shù)據(jù)就行。 第二種思路:使用表復(fù)制的方式,將要插入的數(shù)據(jù)變成臨時(shí)表打破這個(gè)限制格式insert into 表名(字段1,字段2......) select 臨時(shí)表名.字段1,臨時(shí)表名.字段2...... from (values(行1數(shù)據(jù)),(行2數(shù)據(jù))......) as 臨時(shí)表名(字段1,字段2......) 具體實(shí)現(xiàn):原來(lái)的sqlinsert into test(name) values (1),(2),(3),(4),(5),(6),...(1001) 修改后的sqlinsert into test (name) select t.name from (values ('1'),('2'),('3'),('4'),('5'),('6'),...('1001')) as t(name) 如果要批量插入多個(gè)字段的sqlinsert into test (name,sex) select t.name,t.sex from (values ('1',‘男’),('2',‘男’),('3',‘男’),('4',‘男’),('5',‘男’),('6',‘男’),...('1001',‘男’)) as t(name,sex) 注意:from后面的臨時(shí)表的字段和數(shù)據(jù)的字段要對(duì)應(yīng)。 該文章在 2023/12/10 0:33:16 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |