数据库 时间字段本想置空但是默认为1900-1-1

将时间类型的Textbox值插入到数据库中,同时

数据库  比如有一个时间字段birthday类型为 smalldatetime ,可以为空,当这个textbox中文本为空时往数据库插入字段,总是为1900-1-1,

现在怎样将它转换为空:

1.首先判断textbox是否为空

        if (string.IsNullOrEmpty(ztxt_birthday.Text.Trim().ToString()) == false)     

       {           

              strBirthday = "'" + ztxt_birthday.Text.Trim().ToString() + "'";     //注意多加了两个单引号

        }       

      else     

       {            strBirthday = "NULL";        }

2.在insert语句中如下

  string _sqlInsert=...."',"+strBirthday+",''"...;  //注意这边便少了两个单引号

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您的数据库字段默认为日期类型,并且在Excel中的某些单元格中存在值,您可以将这些值转换为适当的日期格式,以便能够正确导入到数据库中。 以下是一个示例代码,演示如何将Excel数据转换为SQL文件,并将日期值转换为NULL值: ```python import pandas as pd from datetime import datetime # 读取Excel文件 df = pd.read_excel('input.xlsx') # 将日期值转换为NULL值 df['date_column'] = df['date_column'].apply(lambda x: x if pd.notnull(x) else None) # 这里的'date_column'是您Excel中日期字段的名称,请根据实际情况进行替换。 # 格式化日期字段 df['date_column'] = df['date_column'].apply(lambda x: x.strftime('%Y-%m-%d') if isinstance(x, datetime) else x) # 此处假设日期格式为'YYYY-MM-DD',请根据实际情况进行替换。 # 将数据导出为SQL文件 df.to_sql('output', 'sqlite:///output.db', if_exists='replace', index=False) ``` 在上述代码中,我们使用了`apply`函数来遍历日期列中的每个单元格。首先,我们检查单元格是否为空,如果是,则将其替换为None。然后,我们使用`strftime`函数将日期格式化为适当的字符串格式。最后,我们使用`to_sql`函数将DataFrame中的数据导出为SQL文件。 请注意,这里的示例代码仍然使用SQLite数据库为例,您需要根据实际情况进行适当的更改。 希望这可以解决您的问题!如果您有任何疑问,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值