.net中如何把一个空值转换为时间类型写入数据库中?

textbox1用来显示时间,调用用oracle的存储过程来把时间记录到数据库里,例如:OleDbCommandPcmd=newOleDbCommand("就诊病人信息_... textbox1用来显示时间,调用用oracle的存储过程来把时间记录到数据库里,例如:
OleDbCommand Pcmd = new OleDbCommand("就诊病人信息_insert", Pconn);
Pcmd.CommandType = CommandType.StoredProcedure;
Pcmd.Parameters.Add("病人ID_IN", OleDbType.UnsignedInt, 32).Value = Convert.ToInt32(textbox0.text.ToString());
Pcmd.Parameters.Add("入院时间_IN", OleDbType.Date, 50).Value = Convert.ToDateTime(textbox.text1.ToString());
Pcmd.ExecuteScalar();
textbox1的值有时是空值,这个时候就没办法把空值写入数据库中!“入院时间”这个字段在数据库中是允许空值的,只要是空值的时候数据就存不进数据库求大侠指点啊!!
展开
 我来答
糖糖寳寳
推荐于2018-04-12 · TA获得超过6.4万个赞
知道大有可为答主
回答量:1.8万
采纳率:92%
帮助的人:3970万
展开全部
用SimpleDateFormat这个类,在new这个类的时候定义好需要的类型,调format这个方法就可以:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test {
public static Date stringToDate(String dateStr) throws ParseException {
SimpleDateFormat srcFormatter = new SimpleDateFormat("yyyy-MM-dd");
return srcFormatter.parse(dateStr);
}

public static String dateToString(Date date) {
// 05-10月-2010
SimpleDateFormat dstFormatter = new SimpleDateFormat("dd-MM月-yyyy");
return dstFormatter.format(date);
}

public static void main(String[] args) throws ParseException {
// 直接把这个date插入数据库,数据库会按自己的格式处理日期.
Date date = Test.stringToDate("2010-10-05");
String dateStr = Test.dateToString(date);
System.out.println(dateStr);
}
}
匿名用户
2013-02-26
展开全部
保存的时候判断一下 为空则设置值为DBNull
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Octavianus_PL
2013-02-26 · TA获得超过388个赞
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:174万
展开全部
判断textbox1的值是否为空,如果为空,就设置.Value = DBNull.Value;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
心随风而逝fly
2013-02-26 · 超过10用户采纳过TA的回答
知道答主
回答量:20
采纳率:0%
帮助的人:20.2万
展开全部
private DateTime? _submittime;在类型后面加个问号,表示可以为NULL
追问
在OleDbType.Date后面加个?吗   这样也不行的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式