將excel裡面的數據直接生成sql語句

將excel裡面的數據直接生成sql語句

4 人贊了文章

將excel裡面的數據直接生成sql語句

excel表格中有A、B、C三列數據,希望導入到資料庫users表中,對應的欄位分別是name,sex,age 。

在你的excel表格中增加一列,利用excel的公式自動生成sql語句,方法如下:

1、增加一列(D列)

2、在第一行的D列,就是D1中輸入公式: =CONCATENATE("insert into users (name,sex,age) values (",A1,",",B1,",",C1,");")

3、此時D1已經生成了如下的sql語句: "insert into users (name,sex,age) values (ls,女,24)";

4、將D1的公式複製到所有行的D列

5、此時D列已經生成了所有的sql語句

6、把D列複製到一個純文本文件中

7、去掉SQL語句的雙引號

=============================== 華麗的分割線 =============================================

我們經常會遇到這樣的要求:用戶給發過來一些數據,要我們直接給存放到資料庫裡面,有的是Insert,有的是Update等等,少量的數據我們可以採取最原始的辦法,也就是在SQL裡面用Insert

into來實現,但是如果有幾十條幾百條甚至上千條數據的時候繼續寫單獨的SQL語句的話那就慘了,其實有兩種簡單的方法;

第一,將Excel數據整理好了之後,通過SQL的導入功能直接導進資料庫,但是得保證資料庫欄位和Excel的欄位一致。

第二,通過Excel來生成對應的SQL語句,直接將SQL語句複製到分析器裡面執行即可,本文就說一下如何來實現這第二種辦法。

首先看下圖,我們的目的就是將這20條數據Insert到資料庫裡面去,一條兩條的話可以自己寫Insert語句,這裡有20條數據,總不能完全手寫20條語句出來吧,

很顯然,不能一條一條的去寫SQL了,太多了,這裡還只有20條,如果是200條,2000條數據呢?

INSERTINTOTableName(Column1,Column2,Column3)VALUES(Value1,Value2,Value3)

寫出一條語句之後,直接從頭拉到尾,你會發現所有的數據都有對應的腳本了,這個時候你便可以直接複製到分析器,按一下"F5",OK,你的任務完成了。

因為在公式裡面,所以有時候那些語句會變化,當你生成這些語句之後,你可以選擇性的粘貼為數值,然後再放到SQL裡面去執行,如下:

好了,以上是我的一點兒小經驗,希望對大家有用


推薦閱讀:

SQL反模式:SQL 建模與使用指南
配置SQL Server 2000選項
SQLZOO練習記錄和總結
裝神必備:資料庫設計的範式
問SQL Server2000中地日期格式是不是實際存入地是整數類型地數值呢?那有個整

TAG:Excel使用 | MicrosoftExcel | SQL |