お世話になっています。
現在、VB6.0で作成したFORMにログオン/ログオフ機能を設定し
DBにその時間を書き込むようにしています。
さらにログオフ時に、ログインしていた時間も算出し
DBの別フィールドに格納したいのですが、下記SQLに追記して
一発で実現するにはどのようにすればよろしいでしょうか。
'ログオフ時
Dim mySql As String
'ログオフ時刻を記録
'〔書き込み判断〕担当者名がLOG_DBと同じで、かつFORM上のログイン時刻と同一の行に書き込み
mySql = "Update LOGIN_TIME Set LOG_DB.LOGOUT日時 = NOW " _
& "WHERE LOG_DB.LOGIN日時 = cdate('" & Label18.Caption & "') " _
& "and LOG_DB.担当者コード = '" + user + "'"
cn.Execute mySql
データベースは何でしょう?(SQLは方言があるので、明記しないと回答不能)
あと、LOG_DB.LOGIN日時の型は何でしょう?
(型にあわせて日付形式を整えてあげる必要があるかもです。)
CDateはVB内部でのDate型へ変換するので、このままだと暗黙の型変換で、
予期せぬ結果に陥る危険があります。
SQL文に書くときには、Format関数で整形した文字列にするのが一般的です。
ツイート | ![]() |