------------------>>明明SQL数据库里的日期为空,但C#取出来的值却是1900-01-01,奇怪了-------------- 数据类型不用datetime,用varchar算了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 sql server默认的,我就这么做了 我是楼主:楼上的各位大侠,有没更直接的方法,改一下这个代码strDate.Text= String.Format("{0:MM/dd/yyyy}", objDataView.Table.Rows[0]["Date"]); TO:theoldsod2000(蝈蝈) ( ) 信誉:100 你是不是使用了验证控件,在验证控件上设置了最小值1900-01-01。-------------------------------------------------没有啊! datetime 和 smalldatetime代表日期和一天内的时间的日期和时间数据类型。 datetime从 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和时间数据,精确度为百分之三秒(等于 3.33 毫秒或 0.00333 秒)。如下表所示,把值调整到 .000、.003、或 .007 秒的增量。示例 调整后的示例 01/01/98 23:59:59.999 1998-01-02 00:00:00.000 01/01/98 23:59:59.995,01/01/98 23:59:59.996, 01/01/98 23:59:59.997, 或01/01/98 23:59:59.998 1998-01-01 23:59:59.997 01/01/98 23:59:59.992, 01/01/98 23:59:59.993, 01/01/98 23:59:59.994 1998-01-01 23:59:59.993 01/01/98 23:59:59.990 或01/01/98 23:59:59.991 1998-01-01 23:59:59.990 Microsoft® SQL Server™ 拒绝所有其不能识别为 1753 年到 9999 年间的日期的值。smalldatetime从 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和时间数据精确到分钟。29.998 秒或更低的 smalldatetime 值向下舍入为最接近的分钟,29.999 秒或更高的 smalldatetime 值向上舍入为最接近的分钟。--returns time as 12:35SELECT CAST('2000-05-08 12:35:29.998' AS smalldatetime)GO--returns time as 12:36SELECT CAST('2000-05-08 12:35:29.999' AS smalldatetime)GO注释Microsoft SQL Server 用两个 4 字节的整数内部存储 datetime 数据类型的值。第一个 4 字节存储 base date(即 1900 年 1 月 1 日)之前或之后的天数。基础日期是系统参考日期。不允许早于 1753 年 1 月 1 日的 datetime 值。另外一个 4 字节存储以午夜后毫秒数所代表的每天的时间。smalldatetime 数据类型存储日期和每天的时间,但精确度低于 datetime。SQL Server 将 smalldatetime 的值存储为两个 2 字节的整数。第一个 2 字节存储 1900 年 1 月 1 日后的天数。另外一个 2 字节存储午夜后的分钟数。日期范围从1900 年 1 月 1 日到 2079 年 6 月 6 日,精确到分钟。 这样的结果与C#没有关系——是SQL SERVER日期型字段的默认值——你可以保存一个空值进数据库的日期型字段 看看结果 是SQL SERVER日期型字段的默认值 SQL Server 默认null=1900.0.0你可以做一个sp,然后用select isnull(xx,xx)这样子能解决这个问题 web.conf自定义节处理 datagridview的下拉框控件赋值 关于word codesmith生成的代码业务层和借口层无法正常对接,但是中文字段一点问题都没有 循环给Label赋值,WINFORM,急~~~ MemoryStream与FileStream与Stream 关于三层架构的设计问题 我的应用程序打印资料时直接送到串口打印机进行直接打印,有什么好的实现思路? 有关 System.Reflection.Emit 使用的例子 vs中定时获取数据,实现推送功能 怎样在c#中调用dll中的函数 空值,1值如何在DataGrid中用DataGridBoolColumn??
我是楼主:楼上的各位大侠,有没更直接的方法,改一下这个代码strDate.Text= String.Format("{0:MM/dd/yyyy}", objDataView.Table.Rows[0]["Date"]);
没有啊!
代表日期和一天内的时间的日期和时间数据类型。 datetime从 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和时间数据,精确度为百分之三秒(等于 3.33 毫秒或 0.00333 秒)。如下表所示,把值调整到 .000、.003、或 .007 秒的增量。示例 调整后的示例
01/01/98 23:59:59.999 1998-01-02 00:00:00.000
01/01/98 23:59:59.995,
01/01/98 23:59:59.996,
01/01/98 23:59:59.997, 或
01/01/98 23:59:59.998 1998-01-01 23:59:59.997
01/01/98 23:59:59.992,
01/01/98 23:59:59.993,
01/01/98 23:59:59.994 1998-01-01 23:59:59.993
01/01/98 23:59:59.990 或
01/01/98 23:59:59.991 1998-01-01 23:59:59.990
Microsoft® SQL Server™ 拒绝所有其不能识别为 1753 年到 9999 年间的日期的值。smalldatetime从 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和时间数据精确到分钟。29.998 秒或更低的 smalldatetime 值向下舍入为最接近的分钟,29.999 秒或更高的 smalldatetime 值向上舍入为最接近的分钟。--returns time as 12:35
SELECT CAST('2000-05-08 12:35:29.998' AS smalldatetime)
GO
--returns time as 12:36
SELECT CAST('2000-05-08 12:35:29.999' AS smalldatetime)
GO注释
Microsoft SQL Server 用两个 4 字节的整数内部存储 datetime 数据类型的值。第一个 4 字节存储 base date(即 1900 年 1 月 1 日)之前或之后的天数。基础日期是系统参考日期。不允许早于 1753 年 1 月 1 日的 datetime 值。另外一个 4 字节存储以午夜后毫秒数所代表的每天的时间。smalldatetime 数据类型存储日期和每天的时间,但精确度低于 datetime。SQL Server 将 smalldatetime 的值存储为两个 2 字节的整数。第一个 2 字节存储 1900 年 1 月 1 日后的天数。另外一个 2 字节存储午夜后的分钟数。日期范围从1900 年 1 月 1 日到 2079 年 6 月 6 日,精确到分钟。
——是SQL SERVER日期型字段的默认值
——你可以保存一个空值进数据库的日期型字段 看看结果