1
由於許多原因,我必須在sqlexpress數據庫中使用鏈接的csv文件。 Col1始終是唯一的,但數據會根據當前登錄名進行週期性更改。使用schema.ini以某種方式鏈接到csv的主鍵?
有沒有辦法使用schema.ini或其他方式以某種方式設置主鍵?
由於許多原因,我必須在sqlexpress數據庫中使用鏈接的csv文件。 Col1始終是唯一的,但數據會根據當前登錄名進行週期性更改。使用schema.ini以某種方式鏈接到csv的主鍵?
有沒有辦法使用schema.ini或其他方式以某種方式設置主鍵?
您不能在schema.ini中定義主鍵或任何其他索引。
您也不能有一個視圖大膽選擇鏈接服務器中的所有數據,並在其上定義唯一索引,因爲該視圖必須是with schemabinding
才能啓用索引,並且這不適用於跨數據庫對象。
唯一可能的解決方案seems to be創建與主鍵選擇所有數據到表中的用戶定義的函數:
create function dbo.csv_primary()
returns @result table (col1 int not null primary key, col2 varchar(255))
as
begin
insert into @result(col1, col2)
select col1, col2 from CSVServer.[folder]..[file#csv];
return;
end;
多步表值函數顯然會殺死的性能,但那麼,查詢csv文件時會獲得多少性能。
感謝您的幫助信息 – datatoo 2011-06-13 12:42:18