まず、DateTime
の違いについて混乱しているようです。 オブジェクトとフォーマットされたString
そのDateTime
の表現 物体。 Now
、またはさらに良いことに、DateTime.Now
すでにDateTime
オブジェクトであるため、文字列としてフォーマットしてから文字列を解析してDateTime
に戻すことは意味がありません。 再び値。したがって、これを行うだけで同じことを達成できます:
Dim timestamp As Date = Date.Now
VB.NETでは、Date
DateTime
の略のキーワードです 、Integer
と同じように Int32
の「短い」です 。
次に、DateTime
を追加しないでください 値をSQLコマンド文字列に直接入力します。パラメータ化されたクエリを使用する必要があります。 DateTime
を追加するとき SQL文字列の値を指定するには、適切にフォーマットされていることを確認する必要があります(timestamp.ToString(...)
を呼び出すことにより、 )。ただし、残念ながら、どの形式が適切かは、サーバーのカルチャ設定に完全に依存します。したがって、DBパラメータを使用し、パラメータ値を実際のDateTime
と同じに設定することをお勧めします。 オブジェクトを作成し、DBプロバイダーに変換を任せます。