SQL Server里插入datetime数据
我向往数据库里写值,用语句insertintoBTB_ShipInfovalues(2,1,1,1,2011-08-04,2011-08-04,1,1,1),后面的时间类...
我向往数据库里写值,用语句insert into BTB_ShipInfo values(2,1,1,1,2011-08-04,2011-08-04,1,1,1),后面的时间类型是datetime的,但查数据库时,里面插入的却是
2 1 1 1 1905-06-23 00:00:00.000 1905-06-23 00:00:00.000 1 1 1
这个insert语句要怎么写?
谢谢~~ 展开
2 1 1 1 1905-06-23 00:00:00.000 1905-06-23 00:00:00.000 1 1 1
这个insert语句要怎么写?
谢谢~~ 展开
4个回答
展开全部
试试:
string sql = "insert into SharingTable(share_title,share_content,share_agreement,share_date,share_type)values(@ShareTitle,@ShareContent,convert(int,@ShareDate,8),@ShareAgreement,@ShareType)";
SqlConnection conn=new SqlConnection(connectionString);//connectionString连接字符串
SqlCommand cmd=new SqlCommand(sql,conn);//conn 为SqlConnection实例
//下面这种方式的好处是 类型不用管它,让系统自己去判断,只要传值是传对的就可以了
cmd.Parameters.AddWithValues("@ShareTitle",sEvent.ShareTitle);
cmd.Parameters.AddWithValues("@ShareContent",sEvent.ShareContent);
cmd.Parameters.AddWithValues("@ShareDate",DateTime.Now);
cmd.Parameters.AddWithValues("@ShareAgreement",0);
cmd.Parameters.AddWithValues("@ShareType",shareTypeId);
try{
if(conn.State!=ConnectionState.Opened)
conn.Open();
cmd.ExecuteNonQuery();
}
catch{}
finally
{
if(conn.State!=ConnectionState.Closed)
conn.Close();
}
-----------------------------------------
从你上面的提示看,我觉得不是错在日期格式,“提示无法隐式的转成int”,可能是这个ShareAgreement 或 shareTypeId,没看到表结构,只是猜的。
string sql = "insert into SharingTable(share_title,share_content,share_agreement,share_date,share_type)values(@ShareTitle,@ShareContent,convert(int,@ShareDate,8),@ShareAgreement,@ShareType)";
SqlConnection conn=new SqlConnection(connectionString);//connectionString连接字符串
SqlCommand cmd=new SqlCommand(sql,conn);//conn 为SqlConnection实例
//下面这种方式的好处是 类型不用管它,让系统自己去判断,只要传值是传对的就可以了
cmd.Parameters.AddWithValues("@ShareTitle",sEvent.ShareTitle);
cmd.Parameters.AddWithValues("@ShareContent",sEvent.ShareContent);
cmd.Parameters.AddWithValues("@ShareDate",DateTime.Now);
cmd.Parameters.AddWithValues("@ShareAgreement",0);
cmd.Parameters.AddWithValues("@ShareType",shareTypeId);
try{
if(conn.State!=ConnectionState.Opened)
conn.Open();
cmd.ExecuteNonQuery();
}
catch{}
finally
{
if(conn.State!=ConnectionState.Closed)
conn.Close();
}
-----------------------------------------
从你上面的提示看,我觉得不是错在日期格式,“提示无法隐式的转成int”,可能是这个ShareAgreement 或 shareTypeId,没看到表结构,只是猜的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
insert into BTB_ShipInfo values(2,1,1,1,'2011-08-04','2011-08-04',1,1,1) 试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询