insert 插入语句中如何取当前时间?(急)
我在写出入语句的时候,不知道怎么取当前时间,谁可以帮忙看看string v1,v2,v3
string SQL="insert into aaa(d1,a1,a2,a3) values ("?????","+v1+","+v2+","+v3+")";
d1那个地方要取当前时间,我应该怎么取? --------------------编程问答-------------------- string SQL="insert into aaa(d1,a1,a2,a3) values ('" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + "',"+v1+","+v2+","+v3+")"; --------------------编程问答-------------------- datetime.now --------------------编程问答-------------------- JGood --------------------编程问答-------------------- DateTime.Now,1楼的 --------------------编程问答-------------------- string v1,v2,v3,v4
v4=date.now.tostring();
string SQL="insert into aaa(d1,a1,a2,a3) values (v4+"","+v1+","+v2+","+v3+")";
--------------------编程问答-------------------- GetDate()不行吗 --------------------编程问答-------------------- 我的数据库是oracle的
--------------------编程问答-------------------- 你可以先获取当前时间啊,System.DateTime.Now --------------------编程问答-------------------- 我没用过C#,能不能说的详细点 --------------------编程问答-------------------- DateTime.Now取得的是客戶端的時間
如果要取SQL Server數據庫所在的服務器的時間可以用getdate()函數
例如string SQL = "insert into tbl(col1, col2) values(getdate(), " + var.ToString() + ")" --------------------编程问答-------------------- getdate() --------------------编程问答-------------------- DateTime.Now是可以的,因为先构造的sql字符串,然后才是由数据库执行,不管你的字段类型是VARCHAR2型的还是日期开型的,都是可以的,getDate是Sql Server里面的一个函数 --------------------编程问答-------------------- private void OnButtonClick(object sender, System.EventArgs e)
{
string __SheetID=myForm.MasterTableRow["Sheetid"].ToString();
string l_smsyjid=myForm.MasterTableRow["shsyjid"].ToString();
string l_sminvno=myForm.MasterTableRow["shinvno"].ToString();
string ls_fhdd=myForm.MasterTableRow["shfhdd"].ToString();
d1 = system.datetime.now.tosting();
try
{
foreach(DataRow row in myForm.DetailDataTable1.Rows)
{
string is_sid=row["sdgdid"].ToString();
string is_cm=row["sdfhdd"].ToString();
if (is_cm!="")
{
string is_sql="select GIMEI from goodsbatchimei where GIGDID="+is_sid+" and GIMEI="+is_cm+" and GISTATUS='N' ";
try
{
string is_mei=Convert.ToString(myForm.GetSQLValue(is_sql)) ;
}
catch(Exception ex)
{
MessageBox.Show("错误,商品"+is_sid+"的串码"+is_cm+"没有销售或已经退货,不允许审核");
return;
}
}
}
string sql="select shstatus from sellhead where shstatus='S' and shbillno= "+__SheetID+"";
try
{
string is_q=Convert.ToString(myForm.GetSQLValue(sql)) ;
if (is_q!="S")
{
MessageBox.Show("提示,该单据已经审核或不存在,请确认后在审核");
return;
}
}
catch(Exception ex)
{
//MessageBox.Show("提示,该单据已经审核或不存在,请确认后在审核");
//return;
}
string sqlmail="insert into you(SMDATE,SMKEY,SMSYJID,SMINVNO,SMMKT) VALUES ("+d1+","+__SheetID+","+l_smsyjid+","+l_sminvno+","+ls_fhdd+")";//d1为时间,
try
{
myForm.ExecuteSQL(sqlmail);
MessageBox.Show("单据已审核");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
我用的是个二次开发工具,d1为时间,大家帮忙看看,我要取当前时间应该怎么取 --------------------编程问答-------------------- public string getOracleDate(string sFormat)
{
string sDate = DateTime.Now.ToString(sFormat);
OracleConnection oraConn = new OracleConnection(P.sOracleConnStr);
try
{
// OracleConnection oraConn = new OracleConnection(P.sOracleConnStr);
OracleCommand oraCmd = new OracleCommand("select sysdate time from dual", oraConn);
oraConn.Open();
OracleDataReader reader = oraCmd.ExecuteReader();
reader.Read();
sDate = reader.GetDateTime(0).ToString(sFormat);
oraConn.Close();
}
catch (Exception ex)
{
if (P.sOracleNeedLog.Trim() == "Yes" || P.sOracleNeedLog.Trim() == "YES")
{
this.AddSqlLog("获取系统时间失败,发生以下错误:\r\n" + ex.Message + "\r\n" + ex.Source + "\r\n" + ex.StackTrace);
}
if (oraConn!=null && oraConn.State == ConnectionState.Connecting)
oraConn.Close();
throw ex;
}
return sDate;
} --------------------编程问答-------------------- sql:insert into 9999 (d) values (getDate()) --------------------编程问答-------------------- 如果是sql server可以用getdate()服务器的当前时间
string SQL="insert into aaa(d1,a1,a2,a3) values (getdate(),"+v1+","+v2+","+v3+")"; --------------------编程问答-------------------- 我这是oracle,不是SQLserver --------------------编程问答-------------------- 如果是在sql server中,可是使用getdate()
如果是在c#中,可以使用dateitme.now.tostring() --------------------编程问答-------------------- Oracle可以直接用sysdate来获取当前时间
string sqlmail="insert into you(SMDATE,SMKEY,SMSYJID,SMINVNO,SMMKT) VALUES ("+d1+","+__SheetID+","+l_smsyjid+","+l_sminvno+","+ls_fhdd+")";//d1为时间,
改成
string sqlmail="insert into you(SMDATE,SMKEY,SMSYJID,SMINVNO,SMMKT) VALUES (sysdate,"+__SheetID+","+l_smsyjid+","+l_sminvno+","+ls_fhdd+")";//d1为时间,
--------------------编程问答-------------------- 直接取sysdate也不行,以上所有方法都试过了
--------------------编程问答-------------------- 直接取sysdate不行?d1字段是日期型吗? --------------------编程问答-------------------- 那个不是方法吗 --------------------编程问答-------------------- now()就行了 --------------------编程问答-------------------- GetDate() --------------------编程问答-------------------- 用存储过程 --------------------编程问答-------------------- SQLServer: GetDate() --------------------编程问答-------------------- 如果是在sql server中,可是使用getdate()
如果是在c#中,可以使用dateitme.now.tostring()
Oracle可以直接用sysdate来获取当前时间
-----------------------
up --------------------编程问答-------------------- string SQL= @"insert into aaa(d1,a1,a2,a3) values ( to_date('"
+DateTime.Now.ToString() +@"','yyyy-mm-dd hh24:mi:ss'),"+v1+","+v2+","+v3+")"; --------------------编程问答-------------------- 1. 28楼,正解!!!
oracle中要插入日期型,必须用to_date转换
2. 用oracle中的sysdate也可以啊
string SQL="insert into aaa(d1,a1,a2,a3) values(sysdate,"+v1+","+v2+","+v3+")"; --------------------编程问答-------------------- 学习学习 --------------------编程问答--------------------
getutcdate()
对于DB, 这个才是最好的. --------------------编程问答-------------------- 帮顶
顺便问下大家个问题
http://topic.csdn.net/u/20071224/17/0a983706-0c92-4ce9-8f0d-0e382ab7fd0d.html?seed=1209387883
--------------------编程问答-------------------- String.Formt(DateTime.Now.ToString,"yyyy-mm-dd"); --------------------编程问答-------------------- string SQL="insert into aaa(d1,a1,a2,a3) values ("'+DateTime.Now.ToString()+'","+v1+","+v2+","+v3+")"; --------------------编程问答-------------------- getdate() --------------------编程问答-------------------- System.DateTime.Now
就这么简单 --------------------编程问答--------------------
string v1,v2,v3
string SQL="insert into aaa("+Date.Now.ToString()+",a1,a2,a3) values ("?????","+v1+","+v2+","+v3+")";
补充:.NET技术 , C#