我得到這個參數:Powershell和SQL參數。如果空字符串,傳遞的DBNull
$objDbCmd.Parameters.Add("@telephone", [System.Data.SqlDbType]::VarChar, 18) | Out-Null;
$objDbCmd.Parameters["@telephone"].Value = $objUser.Telephone;
凡串$objUser.Telephone
可以爲空。如果它是空的,我如何將它轉換爲[DBNull]::Value
?
我想:
if ([string]:IsNullOrEmpty($objUser.Telephone)) { $objUser.Telephone = [DBNull]::Value };
但是,這給我的錯誤:
Exception calling "ExecuteNonQuery" with "0" argument(s): "Failed to convert parameter value from a ResultPropertyValueCollection to a String."
如果我把它轉換成字符串,它插入一個空字符串""
,而不是DBNull
。
這是如何實現的?
謝謝。
非常有趣。謝謝喬希。我會在今天晚些時候進行測試,然後我會告訴你是否解決了我的問題。 – 2009-05-29 08:10:01