三大框架整合后,在使用自动生成表时oracle报缺少右括号,用注解写的,求大神指导

三大框架整合后,在使用自动生成表时oracle报缺少右括号,用注解写的,求大神指导,第1张

大概看了一下,这里错了

oracle数据库里面没有verchar2(50)这个数据类型

改成

varchar2(32)

试一下,看是否有其他错误。

 选定一个编辑的表,右键- >Properties- >Columns- >Customize Columns and Filter(或直接用快捷键Ctrl+U)- >Comment(前面打勾)- >OK

d出的窗口中,选中COMMENT

确定后注释列就出来了,这样所有的表都是这样的(刚才的 *** 作像是在 *** 作一个模板一样)

问题二:如何用PowerDesigner的逆向工程,从数据库中加载数据表信息?

  第一步:先反向工程,文件-逆向工程-DATABASE(从数据库中加载数据表,字段=信息)

选择数据库类型:如我SQL2005

//数字字典导出 使用 PDMReader数据字典阅读器官方网站

两种方式:

方式1:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解

@Id

@SequenceGenerator(name="名称A", sequenceName="库中已存在的sequence名称",allocationSize=递增值)

@GeneratedValue(strategy=GenerationTypeSEQUENCE, generator="名称A")

方式2:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解

@Id

@TableGenerator(name="名称A",allocationSize=递增值)//若不指定递增值,则生成的主键值不一定连续

@GeneratedValue(strategy=GenerationTypeTABLE, generator="名称A")

总结:方式1:针对Oracle效率略高,但需要手工创建sequence才能使用。

方式2:不依赖数据库,可移植性好,但相比方式1,效率略低。

1、先创建序列:

CREATE SEQUENCE myseq--创建序列,名为:myseq

STARTWITH 1 --从1开始

MAXVALUE999999999 --最大值

INCREMENT BY 1 --每次递增 1

ORDER--排序

NOCYCLE;--避免重新开始,关闭循环

2、hibernate 配置

21、hibernate 注释配置

2privateIntegerid;

3@Id

4@GeneratedValue(strategy=GenerationTypeSEQUENCE,generator="myseq_test")

5@SequenceGenerator(name="myseq_test",sequenceName="myseq",allocationSize=1)

6publicIntegergetId(){

7returnid;

8}

9publicvoidsetId(Integerid){

10thisid=id;

11}

注:其中myseq为序列名称,myseq_test 为myseq别名。allocationSize要注意:我参考官方文档配置,但是官方文档没有配置这个属性,导致我的序列默认不是按照1递增的,

加上就可以了。

22、hibernatexml配置,在你的hbmxml中配置

2<idcolumn="ID"name="id"type="integer">

3<generatorclass="sequence">

4<paramname="sequence">seq_id</param>

5</generator>

6</id>

SELECT bcolumn_name column_name -字段名

,bdata_type data_type -字段类型

,bdata_length -字段长度

,acomments comments -字段注释

FROM user_col_comments a

,all_tab_columns b

WHERE atable_name = btable_name and

atable_name = 'table_name';

扩展资料:

关于获取oracle表中所有需要的信息(字段、注释、类型等等)

一、获取表字段:

select

from user_tab_columns

where Table_Name='用户表'

order by column_name

二、获取表注释:

select

from user_tab_comments

where Table_Name='用户表'

order by Table_Name

三、获取字段注释:

select

from user_col_comments

where Table_Name='用户表'

order by column_name

/ 获取表:/

select table_name from user_tables; //当前用户的表   

select table_name from all_tables; //所有用户的表

select table_name from dba_tables; //包括系统表

select table_name from dba_tables where owner='zfxfzb'

/

user_tables:

table_name,tablespace_name,last_analyzed等

dba_tables:

ower,table_name,tablespace_name,last_analyzed等

all_tables:

wer,table_name,tablespace_name,last_analyzed等

all_objects:

ower,object_name,subobject_name,object_id,created,last_ddl_time,timestamp,status等

/

/  获取表字段:/

select from user_tab_columns where Table_Name='用户表';

select from all_tab_columns where Table_Name='用户表';

select from dba_tab_columns where Table_Name='用户表';

/ user_tab_columns:

table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等

all_tab_columns :

ower,table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等

dba_tab_columns:

ower,table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等

/

/  获取表注释:/

select from user_tab_comments

/

user_tab_comments:table_name,table_type,comments

相应的还有dba_tab_comments,all_tab_comments,这两个比user_tab_comments多了ower列。

/

/ 获取字段注释:/

select from all_col_comments

/

user_col_comments:table_name,column_name,comments

相应的还有dba_col_comments,all_col_comments,这两个比user_col_comments多了ower列。

/

以上就是关于三大框架整合后,在使用自动生成表时oracle报缺少右括号,用注解写的,求大神指导全部的内容,包括:三大框架整合后,在使用自动生成表时oracle报缺少右括号,用注解写的,求大神指导、如何用PowerDesigner 逆向工程导出ORACLE数据库 表+字段+注释、在java开发中,用Jpa 做持久层 使用的数据库是oracle 关于主键生成策略,及注解是怎样使用的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9523121.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存