1、@Transient表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性. 如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient,否则,ORM框架默认其注解为@Basic。
2、Java中transient关键字的作用,简单地说,就是让某些被修饰的成员属性变量不被序列化。
3、迁移数据库的语句:
从 gx_ids 的数据库迁移数据到本地:
1 insert into IDS_SYS_PARAM select * from gx_ids.Ids_Sys_Param
注意:
① IDS_SYS_PARAM 表的字段要与 gx_ids.Ids_Sys_Param 表的字段一一对应
② 这里使用了 select * ,所以不需要 values关键字
例子:
① 目标表不存在
create table 目标表 as select * from 原表 where 1=0 (只复制表结构)
create table 目标表 as select * from 原表; 复制表结构和数据
② 目标存在
insert into 目标表 select * from 原表;
commit;
4、truncate 、 delete 与 drop 的区别:
用 truncate、delete 与 drop 都可以清空表中数据
SQL 如下:
truncate table [表名];
delete from [表名];
drop table [表名];
区别:
delete:会产生 rollback,如果删除大数据量的表速度会很慢,同时会占用很多 rollback segments.
可以恢复删除的数据,但是提交了,就没办法了,delete 删除的时候,会记录日志 ---> 删除会很慢很慢
truncate:是 DDL 操作,不产生 rollback,速度快。
删除所有数据,不会影响表结构,不会记录日志,数据不能恢复 ---> 删除很快
drop:删除所有数据,包括表结构一并删除,不会记录日志,数据不能恢复 ----> 删除很快
5、数据库:
DDL:数据库模式定义语言DDL(Data Definition Language),是用于描述数据库中要存储的现实世界实体的语言。
DML:数据操纵语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。
DCL:数据控制语言 (Data Control Language) 在SQL语言中,是一种可对数据访问权进行控制的指令,它可以控制特定用户账户对数据表、查看表、存储程序、用户自定义函数等数据库对象的控制权。
TCL:事务控制语句
DQL:Data QueryLanguage 数据查询语言
6、重新生成数据库主键的UUID:
update IDS_SYS_PARAM t set t.mk_id = sys_guid();