正在存储SQL Server 2005日期时间



我有一个php脚本,通过SQL 将值插入SQL Server 2005表

$date = '15 Jun 2011 00:00';
$sql = "INSERT INTO shows ( DateStart ) VALUES ( '$date')"; 

我有两个问题:

1) 如何最好地将此日期转换为SQL Server能够理解的内容?在我的系统中,默认格式是mm/dd/yyyy,但我希望向用户显示可读的日期。

2) 插入空字符串时,DateStart值将设置为1/1/1900。如何最好地将"无效"日期转换为NULL(该列已经接受NULL),以便如果$date = ""DateStart IS NULL

谢谢!

  • 要点1:使用ISO日期格式YYYY-MM-DDTHH:MM:SS
    注意:由于SQL Server解析日期的方式存在异常,因此仅使用YYYYMMDD作为日期
  • 点2:NULLIF(value, '')
  1. 我认为在日期时间列中插入记录时的日期时间格式应该始终是"YYYY-MM-DD HH:MM:SS"默认格式

  2. gbn已经告诉过了。

相关内容

  • 没有找到相关文章

最新更新