向SqlServer資料庫插入資料

來源:互聯網
上載者:User

標籤:style   blog   http   color   os   使用   ar   strong   檔案   

原文:向SqlServer資料庫插入資料

  1. Insert Values
  2. Insert Select
  3. Insert Exec
  4. Select Into
  5. Bulk Insert

Insert Values是最常用的一種插入資料的方式,基本文法如下,表名之後可以指定目標列的名稱,這種顯式的指定目標列的名稱是可選的,但是這種做法的好處是對語句的列值列名之間的關聯關係進行控制,而不必單純的依賴定義表時

各個列出現的順序

 

INSERT INTO dbo.DimDate        ( DataKey ,          Year ,          Qu ,          QuCN ,          Month ,          MonthCN ,          Ten ,          TenCN ,          Week ,          WeekDay ,          Day ,          Date        )VALUES  ( 0 , -- DataKey - int          0 , -- Year - int          0 , -- Qu - int          ‘‘ , -- QuCN - varchar(20)          0 , -- Month - int          ‘‘ , -- MonthCN - varchar(20)          0 , -- Ten - int          ‘‘ , -- TenCN - varchar(20)          0 , -- Week - int          ‘‘ , -- WeekDay - varchar(20)          0 , -- Day - int          ‘2014-09-23 13:34:16‘  -- Date - datetime        )

 確定列值的優先順序順序:給定的值》預設值》Null

Sql2008增強了Values功能,允許在一條語句中指定由逗號隔開的多條記錄

INSERT INTO dbo.Table_1  ( ID ) VALUES  ( 0 ),( 1 ),( 2 )

 使用Values構建虛擬表

SELECT * FROM (VALUES  ( 0 ),( 1 ),( 2 )) AS a(id)

 Insert Select

 Insert Select 將一組由Select查詢返回的結果行插入到目標表中(目標表是已經存在的表,這一點和Select Into有區別)

INSERT INTO dbo.Table_1 SELECT * FROM dbo.Table_2

 Insert Exec

  Insert Exec 語句可以把預存程序或動態Sql批處理返回的結果集插入到目標表

Select Into

 Select Into的作用是建立一個目標表,並用返回的結果集填充它,不能用這個語句向已經存在的表中插入資料,

當指定的目標表是暫存資料表時自動建立一個暫存資料表,指定為使用者表時建立一個使用者表,

Select Into 會複製來源表的基本結構(包括列名、資料類型、是否允許NUll以及IDentity屬性),不會複製的三樣東西(約束、索引、觸發器)

Select into的另一個優點:如果資料庫的屬性沒有設定成完成復原模式,Select into 就會按照最小日誌記錄模式來執行操作

Bulk Insert

 這種方式用的比較少,用於將檔案中的資料匯入一個已經存在的表

 樣本本例從指定的資料檔案中匯入訂單詳細資料,該檔案使用豎杠 (|) 字元作為欄位結束字元,使用 |/n 作為行終止符。

BULK INSERT Northwind.dbo.[Order Details]   FROM ‘f:/orders/lineitem.tbl‘     WITH (        FIELDTERMINATOR = ‘|‘,                 ROWTERMINATOR = ‘|/n‘         ) 

 

向SqlServer資料庫插入資料

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.