當前位置:首頁 » 存儲配置 » mysql存儲過程批量插入數據

mysql存儲過程批量插入數據

發布時間: 2022-05-03 06:25:09

『壹』 怎麼用用mysql命令行快速插入一千條數據

先介紹一個關鍵字的使用:
delimiter 定好結束符為"$$",(定義的時候需要加上一個空格) 然後最後又定義為";", MySQL的默認結束符為";"
如何通過mysql命令行批量插入100條數據呢,可以在代碼里實現,也可以通過命令行,也就是通過存儲過程:

[java] view plain
delimiter $$
create procere myproc ()

begin
declare num int ;
set num = 1 ;
while num < 100 do
insert into emp (id, `name`, sex)
values
('', concat("name", num), 1) ;
set num = num + 1 ;
end
while ;

『貳』 mysql中如何批量插入數據

update 表名 set type=true where name>=1 and name <=100

『叄』 怎麼寫存儲過程,向資料庫中批量插入數據

  1. 用循環語句生成欄位值insert

  2. SQL 如下:

createprocereInsertTest

as

begin

declare@iint

declare@svarchar(20)

set@i=1

while@i<=100

begin

select@s=cast(@iASvarchar(20))

insertintotest(A,B,C,D)VALUES('a'+@s,'b'+@s,'ccccc','ddddd')

SET@i=@i+1

end

end

『肆』 c#中往mysql里批量插入上萬條數據,有比較高效的方法嗎

首先, 插入上萬條數據,對於資料庫來說並不是「很大」的工作量,一般配置的筆記本電腦都可以在1分鍾內完成。 所以最簡單、最靈活的辦法還是寫SQL語句。

如果不希望DB編譯器每次執行都編譯SQL的話,可以使用存儲過程,直接調用,性能上會好很多。也比較簡單。
(幾萬條數據怎麼地也得要時間去處理,所以不可能特別快的。)

如果由於各種原因,導致這個插入還是很慢, 而且你的MYSQL又是5.0以上版本的話,可以使用BulkCopy來進行批量操作。
BulkCopy的原理就是Client直接把一個數組(DataTable)傳給DB,然後傳入表名,所有的編譯、操作都由DB自己完成,效率很高。
引用MySql.Data.dll , 調用MysqlBulkCopy函數即可。

這個函數在處理海量數據插入的時候效率尤為明顯, 小量數據反而沒什麼優勢,而且由於傳入的DataTable格式必須和表的欄位一模一樣(空的列也要傳進去),導致C#要寫很多代碼來構造這個數組,所以要你自己權衡用還是不用。
我在自己的電腦上批量插入一億條數據,Insert寫法大概需要1小時,BulkCopy大概只需要5分鍾。

『伍』 mysql存儲過程怎樣批量插入數據

一下代碼運行通過:

delimiter$$;
createprocerelucia_proc16(countint)
begin
DECLAREname_procVARCHAR(20)CHARACTERSETutf8;
DECLAREsex_procVARCHAR(4)CHARACTERSETutf8;
DECLAREage_procINT(10);
DECLAREclass_procVARCHAR(20)CHARACTERSETutf8;
DECLAREAddr_procVARCHAR(50)CHARACTERSETutf8;
DECLAREiINT;
seti=1;
setsex_proc='女';
setage_proc=20;
setclass_proc='山治班';
setAddr_proc='北京市朝陽區';
whilei<countdo
setname_proc=CONCAT('露西亞',i);
insertintostudents(Name,Sex,age,class,Addr)values(name_proc,sex_proc,age_proc,class_proc,Addr_proc);
seti=i+1;
endwhile;
end
$$;
delimiter;

代碼功能:

傳入一個行數,控制插入多少條數據

運行效果:

『陸』 mysql批量插入數據

不用INSERTINTO難不成用UPDATE,數據導入3000條貌似不多吧


你要這么一說,還真有點難度了,因為數據類型不一樣,還不能用數組,貌似沒有什麼絕竅

不過你可以直接用EXCEL中的CONCATENATE()函數把你的數據轉換成SQL輸入語句

然後把這個輸入語句腳本放到一個文件中,如Iinsert.sql

接著用類似下面的代碼把這個腳本導入MYSQL執行

php">!$db->select_db('databasename')&&exit($db->error());//選擇當前資料庫
if(!file_exists("./insert.sql"))exit("載入"insert.sql"失敗!");
$import_sql=file_get_contents("pms.sql",dirname(__FILE__));//打開SQL文件並讀取
$explode=explode(";",$import_sql);
$cnt=count($explode);
for($i=0;$i<$cnt;$i++){
!$db->query($explode[$i])&&exit("導入數據表失敗!");
}
echo"已建立數據表...<br><br> ";

『柒』 MySQL實現創建存儲過程並循環添加記錄的方法

本文實例講述了MySQL實現創建存儲過程並循環添加記錄的方法。分享給大家供大家參考,具體如下:
先創建,然後調用:
--
創建存儲過程
DELIMITER;//
create
procere
myproc()
begin
declare
num
int;
set
num=1;
while
num
<=
24
do
insert
into
t_calendar_hour(hourlist)
values(num);
set
num=num+1;
end
while;
commit;
end;//
--
調用存儲過程
CALL
myproc();
PS:這里再為大家推薦2款常用的sql在線工具供大家參考使用(包含SQL語句用法說明):
SQL在線壓縮/格式化工具:
http://tools.jb51.net/code/sql_format_compress
SQL代碼在線格式化美化工具:
http://tools.jb51.net/code/sqlcodeformat
更多關於MySQL相關內容感興趣的讀者可查看本站專題:《MySQL存儲過程技巧大全》、《MySQL常用函數大匯總》、《MySQL日誌操作技巧大全》、《MySQL事務操作技巧匯總》及《MySQL資料庫鎖相關技巧匯總》
希望本文所述對大家MySQL資料庫計有所幫助。

『捌』 如何使用MySQL實現批量插入數據

用存儲過程,寫個循環給你個我以前寫的看看
begin
declare i int;
declare b int;
declare c int;
set @i=2;
set @b=6;
set @c=0;
set @stmt = concat('insert into t_j_goods_name (id,`code`,`name`)
values(?,?,(select distinct `a` from sheet1 limit ?, 1))');
while @i<442 do
prepare s1 from @stmt;

execute s1 using @b,@i,@c;

deallocate prepare s1;
set @i=@i+1,@b=@b+1,@c=@c+1;

end while;
end

『玖』 mysql批量插入測試數據問題

拜託,你這個是創建存儲過程的語句,而不是執行的語句,執行要用下面的語句
CALL dowhile

『拾』 mysql中能不能運行一次insert插入多條數據

可以:

這樣就行了,給你舉個例子:
INSERT INTO `mytest`.`hello` (
`id` ,
`name`
)
VALUES (
NULL , 'qq'
), (
NULL , 'ww'
), (
NULL , 'ee'
), (
NULL , 'rr'
), (
NULL , 'tt'
);

熱點內容
無法啟用ftp服務 發布:2024-11-17 20:33:54 瀏覽:838
安卓平板的管理工具在哪裡 發布:2024-11-17 20:21:48 瀏覽:522
淘寶整機怎麼配置 發布:2024-11-17 20:21:05 瀏覽:291
linux如何安裝源碼包 發布:2024-11-17 20:15:40 瀏覽:198
航宇編程 發布:2024-11-17 20:14:06 瀏覽:591
175平台伺服器搭建 發布:2024-11-17 19:24:36 瀏覽:559
win7旗艦版sql2005 發布:2024-11-17 19:18:22 瀏覽:658
伺服器如何改成實例 發布:2024-11-17 19:16:08 瀏覽:96
cc中怎麼編譯運行程序 發布:2024-11-17 19:16:03 瀏覽:242
易語言數據存儲 發布:2024-11-17 19:00:22 瀏覽:856