日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql自动添加多条数据_用一条mysql语句插入多条数据

發布時間:2024/7/19 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql自动添加多条数据_用一条mysql语句插入多条数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這篇文章主要介紹了在mysql中使用一條sql語句插入多條數據,效率非常高,但是原理其實很簡單,希望對大家有所幫助

假如有一個數據表A:

id?name?title?addtime

如果需要插入n條數據 :

$time= time();

$data = array(

array(

'name'=>'name1','title'=>'title1','addtime'=>$time;

),

array(

'name'=>'name2','title'=>'title2','addtime'=>$time;

),

array(

'name'=>'name3','title'=>'title3','addtime'=>$time;

),

...

array(

'name'=>'nameN','title'=>'titleN','addtime'=>$time;

),

);

之前我的想法會是,通過數據構造多條插入語句,循環調用 。如:

$sql1 = "INSERT INTO `A`(`name`,`title`,`addtime`)VALUES ('name1','title1','".$time."')";

$sql2 = "INSERT INTO `A`(`name`,`title`,`addtime`)VALUES ('name2','title2','".$time."')";

......

$sqlN = "INSERT INTO `A`(`name`,`title`,`addtime`)VALUES ('nameN','titleN','".$time."')";

之后發現了sql的insert語句可以一次插入多條:

$sql = "INSERT INTO `A`(`name`,`title`,`addtime`)VALUES ('name1','title1','".$time."'),";

$sql .= "('name2','title2','".$time."'),";

$sql .= "('name3','title3','".$time."'),";

.....

$sql .= "('nameN','titleN','".$time."')";

通過","號將多個數據分隔開來,就可以能過一條sql操作來解決多個數據的插入,之前試驗時,在插入數據條數為30的情況下,一次插入與多次插入同樣數據的速度相比,一次插入快了近9倍。同時,因為插入操作只有一次,所以也類似事務操作,插入失敗則全失敗,插入成功則全成功,使數據的管理更加方便。所以,如果有多條數據需要插入同一個表的,盡量用這種方式。

以前插入多條數據庫記錄時,常這么寫:

$b = 14;

for($a=0;$a<100;$a++){

$sql = " INSERT INTO `roles` (`uid`,`rid`) VALUES (".$a.",".$b.")";

mysql_query($sql);

}

但這種寫法效率低下,需要多次執行sql語句。如果你用過phpmyadmin導入數據,其實你會發現,上面的語句其實可以這么寫

INSERT INTO `roles` (`uid`,`rid`) VALUES

(534,14),(535,14),(536,14),(537,14),(539,14)

所以原來的代碼可以這么改寫

$b = 14;

for($a=0;$a<100;$a++){

if($a==0)

$sql = "INSERT INTO `roles` (`uid`,`rid`) VALUES (".$a.",".$b.")";

else

$sql. = ",(".$a.",".$b.")";

}

mysql_query($sql);

總結

以上是生活随笔為你收集整理的mysql自动添加多条数据_用一条mysql语句插入多条数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。