データベースにyyyy/mm/ddの形式でStartDateデータ型として保存しました。にキャストしようとすると、取得していますnvarchardatetimeArithematic Flow Error.
このエラーは何ですか? castとメソッドの両方を試しましconvertたが、まだエラーがスローされます。
これが私のコードです:
cast(Start_Date as datetime) &&
convert(datetime,Start_Date,103 )
データベースにyyyy/mm/ddの形式でStartDateデータ型として保存しました。にキャストしようとすると、取得していますnvarchardatetimeArithematic Flow Error.
このエラーは何ですか? castとメソッドの両方を試しましconvertたが、まだエラーがスローされます。
これが私のコードです:
cast(Start_Date as datetime) &&
convert(datetime,Start_Date,103 )
CAST と CONVERTを見てください。
103dd/mm/yyyyこれは失敗します
declare @S varchar(10)
set @S = '2012/03/31'
select convert(datetime, @S, 103)
代わりにこれを試してください
select convert(datetime, replace(@S, '/', ''), 112)
SET DATEFORMAT asがある場合、キャストは失敗しますdmy。
set dateformat dmy
declare @S varchar(10)
set @S = '2012/03/31'
select cast(@S as datetime)
ただし、ymd代わりに使用すると問題なく動作します。
declare @TestDateValue nvarchar(50)
set @TestDateValue = '2012/12/03'
select cast(@TestDateValue as datetime) as NewTestDateTime
コードが機能するはずです。ここで例を挙げただけです。変換しようとしている文字列を投稿できますか。それに何かがあるかもしれません。