栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

SQL Server DateTime和C#DateTime

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SQL Server DateTime和C#DateTime

日历不支持由字符串表示的DateTime。

之所以出现此错误,是因为您的C#应用​​程序将日期

2012-14-10
视为
14th
月份,
10th
日期和
2012thyear
。白天和一年的工作都可以找到,但是月份却找不到。此外,不要尝试更改C#应用程序查看日期的方式,这是基于系统的文化。

您对如何 定义 一个

DateTime
对象以及如何 显示 一个对象感到困惑。

由于您将日期存储为

DateTime
SQL,因此没有充分的理由让我相信您将需要进行 任何 形式的解析。考虑下面的代码示例。

var dataTable = new DataTable();var dataAdapter = new SqlDataAdapter("SELECt * FROM YourTable", "{connection string}");dataAdapter.Fill(dataTable);var yourDate = dataTable.Rows[0]["Date"]; <=== the type will be DateTime, simple.

添加参数

让我们以您的示例查询为例:

“ SELECt * FROM date_test WHERe id =‘4’AND日期介于’” + dt1 +“’AND’” + dt2 +“’”;

让我们对其进行修复,请考虑以下示例:

var dataTable = new DataTable();var dataAdapter = new SqlDataAdapter("SELECt * FROM date_test WHERe id = @ID AND date BETWEEN @StartDate AND @EndDate", "{connection string}");dataAdapter.SelectCommand.Parameters.AddWithValue("@ID", "4");dataAdapter.SelectCommand.Parameters.AddWithValue("@StartDate", new DateTime(2012, 10, 1));dataAdapter.SelectCommand.Parameters.AddWithValue("@EndDate", new DateTime(2012, 10, 14));dataAdapter.Fill(dataTable);var yourDate = dataTable.Rows[0]["Date"]; <=== the type will be DateTime, simple.


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/373133.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号