私は、ASPのDateDiff()関数を使用して2つの日付の日付差を求めています。VBScript - データベース - レコードセット - データベースのDateDiff値を渡す方法
機能は正常に動作し、2つの日付の正確な日付の違いを表示しますが、データベースにこの値を挿入すると、日付の差に関係なく9が値として取り込まれます。
2つの日付の差が15日以上20日以下であると仮定すると、データベースでは「9」となります。
日付差異を表示する列のデータ型としてINTを使用しました。
ここでデータタイプが問題を作成していますか? 私も値ではなく、運を保存するためにセッション変数を使用してみました - ここでは以下の私のコードは次のとおりです。
if request.Form("sub") <> "" then
sql = "Select * from emp_leave_details"
rs.open sql , con, 1, 2
dim diff
dim todate
dim fromdate
fromdate= rs("leave_from")
todate= rs("leave_to")
session("date_diff")=datediff("d",fromdate,todate)
rs.addnew
rs("emp_name") = request.Form("name")
rs("emp_no") = request.Form("number")
rs("address") = request.Form("address")
rs("contact_no") = request.Form("contact")
rs("mobile_no") = request.Form("mobile")
rs("contact_onleave") = request.Form("contact_details")
rs("leave_type") = request.Form("rad")
rs("other_leave_details") = request.Form("PS")
rs("leave_from") = request.Form("from")
rs("leave_to") = request.Form("to")
rs("applied_by") = request.Form("apply")
rs("accepted_by") = request.Form("accept")
rs("approved_by") = request.Form("approve")
rs("no_of_leave_taken")= session("date_diff")
rs.update
response.Write("<script language='javascript'>{update();}</script>")
rs.close
end if
'SELECT * FROM emp_leave_details'で選択された最初のRecordSetから' fromdate'と 'todate'を読み込んでいます...これは本当に目的ですか?同じデータを常に使用するように見えます(select *が一貫している限り)。 – Filburt
@ Filburtご返信ありがとうございます...私はあなたが言うことを理解していませんでした..あなたが精巧になります.. –
私はこの 'sql = "Select * from emp_leave_details from emp_name ='" &セッション( "ユーザー名")& "'"'データベースに入る値は "14"です.....日付の違いに関係なく....クエリを実行するときに –