suh*_*has 2 c# oracle datetime
我正在尝试将c#datetime存储到oracle数据库中,因为它存储的时间戳没有问题,但是当我尝试从数据库中选择该特定日期的数据时,它会给出错误,因为它无效月份.
DateTime sessiondate =DateTime.Now();
int userid_int = 101;
string userTypeis ='ENGINEER';
string get_Log_query = "SELECT LOG_ID FROM JOINTING_LOGIN_LOG where USER_ID="+userid_int+" and USER_TYPE='"+userTypeis+"' and SESSION_START='"+sessiondate+"'";
Run Code Online (Sandbox Code Playgroud)
小智 5
string get_Log_query = "SELECT LOG_ID FROM JOINTING_LOGIN_LOG where USER_ID="+userid_int+" and USER_TYPE='"+userTypeis+"' and SESSION_START='"+sessiondate+"'";
Run Code Online (Sandbox Code Playgroud)
您永远不应该使用字符串连接来构建带参数的查询.参数化查询将更快,并帮助您避免SQL注入和类型转换的麻烦.如果SESSION_START确实是时间戳,那么您的代码将是 -
string get_Log_query =
@"SELECT LOG_ID
FROM JOINTING_LOGIN_LOG
WHERE USER_ID= :USER_ID
and USER_TYPE= :USER_TYPE
and SESSION_START= :SESSION_START";
cmd.Parameters.Add("USER_ID", OracleDbType.Decimal, userid_int, ParameterDirection.Input);
cmd.Parameters.Add("USER_TYPE", OracleDbType.Varchar2, userTypeis, ParameterDirection.Input);
cmd.Parameters.Add("SESSION_START", OracleDbType.TimeStamp, sessiondate, ParameterDirection.Input);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4389 次 |
| 最近记录: |