数据库的日期类型

怎样才能插入"1924-04-24"
而不是:"1924-04-24 00:00:00.000"

1. 数据类型
MS SQL Server 2005 有 datetime 和 smalldatetime 两种格式的日期时间数据类型。注意:没有单独的日期或时间类型。
2.数据库内部用两个 4 字节的整数存储 datetime 数据类型的值。第一个 4 字节存储基础日期(即 1900-1-1, base date )之前或之后的日期。日期范围为 1753-1-1 至 9999-12-31 。当日期为 1900-1-1 时值为 0 ;之前的日期是负数;之后日期是正数。另外一个 4 字节存储以午夜后三又三分之一( 10/3 )毫秒数所代表的每天的时间。精确度为百分之三秒(等于 3.33 毫秒或 0.00333 秒)。如下表所示,把值调整到 .000 、 .003 、或 .007 秒的增量。
3.SQL 如下:
查询中,我们常常需要搜索指定日期范围内的数据,比如返回 1998-01-01 当天内的数据,你可能会这样写:
Date >= '1998-01-01 00:00:00.000' and date <= '1998-01-01 23:59:59.999'
根据上面的调整规则,其实这句语句的实际搜索范围为:
date >= '1998-01-01 00:00:00.000' and date <= '1998-01-02 00:00:00.000'     你会看到这包括了 1998-01-02 的数据,所以最好的正确的搜索语句为:
date >= '1998-01-01 00:00:00.000' and date < '1998-01-02 00:00:00.000'
4. smalldatetime 数据类型存储日期和每天的时间,但精确度低于 datetime 。 SQL Server 将 smalldatetime 的值存储为两个 2 字节的整数。第一个 2 字节存储 1900-1-1 后的天数。另外一个 2 字节存储午夜后的分钟数。日期范围从 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 )
GO4.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-11-07
没有关系的,SQL Server数据库日期类型可以直接插入'1924-04-24'
Access数据库日期类型可以直接插入#1924-04-24#,
可以存储为"1924-04-24 00:00:00.000",
只不过在显示的时候可以控制为显示为"1924-04-24"或"1924/04/24"等都是可以的,
这是可以通过具体的编程语言的格式函数来实现的,也可以直接用SQL语言显示,
呵呵,希望能有帮助,^_^
第2个回答  2008-11-07
你把表中记录日期的字段改为smalldatetime就可以了本回答被提问者采纳
第3个回答  2008-11-07
修改表,设计表的字段的数据类型在字段属性格式中选择“短日期”。
第4个回答  2008-11-07
把你的数据库该字段的类型设为 date 类型
在bean中这样定义
private date flag;

public void setFlag(date flag){
this.flag=flag;
}
public date getFlag(){
return flag;
}
这样在插入数据的时候用setFlag(date flag)就可以了~~呵呵^_^

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网