私は私のSQL管理スタジオでこれを行います
SELECT * FROM SMSMessage WHERE respondCode IS NULL
そして私は結果を得ました
C#からそのクエリを実行したい
私はこれを試しました:
string query = "SELECT * FROM SMSMessage WHERE respondCode IS @respondCode";
SqlConnection con = new SqlConnection(Utilities.getConnectionString());
SqlCommand cmd = new SqlCommand(query, con);
cmd.Parameters.AddWithValue("@respondCode", DBNull.Value);
私はこの例外を得ました:
An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll
Additional information: Incorrect syntax near '@respondCode'.
なぜお願いしますか?
私も試しました
string query = "SELECT * FROM SMSMessage WHERE respondCode IS NULL";
そして、私は空の結果を得ました。
string query = @"SELECT *
FROM SMSMessage
WHERE (respondCode = @respondCode)
OR (@respondCode IS NULL AND respondCode IS NULL)";
SqlConnection con = new SqlConnection(Utilities.getConnectionString());
SqlCommand cmd = new SqlCommand(query, con);
cmd.Parameters.AddWithValue("@respondCode", DBNull.Value);
con.Open();
using (con)
{
DataTable results = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter(cmd);
sda.Fill(results);
以来NULL
値を比較することができない、NULL = NULL
未知のと評価さは、あなたのクエリがする必要があります:
SELECT * FROM SMSMessage
WHERE (respondCode = @respondCode) OR
(respondCode IS NULL AND @respondCode IS NULL)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加