`
weitao1026
  • 浏览: 999253 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多
不同的数据库中字符串连接符不同,下面列举几种数据库的连接符:
1、oracle数据库中的连接符为||,例如连接字符串AB、CD可以使用“AB”||“CD”;
2、SQL SERVER 数据库连接符为+,例如连接字符串AB、CD可以使用“AB”+“CD”;
3、MYSQL数据库中连接符为+,例如连接字符串AB、CD可以使用“AB”+“CD”;


MySQL(版本:5.1.50)的时间日期类型如下:

datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59:59
timestamp 4bytes xxxx-xx-xx xx:xx:xx 1970-01-01 00:00:01到2038
date 3bytes xxxx-xx-xx 1000-01-01到9999-12-31
year 1bytes xxxx 1901到2155
time 3bytes xx:xx:xx -838:59:59到838:59:59(为了满足时间的加减运算)

 

 

Java(1.6) 中能保存时间日期类型的类主要有

java.util.Date

java.util.Calendar

java.sql.Date

java.sql.Time

java.sql.Timestamp

 

      以前从mysql中查询出来的时间日期类型,都放在java.util.Date类型里面了。这样带来一系列的问题,首先这个类提供的时间操作函数太少,一般都需要转换成java.util.Calendar再去操作;其次即使使用了java.util.Calendar,也不是很方便,一个很简单的想法,需要写很多代码才能实现;java.util.Date的数据内容为xxxx-xx-xx xx:xx:xx,有时候不需要时间,只需要日期。从数据库中取值出来的日期类型放到这个类中的时候,会在时间位自动补上当前时间。这使得本来两个日期在数据库中是相等的,取出来放到这个类得时候就不再相等了,需要去考虑时间上的误差,很是头疼。

 

java提供与mysql方便交互的三种数据类型

 

java.sql.Date

java.sql.Time

java.sql.Timestamp

它们都是继承java.util.Date,算是对该类的精简,很适合跟数据库交互。

 

===========java注入数据库==========

java类型   mysql类型        成功与否
date         date               yes
date         time               no
date         timestamp       no
date         datetime         no

time         date               no
time         time               yes
time         timestamp       no
time         datetime         no

timestamp date              yes
timestamp time              yes
timestamp timestamp     yes
timestamp datetime        yes
==========end 
java注入数据库========
总规律,如果A完全包含B,则A可以向B注入数据,否则报错


 

==========从数据库提取到java ==========

mysql类型    java类型     成与否
date             date         yes
date             time         yes --------------缺少的部分使用历元
date           timestamp   yes --------------缺少的部分使用历元  

time           date           yes --------------缺少的部分使用历元
time           time           yes
time          timestamp    yes --------------缺少的部分使用历元

timestamp date           yes
timestamp time           yes
timestamp timestamp   yes

datetime      date         yes
datetime      time         yes
datetime    timestamp   yes
==========end
 从数据库提取到java=======
不会出错,缺少的部分使用历元,而不是当前日期时间

 

 

 

 

 


null to db(null) =====> 也是null  
null to db(not null)=======> 数据库报错
db(null) to java==========> 如果单字段出来,则整个entity都是null,如果带着其他不是null的字段出来,则可以实例化entity,本身字段依然是null
db(not null) to java==========> 如果包含日期,则报错,否则为000
最优解决方案,定义成可以为null

java.sql时间系统的运算系列

after,before
compareTo原小于参数返回<0,等于返回=0,大于返回>0

优点:于数据库同类型,可以方便传输(无论是从DB到src还是反方向),方便比较大小
缺点:缺少运算单元,不适合时间跳跃的运算和间隔的运算

总结:calendar具有强大的跳跃运算和间隔运算能力,在需要的时候,可以将sql系列的时间转成calendar。
先设置calendar为历元,然后从sql系列时间中转换,最后再转回sql系列时间。
calendar只用于时间有跳跃的转换,对比运算统一使用sql系统,这样代码将更清晰

 

 

 

 

date 和 calendar怎么初始化为格林威治时间

new date(0)
calendar.setTimeInMillis(0)


sql系列时间

static valueOf


new XX(0)获得历元
new XX(year+1900, month+1,day,hour,minute,second,nano)已过时,创建也没错

toString或者SimpleDateFormat

 

分享到:
评论

相关推荐

    带数据库的博客系统 aspnet sql

    带数据库的博客系统 用aspnet 编程 数据库是sql,可以当做课设和实验报告 直接用 只要改改数据连接符就行了 相信对会员有用

    mac数据生成器

    专门生成mac数据的软件,共三种生成方式:固定mac头、顺序生成mac、全部随机,可以选择生成的数量、字母大小写、连接符

    Excel 2007数据透视表完全剖析 1/7

    9.2 连接到OLAP多维数据集 188 9.3 理解OLAP多维数据集的结构 191 9.4 理解OLAP数据透视表的局限性 192 9.5 创建脱机多维数据集 193 9.6 摆脱具有多维数据集函数的数据透视表模板 196 9.7 下一步 198 ...

    Excel 2007数据透视表完全剖析 3/7

    9.2 连接到OLAP多维数据集 188 9.3 理解OLAP多维数据集的结构 191 9.4 理解OLAP数据透视表的局限性 192 9.5 创建脱机多维数据集 193 9.6 摆脱具有多维数据集函数的数据透视表模板 196 9.7 下一步 198 ...

    Excel 2007数据透视表完全剖析 4/7

    9.2 连接到OLAP多维数据集 188 9.3 理解OLAP多维数据集的结构 191 9.4 理解OLAP数据透视表的局限性 192 9.5 创建脱机多维数据集 193 9.6 摆脱具有多维数据集函数的数据透视表模板 196 9.7 下一步 198 ...

    使用Python将Mysql的查询数据导出到文件的方法

    mysql官方提供了很多种connector,其中包括...1. 连接: import mysql.connector cnx = mysql.connector.connect(user='scott', password='tiger', host='127.0.0.1', database='employees') cnx.close() 2. 查询:

    LoRa网关节点汇聚传感器数据2.pptx

    OLED显示屏的驱动程序目前只支持ASCII码字符显示,不支持中文和其他编码。对于温湿度数据,温度单位是“℃”,这个“℃”符号在OLE屏上无法显示,因为没有它对应的字库,所以当网关收到温度的数据显示在显示屏上时就...

    oracle数据同步到Greenplum的python脚本

    4、脚本避免转义字符将‘\’替换为‘/’,数据中存在分割符:^转换为# 5、特殊字符处理:删除:'\u0000','"',oracle数据回车符:'\r','\n' 6、支持按分区导入 7、支持内存处理数据导入greenplum,导入失败生成csv格式...

    e语言-易语言解决服务器与客户端组件粘包的方法

     临时数据 = 临时数据 + 取回数据 ' 检测到结尾符出现,说明数据已经发送完毕,这里把最后发送来的带有结尾符的数据加上就OK了。  临时数据 = 子字节集替换 (临时数据, 到字节集 (“结尾符”), ,...

    Excel 2007数据透视表完全剖析 5/7

    9.2 连接到OLAP多维数据集 188 9.3 理解OLAP多维数据集的结构 191 9.4 理解OLAP数据透视表的局限性 192 9.5 创建脱机多维数据集 193 9.6 摆脱具有多维数据集函数的数据透视表模板 196 9.7 下一步 198 ...

    数据库与数据表设计.pptx

    字段符 数据类性 主键否 描述 ID Varchar(5) 是 编号 Name Varchar(20) 否 职工姓名 Sex Varchar(4) 否 性别 Phone Varchar(13) 否 家庭电话 QQ Varchar(15) 否 QQ号 WorkPhone Varchar(13) 否 工作...

    数据分析 Web 应用程序

    处理丢失数据、索引合并和轴连接 您可以下载/导出编辑的数据。 查看演示:https://data-analysis-webapp.herokuapp.com/ 如何运行: 使用以下命令安装requirements.txt文件中提到的所有库pip3 install -r ...

    application:应用程序元数据描述符CRD

    它提供: 描述应用程序元数据的能力(例如,像WordPress这样的应用程序正在运行) 将基础结构(例如Deployments)连接到根对象的点。 这对于将事物捆绑在一起,甚至进行清理(即垃圾收集)很有用。 支持应用程序的...

    史上最全经典数据结构算法c语言实现代码合集

    C标志符命名源程序.txt erre.txt erre2.txt ff.txt for循环的.txt list.log N皇后问题回溯算法.txt ping.txt re.txt source.txt winsock2.txt ww.txt 万年历.txt 万年历的算法 .txt 乘方函数桃子猴....

    PTSJ通用数据库管理系统9.3

    PTSJ通用数据库管理系统9.3 主要功能有: 一、字段开关与顺序控制功能。可控制数据显示表、记录排序表、浏览...与9.1版相比,9.2版增加了本数据分隔符转换功能;进一步完善了导入导出功能,使导入导出成功率更高。

    MySQL数据插入和更新,使用Python语言和MySQL连接库示例代码

    通过使用占位符(%s),我们可以将要插入的值作为参数传递给execute方法。在这个例子中,我们插入了一个名为"John Doe",邮箱为"johndoe@example.com"的用户数据。 使用UPDATE语句,我们将新的邮箱地址"newemail@...

    数据库实验报告 SQL查询 ,子查询组合

    ,了解SQL语句的数据定义与数据更新功能,了解SQL语句的查询功能,掌握SQL中的数据定义语句的用法,熟练掌握SQL中的插入、修改和删除语句的操作,熟练掌握使用SQL语句进行数据库的简单查询、连接查询。 实验内容和...

    快速数据挖掘数据分析实战RapidMiner工具应用第12章 文本挖掘V1.1.pdf

     连接至文本,并将其导入为文本挖掘模型的数据来源。  在 RapidMiner 中开发一个文本挖掘模型,其中包括常用的文本操作符,例如tokenization、stop word filtering等。  对文本挖掘结果应用其他数据挖掘模型,...

    西门子SIMATIC PCS7的工程师站系统技术问题4.pdf

    西门子SIMATIC PCS7的工程师站系统技术问题4pdf,西门子SIMATIC PCS7的工程师站系统技术问题4:在CFC图中如何使用全局操作符将不同的数据类型和参数连接在一起?

    ASP.NET连接Oracle数据库完整实例(简单实例)

    ASP.NET连接Oracle数据库实例程序,根据sql.txt创建数据表后,更改WEB.config文件中Oracle字符串连接符中的数据库UID及PASSWORD,或许还需要再次引入System.Data.OracleClient,有问题可留言我

Global site tag (gtag.js) - Google Analytics