内の文字列からdatetime型に変換するときに私は、SQL Server 2008を使用していますし、生産に我々は唯一の本番サーバーでSQL Server 2005を持っていなかった私はエラーを取得しています:変換は私のローカルサーバーでSQL Server 2005の
Conversion failed when converting datetime from character string this error
トリガーを実行中。
これは私のコードです:
SET @nextSemesterValue = (select min(semesterYear * 100 + Month(semesterType + ' 1 2000')) as yearmonth
from table
where (semesterYear * 100 + Month(semesterType + ' 1 2000')) > YEAR(getdate()) * 100 + MONTH(getdate())
and courseId = @courseId)
ここsemsterYear
はInteger
列で、semesterType
は文字列です。
上記のコードに問題はありますか?私を助けてください。事前
はいの下であなたの取得月のコードを置き換えます。問題があります。そうでなければ、エラーは発生しません。しかし、より詳細な情報が必要です。semesterTypeにはどのような価値がありますか?適切な方向を指すために、変換が成功する値はありますか?ある場合は、これらの値と変換が成功しなかった値との違いは何ですか? –
semesterTypeには1月、5月、9月が含まれている可能性があります –
これはトリガーですが、どこが失敗しているのか正確にはわかりませんが、上記のコードで問題が発生していると思われます –