我正在创建一个基于英国的网站,因此我的网站上的用户通常会使用格式dd/mm/yyyy。我为用户创建了一个日期选择器,并且它工作正常,直到我选择第13天(2013年10月13日)。我猜数据库将这个视为美国的日期,因此一年中没有13个月。WebMatrix - 美国日期/时间格式证明是一个问题
我需要对我的代码做些什么来将其转换为正确的格式,或将我的数据库更改为使用英国格式?什么是最简单的?
if(IsPost){
var dateis = Request["date"];
var insert = "INSERT INTO TestTable (testdate) VALUES (@0)";
var qinsert = db.Execute (insert, Request["date"]);
}
}
<div class="container">
<h1>Bootstrap Datepicker</h1>
<form method="post">
<div class="input-append date" id="dp3">
<input class="span2" name="date" size="16" type="text" value="">
<span class="add-on"><i class="icon-th"></i></span>
</div>
<button class="btn btn-success" type="submit" value="Submit"/>Submit</button>
</form>
</div>
<script type="text/javascript">
$('#dp3').datepicker({
format: "dd/mm/yyyy",
autoclose: true,
todayHighlight: true
})
</script>
但我说的是数据库(我使用sql express,而不是CE),只在美国(mm/dd/yyyy)存储?即时通讯所有的存储它,因为你已经建议,但这仍然会抛出错误,当我尝试并将其输入到数据库中。它告诉我我有一个“超出范围的值” – Gavin5511
数据库内部以二进制格式存储日期,而不是格式化的字符串 - 假设您使用'datetime2'或'date'作为列类型。 – Polynomial
@Gavin,你应该阅读:http://sqlmag.com/sql-server/solving-datetime-mystery。 –