1.概述
我們經常會遇到這樣的要求:使用者給發過來一些資料,要我們直接給存放到資料庫裡面,有的是insert,有的是update等等,少量的資料我們可以採取最原始的辦法,也就是在sql裡面用insert into來實現,但是如果有幾十條幾百條甚至上千條資料的時候繼續寫單獨的sql語句的話那就慘了,其實有兩種簡單的方法;
第一,將excel資料整理好了之後,通過sql的匯入功能直接導進資料庫,但是得保證資料庫欄位和excel的字段一致。
第二,通過excel來生成對應的sql語句,直接將sql語句複製到分析器裡面執行即可。
本文講述第二個方法。
2.正文
把**內容放到notepad++裡,吧空格替換成 ','
再把內容進行替換 \n 替換為 ' union all\nselect' (正規表示式)
注意:notepad++可能不支援,可以換fiddler script 試試
替換後
select 'xiaolin','小林','123','男','14' union all
select 'xiaoming','小明','123','女','null' union all
select 'xiaohong','小紅','123','null','14'
最後就加上欄位名(替換的方式一樣)
insert into user(loginname,username,password,***,age)
select 'xiaolin','小林','123','男','14' union all
select 'xiaoming','小明','123','女','null' union all
select 'xiaohong','小紅','123','null','14'
mysql快速匯入資料方式
2.具體操作步驟 innodb flush log at trx commit 設定為 0,log buffer將每秒一次地寫入log file中,並且log file的flush 刷到磁碟 操作同時進行.該模式下,在事務提交的時候,不會主動觸發寫入磁碟的操作。innodb flush log at...
SQL匯入資料
exec sp addlinkedserver server dbmes 鏈 接伺服器別名 srvproduct provider sqloledb datasrc 192.168.5.139 要訪問的的資料庫所在的伺服器的ip goexec sp addlinkedsrvlogin dbmes 鏈...
SQL快速生成連續整數
很多時候需要用到連續的id進行資料對比,如判斷是否連續等問題。那麼,生成連續整數的方式有多種,首先容易想到的是逐步迴圈,如果想生成2kw條記錄,則需要迴圈2kw次進行插入,那麼有沒有其他方式呢,效率相對於逐步加一有多少提公升呢。首先建立一張存放記錄的表,插入1條記錄。create table dbo...