如何利用SQL Server 產生 Insert into 語法

劉文平 2017/12/04 08:21:15
19486

如何利用SQL Server 產生 Insert into 語法


簡介

利用SQL Server 的工具產生簡單的Insert into 語法

作者

劉文平


如何利用SQL Server 產生 Insert into 語法

  1.    前言

l   在專案的執行過程中,常常遇到要匯出資料,匯出的資料每次又要導入的另外一個環境時候,有時候都要花費一番工夫產出資料。

l   這邊提供兩種方式讓大家可以簡單地順利產生出來。

2.  方法一:利用SQL Server 本身的工具產生

l   於要匯出的資料庫按下【右鍵】,選擇【工作】

  l   選擇【工作】後,再選擇產生指令碼 
  l   即可到發佈的頁面,再按下[Next] 
  l   再選擇要匯出的資料表後,再按下[Next] 
  l   按下[進階按鈕],進行修改匯出的格式 
  l   點選[要編寫指令碼的資料類型],此選項預設為[僅限資料結構],請改選擇[僅限資料],按下[確定]
  l   選擇[儲存至新增查詢視窗]後,按下[Next]
  l   再直接按下[Next]後即可到下一頁面
  l   產出完畢後,直接按[Finish]即可
  l   產出結果
 3 .  方法二:自己寫語法串出Insert Into 語法

因為方法一需要有匯出的權限才可執行,有時候在客戶端,又不一定有權限,又有可能匯出的資料,需要從多張資料表彙整,這時候就得要靠自己串出資料,此方法可讓你隨意串出自己想要的資料:

l   SQL 範例如下 :

SELECT

'INSERT INTO InsuranceNew VALUES

(

''' + a.InsuranceID + ''',''' + CONVERT(VARCHAR(20),a.PL_CODE) + '''

,''' + CONVERT(VARCHAR(20),PremYear) + ''',''' + CONVERT(VARCHAR(20),b.RLHP) + '''

,''' + b.Currency + ''',''' + b.Sex + ''',''' + CONVERT(VARCHAR(20),b.AGE_Type)  + '''

,''' + CONVERT(VARCHAR(20),b.MIN_AMT) + ''',''' + CONVERT(VARCHAR(20),b.MAX_AMT) + '''

,''' + a.CreateID + ''', ''' + CONVERT(VARCHAR(30),a.CreateDate,120) + '''

);'

FROM InsuranceMain a,InsuranceAmt b

where a.InsuranceID=b.InsuranceID

l   產出結果如下:

2017/12/03

劉文平