- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用存储过程来获取分页列表,这是我的方法:
using(SqlConnection conn = new SqlConnection(_connectionString)) {
using(SqlCommand cmd = new SqlCommand("[GetPagedSP]", conn)) {
cmd.CommandType = System.Data.CommandType.StoredProcedure;
//Passing Parameters
**Update**
SqlParameter spCreationDate = new SqlParameter("@CreationDate_9", CreationDate);
spCreationDate.IsNullable = true;
cmd.Parameters.Add(spCreationDate);
// ........
//Finished Passing Parameters
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
while(dr.Read()) {
//Get Values
}
conn.Close();
}
}
这是我的存储过程命令:
CREATE TABLE #PagingTemp (
[RowId] [bigint] IDENTITY(1,1) NOT NULL,
[RecordId] [bigint]
);
INSERT INTO [#PagingTemp] ([RecordId])
SELECT [CAR].[Id]
FROM [Article] AS [CAR] ;
SELECT [CAR].*
FROM [Collections].[Article] AS [CAR]
INNER JOIN [#PagingTemp] AS [PT] ON [CAR].[Id] = [PT].[RecordId]
WHERE [PT].[RowId] BETWEEN 1 AND 50;
当我在 SQL 中运行查询时,一切都很好,但在 .NET 中,我在这一行有一个异常:
SqlDataReader dr = cmd.ExecuteReader();
异常(exception)情况是:
System.Data.SqlTypes.SqlTypeException was unhandled by user code
Message=SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.
Source=System.Data
更新
SQL中运行Query的例子:
太奇怪了,我不明白发生了什么?
我没有任何大于 12/31/9999
或小于 1/1/1753
的 datetime
值
我在数据库中只有一些具有空值的可空日期时间值。
你怎么看?问题出在哪里?
最佳答案
在将任何有效日期传递给变量 CreationDate 以执行存储过程之前,将其分配给变量 CreationDate
//Passing Parameters
CreationDate = DateTime.Now or any other date you want if you dont want to pass any date then assign DBNull.Value
**Update**
SqlParameter spCreationDate = new SqlParameter("@CreationDate_9", CreationDate);
spCreationDate.IsNullable = true;
cmd.Parameters.Add(spCreationDate);
希望这能解决您的问题。
关于Select 命令中的 SqlDateTime 溢出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11717209/
我在 SQL Server Management Studio 中使用了 SQL 语句,我在其中输入了以下日期时间 {ts '9999-12-31 23:59:59'} 的无限有效性,但是当我尝试通过
考虑以下程序: DateTime dateTime = new DateTime(634546165144647370); SqlDateTime sqlDateTime = new SqlDateT
我使用存储过程来获取分页列表,这是我的方法: using(SqlConnection conn = new SqlConnection(_connectionString)) { using(S
我刚刚发现我的 SqlDateTime.MinValue 在不同的机器上是不同的。 有时是 = DateTime(1953, 1, 1, 0, 0, 0); 但在其他机器上它是 = DateTime(
table = {{ID1, SQLDateTime[{1978, 1, 10, 0, 0, 0.`}]}, {ID2, SQLDateTime[{1999, 1, 10, 0, 0, 0.`}]},
我正在映射一个非常简单的 Users 表,并且我有一个名为“LastLoginDate”的列,它在 sql server 中定义为可为空。 我的映射看起来像这样: public Users {
我似乎无法将 sqldatatime.minvalue 转换为 datetime 对象。 我试过: Datetime dt = Convert.ToDateTime(SqlDateTime.MinVa
我想知道,为什么 SqlDateTime.MinValue 与 DateTime.MinValue 不一样? 最佳答案 我认为 SQL 和 .NET 的 Date 数据类型之间的差异源于 SQL Se
我需要用 SqlDateTime.Parse(val) 其中 val 是一个字符串,例如“23.3.1992 00:00:00 ”。 字符串为欧洲格式,即日在月之前。但是 Parse 需要“美国”格式
我在数据库中使用 NHibernate 持久化我的对象 App 对象定义了一个属性: public virtual DateTime ReleaseDate { get; set; } 在映射类中:
我有一个从源(DataRow 或 SqlDataReader)获取日期属性的方法: protected SqlDateTime GetSqlDateTimePropertyValue(string p
到处找都试过了,还是不行。 目前的方法是 DateTime dt = (DateTime)sqlparam.Value;。我可以想象在不同的配置、不同的 SQL 区域设置、不同的 PC 区域设置等
我不想验证 txtBirthDate,所以我想在数据库中传递 DateTime.MinValue。 我的代码: if (txtBirthDate.Text == string.Empty)
在将 .NET DateTime(默认情况下(DateTime))转换为 SqlDateTime 时,我应该始终检查 .NET 日期是否在 SqlDateTime.MinValue 和 SqlDate
当我将 DateTime 变量与 SqlDateTime.MinValue 进行比较时: if (StartDate > SqlDateTime.MinValue) { // some code
System.DateTime可以采用比 SQL Server 的 DateTime 更广泛的值。因此有类 System.Data.SqlTypes.SqlDateTime模仿后者。 因此,我希望 E
我正在开发一个以 NHibernate 作为后端的 ASP.NET MVC 项目,但在将一些日期写回到我的 SQL Server 数据库表中时遇到一些问题。 这些日期字段不可为空,因此此处有关如何设置
我正在用 c#.net 编写一个与 sql DB 一起工作的应用程序。我有 5 个字段 - 日期时间。当我处于 Debug模式时,我看到 DateTime 字段是正确的,但是当我运行应用程序时,我得到
以下代码使用比较 运算符可以正常编译。 If(dateTimeVariable > SqlDateTime.MinValue) //compiles Ok. dateTimeVariable is o
我正在尝试将日期从 C# 保存到 SQL Server。首先要向用户显示日期格式为 dd/MM/yyyy。然后在 Winforms 屏幕上选择日期后。我想将它保存到数据库中。如果我删除代码中的 dat
我是一名优秀的程序员,十分优秀!