Rumah > Artikel > pangkalan data > hibernate与mysql映射类型对应表与mysql导入导出
http://blog.sina.com.cn/s/blog_5f240fc40100etlt.html 一、记录下hibernate mysql映射类型对应表: 1.常规Hibernate 映射 integer 或者 int int 或者 java.lang.Integer INTEGER 4 字节 long long Long BIGINT 8 字节 short short Short SMALLINT 2 字节 b
http://blog.sina.com.cn/s/blog_5f240fc40100etlt.html
一、记录下hibernate mysql映射类型对应表:
1.常规Hibernate 映射
integer 或者 int |
int 或者 java.lang.Integer |
INTEGER |
4 字节 |
long |
long |
BIGINT |
8 字节 |
short |
short |
SMALLINT |
2 字节 |
byte |
byte |
TINYINT |
1 字节 |
float |
float |
FLOAT |
4 字节 |
double |
double |
DOUBLE |
8 字节 |
big_decimal |
java.math.BigDecimal |
NUMERIC |
NUMERIC(8,2)8 位 |
character |
char |
CHAR(1) |
定长字符 |
string |
String |
VARCHAR |
变长字符串 |
boolean |
boolean |
BIT |
布尔类型 |
yes_no |
boolean |
CHAR(1) (Y-N) |
布尔类型 |
true_false |
boolean |
CHAR(1) (T-F) |
布尔类型 |
2 、 Java 时间和日期类型的 Hibernate 映射
映射类型 |
Java 类型 |
标准 SQL 类型 |
描述 |
date |
util.Date 或者 sql.Date |
DATE |
YYYY-MM-DD |
time |
Date |
TIME |
HH:MM:SS |
timestamp |
Date |
TIMESTAMP |
YYYYMMDDHHMMSS |
calendar |
calendar |
TIMESTAMP |
YYYYMMDDHHMMSS |
calendar_date |
calendar |
DATE |
YYYY-MM-DD |
3 、 Java 大对象类型的 Hibernate 映射类型
映射类型 |
Java 类型 |
标准 SQL 类型 |
MySQL 类型 |
Oracle 类型 |
binary |
byte[] |
VARBINARY( 或 BLOB) |
BLOB |
BLOB |
text |
String |
CLOB |
TEXT |
CLOB |
serializable |
Serializable 接口任意实现类 |
VARBINARY( 或 BLOB) |
BLOB |
BLOB |
clob |
java.sql.Clob |
CLOB |
TEXT |
CLOB |
blob |
java.sql.Blob |
BLOB |
BLOB |
BLOB |
在程序中通过 Hibernate 来保存 java.sql.Clob 或者 java.sql.Blob实例时,必须包含两个步骤:
1.在一个数据库事务中先保存一个空的 Blob 或 Clob 实例。
2.接着锁定这条记录,更新上面保存的 Blob 或 Clob 实例,把二进制数据或文本数据写到 Blob 或 Clob实例中
二、mysql数据库导入导出
1.导出整个数据库:
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
如:
在mysql的bin目录里面执行如下命令
C:\MySQL\MySQL Server 5.0\bin>mysqldump -u root -ptestdb > testdb.sql
Enter password:
C:\MySQL\MySQL Server 5.0\bin>
2.导出表
格式:mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
举例:表结构与上面的相同,命令如下:
C:\MySQL\MySQL Server 5.0\bin>mysqldump -u root -ptestdb user > user.sql
Enter password:
C:\MySQL\MySQL Server 5.0\bin>
3.导入数据库
mysql> use testdb;
Database changed
mysql> source testdb.sql;
ALTER TABLE lanke_news DROP COLUMN script_id;