1

パラメータとして 2 つの日付を指定して、この 2 つの日付の間で選択を行うことにより、Java プログラムから MSSQL ストアド プロシージャを実行したいと考えています。したがって、Javaコードでは次のように進めました:

"EXEC [dbo].[MyProcedure] " + "'"+ dateFrom+"'" ,"'"+dateTo"'"

次のように、SQL Server プロシージャでパラメータを宣言しました@collected_date1 datetime, @collected_date2 datetime。そして、次のように 2 つの日付を選択しました。

SELECT @date1 = Convert(varchar(23),@collected_date1,121)
SELECT @date2= Convert(varchar(23),@collected_date2, 121)  

ただし、次のメッセージ エラーがあります。Error converting data type nvarchar to datetime

私を手伝ってくれますか ?ありがとうございました

4

1 に答える 1

2

上記のステートメントで、変数を宣言しました

@collected_date1 日時、@collected_date2 日時

設定すると、データ型がvarcharに変換されるため、エラーが発生します

日時データ型に設定する場合は、使用する必要があります

SELECT @date2= Convert(datetime,@collected_date2, 121)  ;
于 2012-08-26T16:45:56.787 に答える