パラメータを使用して、ログテーブルのフィールドの文字列に埋め込まれた数値を検索したいとします。'Like'をパラメータで使用する方法
選択* vwLogs からどこlog_time> '02/2009' と同様 メッセージ私は句がどこにある等号ではなく時にパラメータを使用する方法を知っている( 『%2009022508241446%』)
/24でそれを行う方法がわから
「LIKE」これは
WHERE message like ('%@ErrorMessage%')
右私はこれを試み、それがうまくいかなかったようではありません。新しい唯一のことは、私は私にはない、これはあなたの編集に基づいて
if (string.IsNullOrEmpty(txtUserName.Text))
{
cmd.Parameters.Add("@UserName", SqlDbType.VarChar, 50).Value = DBNull.Value;
}
else
{
cmd.Parameters.Add("@UserName", SqlDbType.VarChar, 50).Value = txtUserName.Text;
}
if (string.IsNullOrEmpty(txtErrorNumber.Text))
{
cmd.Parameters.Add("@ErrorNumber", SqlDbType.VarChar, 50).Value = DBNull.Value;
}
else
{
cmd.Parameters.Add("@ErrorNumber", SqlDbType.VarChar, 50).Value = txtErrorNumber.Text;
}
ええ、私はログ番号とナットだけでユーザー名を検索することができると思っていました。エラー番号が文字列に埋め込まれているので、問題が発生したときです。 –
今このエラーメッセージが表示されます エラー 'System.DBNull'と 'string'の間の暗黙的な変換がないため、条件式の型を特定できません –
D'oh!小さな奇妙なことを忘れてしまった。それは間違いなく簡潔な三項演算子ではなく、より長いif/else構造に展開する必要があります。 –