欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL Server Bulk Insert 只需要部分字段時的方法

 更新時間:2011年10月07日 00:19:37   作者:  
上午在找Bulk Insert的資料看,還轉(zhuǎn)了一篇。不巧今天下午就用上了,我遇到的需求是導(dǎo)出表A中的N個字段,然后導(dǎo)入到表B的N個字段當(dāng)中。
根據(jù)一般做法的話,導(dǎo)出部分字段時沒有辦法生成格式化XML文件,所以導(dǎo)入時就沒有辦法格式化導(dǎo)入數(shù)據(jù)。

我想到兩點,1.手工修改格式化XML文件,2.創(chuàng)造一個能生成格式化XML文件的中間對象。

在MSDN中尋找方法時,突然想到可以使用視圖來做中間對象,于是就搭一個測試下。以下是測試記錄:

復(fù)制代碼 代碼如下:

USE master
GO
CREATE DATABASE [db_test]
GO
USE db_test
GO
CREATE TABLE dbo.T_test(
ID [int] IDENTITY(1,1) NOT NULL,
Code varchar(10) ,
Name varchar(100) ,
Memo nvarchar(500) ,
Memo2 ntext ,
PRIMARY KEY (ID)
)
GO
--上面創(chuàng)建的表是源數(shù)據(jù)表,下面創(chuàng)建是要導(dǎo)入數(shù)據(jù)的表,只有源表的三個字段
Select Code, Name,Memo into dbo.T_test2 from dbo.T_test Where 1=2

--需求就是把表T_test中的Code,Name導(dǎo)入到T_test2。
--接下來,就是生成導(dǎo)入目標(biāo)表的格式化XML文件,可是MSDN上說只能生成某個對象的格式化XML文件。
--只好建立一個中間對象來達到目的,這里我創(chuàng)建的是一個視圖。
--視圖只包含需要導(dǎo)入的字段
Create View v_test
AS
Select Code,Name From dbo.T_test2
--然后就是BCP操作
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
EXEC sp_configure 'show advanced options', 0;
RECONFIGURE;
GO
EXEC master..xp_cmdshell 'BCP db_test.dbo.v_test format nul -f C:/v_test_fmt.xml -x -c -T -S MyPC\MyDB'
GO
EXEC master..xp_cmdshell 'BCP "select Code, Name from db_test.dbo.T_test" queryout C:/t_test.data -f C:/v_test_fmt.xml -T -S MyPC\MyDB'
GO

--格式化文件和數(shù)據(jù)文件都有了,就成了.
BULK INSERT db_mgr.dbo.v_t1
FROM N'C:/t_test.data'
WITH
(
FORMATFILE = N'C:/v_test_fmt.xml'
)
GO
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 0;
EXEC sp_configure 'show advanced options', 0;
RECONFIGURE;
GO
Drop Database db_test
GO

環(huán)境是sql2005。

相關(guān)文章

  • SQL Server中修改“用戶自定義表類型”問題的分析與方法

    SQL Server中修改“用戶自定義表類型”問題的分析與方法

    這篇文章主要給大家介紹了關(guān)于SQL Server中修改“用戶自定義表類型”問題的分析與方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • SQL Server無日志恢復(fù)數(shù)據(jù)庫(2種方法)

    SQL Server無日志恢復(fù)數(shù)據(jù)庫(2種方法)

    SQL Server數(shù)據(jù)庫中的日志文件可能會由于一些突發(fā)事件或者失誤造成丟失的嚴(yán)重后果,大家都知道,SQL Server數(shù)據(jù)庫中日志文件是很重要的,所以要及時的將丟失的日志文件給找回來。下文就為大家介紹一種恢復(fù)數(shù)據(jù)庫日志文件的方法。
    2015-08-08
  • SQLServer 常用語句(按功能分)

    SQLServer 常用語句(按功能分)

    簡單的Transact-SQL查詢只包括選擇列表、FROM子句和WHERE子句。它們分別說明所查詢列、查詢的 表或視圖、以及搜索條件等。
    2009-08-08
  • Sql Server事務(wù)語法及使用方法實例分析

    Sql Server事務(wù)語法及使用方法實例分析

    這篇文章主要介紹了Sql Server事務(wù)語法及使用方法,結(jié)合實例形式分析了Sql Server事務(wù)的概念、原理及相關(guān)使用技巧,需要的朋友可以參考下
    2019-02-02
  • SQLServer審計功能配置詳細圖文教程

    SQLServer審計功能配置詳細圖文教程

    這篇文章主要給大家介紹了關(guān)于SQLServer審計功能配置的相關(guān)資料,SQL Server 的審計功能可以捕獲數(shù)據(jù)庫的活動和事件,包括登錄、DDL 和 DML 操作、失敗的登錄嘗試、權(quán)限更改等,需要的朋友可以參考下
    2024-01-01
  • 數(shù)據(jù)庫性能優(yōu)化二:數(shù)據(jù)庫表優(yōu)化提升性能

    數(shù)據(jù)庫性能優(yōu)化二:數(shù)據(jù)庫表優(yōu)化提升性能

    數(shù)據(jù)庫表優(yōu)化包括:設(shè)計規(guī)范化表、消除數(shù)據(jù)冗余、適當(dāng)?shù)娜哂?、增加計算列、索引、主鍵和外鍵的必要性等等,需要了解的朋友可以參考下
    2013-01-01
  • sqlserver數(shù)據(jù)庫移動數(shù)據(jù)庫路徑的腳本示例

    sqlserver數(shù)據(jù)庫移動數(shù)據(jù)庫路徑的腳本示例

    前段時間做過這么一件事情,把原本放在c盤的所有數(shù)據(jù)庫(除了sql server系統(tǒng)文件外)文件Move到D盤,主要是為了方便后續(xù)管理以及減少磁盤I/O阻塞(C,D是2個獨立磁盤)。腳本需輸入2個參數(shù):目標(biāo)數(shù)據(jù)庫名字和目標(biāo)目錄
    2013-12-12
  • 分區(qū)表場景下的 SQL 優(yōu)化

    分區(qū)表場景下的 SQL 優(yōu)化

    這篇文章主要介紹了分區(qū)表場景下的 SQL 優(yōu)化,幫助大家更好的理解和學(xué)習(xí)SQL,感興趣的朋友可以了解下
    2020-08-08
  • MSSQL 游標(biāo)使用 心得

    MSSQL 游標(biāo)使用 心得

    MS-SQL游標(biāo)的使用及理解 windows或DOS的“光標(biāo)”不同,MS-SQL的游標(biāo)是一種臨時的數(shù)據(jù)庫對象,既對可用來旋轉(zhuǎn)儲存在系統(tǒng)永久表中的數(shù)據(jù)行的副本,也可以指向儲存在系統(tǒng)永久表中的數(shù)據(jù)行的指針。
    2009-04-04
  • SQL數(shù)據(jù)庫的高級sql注入的一些知識

    SQL數(shù)據(jù)庫的高級sql注入的一些知識

    這篇文章討論常用的"sql注入"技術(shù)的細節(jié),應(yīng)用于流行的Ms IIS/ASP/SQL-Server平臺。這里探討有關(guān)這種攻擊各種可以注入程序訪問數(shù)據(jù)和數(shù)據(jù)庫防范的方法。
    2010-03-03

最新評論