【数据库】数据库基础比较

1. 数据库类型

    oracle 基本数据类型

数据类型对应关系 ,详情参看 :  oracle docs

SQL Datatypes JDBC Typecodes Standard Java Types Oracle Extension Java Types 

 

STANDARD JDBC 1.0 TYPES:  

 

 

CHAR  

java.sql.Types.CHAR  

java.lang.String  

oracle.sql.CHAR  

VARCHAR2  

java.sql.Types.VARCHAR  

java.lang.String  

oracle.sql.CHAR  

LONG  

java.sql.Types.LONGVARCHAR  

java.lang.String  

oracle.sql.CHAR  

NUMBER  

java.sql.Types.NUMERIC  

java.math.BigDecimal  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.DECIMAL  

java.math.BigDecimal  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.BIT  

boolean  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.TINYINT  

byte  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.SMALLINT  

short  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.INTEGER  

int  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.BIGINT  

long  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.REAL  

float  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.FLOAT  

double  

oracle.sql.NUMBER  

NUMBER  

java.sql.Types.DOUBLE  

double  

oracle.sql.NUMBER  

RAW  

java.sql.Types.BINARY  

byte[]  

oracle.sql.RAW  

RAW  

java.sql.Types.VARBINARY  

byte[]  

oracle.sql.RAW  

LONGRAW  

java.sql.Types.LONGVARBINARY  

byte[]  

oracle.sql.RAW  

DATE  

java.sql.Types.DATE  

java.sql.Date  

oracle.sql.DATE  

DATE  

java.sql.Types.TIME  

java.sql.Time  

oracle.sql.DATE  

DATE  

java.sql.Types.TIMESTAMP  

javal.sql.Timestamp  

oracle.sql.DATE  

 

STANDARD JDBC 2.0 TYPES:  

 

 

BLOB  

java.sql.Types.BLOB  

java.sql.Blob  

oracle.sql.BLOB  

CLOB  

java.sql.Types.CLOB  

java.sql.Clob  

oracle.sql.CLOB  

user-defined object  

java.sql.Types.STRUCT  

java.sql.Struct  

oracle.sql.STRUCT  

user-defined reference  

java.sql.Types.REF  

java.sql.Ref  

oracle.sql.REF  

user-defined collection  

java.sql.Types.ARRAY  

java.sql.Array  

oracle.sql.ARRAY  

 

ORACLE EXTENSIONS:  

 

 

BFILE  

oracle.jdbc.driver.OracleTypes.BFILE  

n/a  

oracle.sql.BFILE  

ROWID  

oracle.jdbc.driver.OracleTypes.ROWID  

n/a  

oracle.sql.ROWID  

REF CURSOR type  

oracle.jdbc.driver.OracleTypes.CURSOR  

java.sql.ResultSet  

oracle.jdbc.driver.OracleResultSet  



      mysql 基本数据类型

数据类型对应关系 : 详情参看:mysql docs

        MySQL Types to Java Types for ResultSet.getObject()

MySQL Type Name Return value ofGetColumnClassName Returned as Java Class
BIT(1) (new in MySQL-5.0) BIT java.lang.Boolean
BIT( > 1) (new in MySQL-5.0) BIT byte[]
TINYINT TINYINT java.lang.Boolean if the configuration property tinyInt1isBit is set to true (the default) and the storage size is 1, or java.lang.Integer if not.
BOOLBOOLEAN TINYINT See TINYINT, above as these are aliases for TINYINT(1), currently.
SMALLINT[(M)] [UNSIGNED] SMALLINT [UNSIGNED] java.lang.Integer (regardless of whether it is UNSIGNED or not)
MEDIUMINT[(M)] [UNSIGNED] MEDIUMINT [UNSIGNED] java.lang.Integer (regardless of whether it is UNSIGNED or not)
INT,INTEGER[(M)] [UNSIGNED] INTEGER [UNSIGNED] java.lang.Integer, if UNSIGNED java.lang.Long
BIGINT[(M)] [UNSIGNED] BIGINT [UNSIGNED] java.lang.Long, if UNSIGNED java.math.BigInteger
FLOAT[(M,D)] FLOAT java.lang.Float
DOUBLE[(M,B)] DOUBLE java.lang.Double
DECIMAL[(M[,D])] DECIMAL java.math.BigDecimal
DATE DATE java.sql.Date
DATETIME DATETIME java.sql.Timestamp
TIMESTAMP[(M)] TIMESTAMP java.sql.Timestamp
TIME TIME java.sql.Time
YEAR[(2|4)] YEAR If yearIsDateType configuration property is set to false, then the returned object type is java.sql.Short. If set to true (the default), then the returned object is of type java.sql.Date with the date set to January 1st, at midnight.
CHAR(M) CHAR java.lang.String (unless the character set for the column is BINARY, then byte[] is returned.
VARCHAR(M) [BINARY] VARCHAR java.lang.String (unless the character set for the column is BINARY, then byte[] is returned.
BINARY(M) BINARY byte[]
VARBINARY(M) VARBINARY byte[]
TINYBLOB TINYBLOB byte[]
TINYTEXT VARCHAR java.lang.String
BLOB BLOB byte[]
TEXT VARCHAR java.lang.String
MEDIUMBLOB MEDIUMBLOB byte[]
MEDIUMTEXT VARCHAR java.lang.String
LONGBLOB LONGBLOB byte[]
LONGTEXT VARCHAR java.lang.String
ENUM('value1','value2',...) CHAR java.lang.String
SET('value1','value2',...) CHAR java.lang.String


2. 默认当前时间

       oracle 中 默认当前时间

      使用  sysdate

栗子:

create table user (
id varchar2(100) not null primary key,
name varchar2(50) not null,
create_time default sysdate
)
tablespace xlch;

      mysql 中 默认当前时间

      使用  DEFAULT CURRENT_TIMESTAMP    |    ON UPDATE CURRENT_TIMESTAMP  ,同时使用时无先后顺序 ,任何 和  current_timestamp 同义词的 函数都可以使用,具有同义词的如下: current_timestamp()  |  now()  |   localtime  |  localtime()  |   localtimestamp  | localtimestamp()

mysql 中  TIMESTAMP 类型的列 和 DATETIME 类型的列 可以自动初始化  和   自动更新当前时间 日期。

     ——自动初始化 :当插入记录没有指定该列的值时,自动初始化列  将被设置为 当前的 timestamp . (类似与 oracle 中的  default sysdate)

     ——自动更新:当 一条记录 中的任意某列值发生改变,自动更新的列 将被自动更新到当前的 timestamp ,如果 一条记录的 其他列的值 被设置为当前值 , 自动更新的列不更新

另外 ,也可以 指定其为 null  值(默认是不允许为 null)


栗子:

mysql> create table user(
    -> id int not null auto_increment,
    -> name varchar(50) not null,
    -> create_time datetime default current_timestamp,
    -> update_time timestamp default current_timestamp on update current_timestamp,
    -> primary key(id)
    -> );
Query OK, 0 rows affected (1.53 sec)

   验证操作:

mysql> insert into user (name) values ('xlch');                      
Query OK, 1 row affected (0.22 sec)                                  
                                                                     
mysql> select * from user;                                           
+----+------+---------------------+---------------------+            
| id | name | create_time         | update_time         |            
+----+------+---------------------+---------------------+            
|  1 | xlch | 2016-12-12 13:19:28 | 2016-12-12 13:19:28 |            
+----+------+---------------------+---------------------+            
1 row in set (0.18 sec)                                              
                                                                     
mysql> update user set name = 'ssx' where id = 1;                    
Query OK, 1 row affected (0.41 sec)                                  
Rows matched: 1  Changed: 1  Warnings: 0                             
                                                                     
mysql> select * from user;                                           
+----+------+---------------------+---------------------+            
| id | name | create_time         | update_time         |            
+----+------+---------------------+---------------------+            
|  1 | ssx  | 2016-12-12 13:19:28 | 2016-12-12 13:21:25 |            
+----+------+---------------------+---------------------+            
1 row in set (0.00 sec)                                              
                                                                     


3. java 中时间类型区别

    java.util.Date  |  java.sql.Date | java.sql.Time | java.sql.Timestamp  区别

java.util.Date 是 以下三个类的 父类 。

java.sql.Date : 对应 sql 中的 date 类型,即只保留 年,月,日,而时,分,秒,毫秒都会被忽略,而且 没有绑定 时区(timezone);
java.sql.Time : 对应 sql 中的 time 类型,,只保留 时,分,秒,毫秒,而其他的 年,月,日会被忽略;
java.sql.Timestamp : 对应 sql 中的 timestamp 类型 ,能够自定义精度,并且能精确到纳秒级(java.util.Date 只能支持到毫秒级)。

4.类型转换

oracle日期类型转换 :

    ★ date→  string  : to_char(date,format)

select to_char(sysdate,'yyyy-mm-dd HH24:MI:SS') from dual;


    ★ String → date : to_date(value,format)

    ★ timestamp →  date

     java 中的 timestap 类型 转为 oracle数据库的 date类型

           思路一: 先转为字符串 (to_char()),然后转为 date(to_date());

           思路二: 使用内置函数 cast();函数详情介绍参看:CAST

                            cast 用于 将内置的数据类型 或者 集合类型的值 转换为 另一种内置数据类型 或者 集合类型的值。

栗子:

select cast(systimestamp as date) from dual;

          思路三:使用内置函数 trunc(date [,format])   返回 被截取的 date 类型,详情参看: oracle docs  或者  techonthenet
select trunc(systimestamp,'DDD') from dual;;--截取到 日

mysql 日期类型转换

          详情参看 :Date 和 String 相互转换

    ★ date → string:date_format(date,format)

    ★ string→ date:str_to_date(str,format)







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
大学生在线租房平台管理系统按照操作主体分为管理员和用户。管理员的功能包括报修管理、报修评价管理、字典管理、房东管理、房屋管理、房屋收藏管理、房屋留言管理、房屋租赁管理、租房论坛管理、公告信息管理、留言板管理、用户管理、管理员管理。用户的功能等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 大学生在线租房平台管理系统可以提高大学生在线租房平台信息管理问题的解决效率,优化大学生在线租房平台信息处理流程,保证大学生在线租房平台信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理大学生在线租房平台信息,包括房屋管理,培训管理,报修管理,薪资管理等,可以管理公告。 房屋管理界面,管理员在房屋管理界面中可以对界面中显示,可以对房屋信息的房屋状态进行查看,可以添加新的房屋信息等。报修管理界面,管理员在报修管理界面中查看报修种类信息,报修描述信息,新增报修信息等。公告管理界面,管理员在公告管理界面中新增公告,可以删除公告。公告类型管理界面,管理员在公告类型管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
基于hal库的OLED显示屏驱动C语言实现源码.zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip基于hal库的OLED显示屏驱动C语言实现源码.zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值