我有一個從它有NULL
CSV文件導入數據庫表,這樣,當它被導入的字段是空的,而不是它們所包含的字符串值'NULL'
。試圖「NULL」的所有字符串值更新爲NULL在SQL Server
CSV文件要在文本編輯器中打開才能編輯出所有NULL
,所以我試圖創建一個SQL查詢來更新表的每一列。
到目前爲止,我有這個
Alter PROCEDURE [dbo].[sp_fixnulls]
@column nvarchar(100)
AS
BEGIN
SET NOCOUNT ON;
UPDATE my_table
SET @column=''
WHERE @column = 'NULL'
END
---------------
sp_fixnulls (SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME ='my_table')
,但是這是行不通的。我得到的錯誤消息
消息201,級別16,狀態4,過程sp_fixnulls,行0
過程或函數 'sp_fixnulls' 預計參數 '@column',但未提供。
「但這是行不通的。「你能更具描述性嗎?錯誤信息?意外的結果?結果是什麼?」不起作用「不是結果 –
我不認爲你可以傳遞一個對象名作爲參數直接由SQL執行。也許你可以在SQL中構建查詢字符串,然後使用EXEC。另外,避免調用你自己的sprocs名稱,前綴爲'sp_'[因爲這個](http://sqlserverpedia.com/blog/sql-server-bloggers/stored -procedure-performance-using-%E2%80%9Csp_%E2%80%9D-prefix-%E2%80%93-myth-or-fact /) – Matt
如何導入csv到數據庫? –