我的数据库是SQL2005,脚本文件已经写好了,想用powerDesigner生成数据库表关系图,怎么生成??

如题所述

你这个貌似不是正常的流程:一般是写脚本比较烦,所以先用PowerDesigner创建数据库表结构,然后生成脚本。

但基于你的需求,可以用PowerDesigner的逆向工程。
1. 用脚本先在SQL2005创建所有的表。
2. 用PowerDesigner的逆向工程反向导出表。
2.1 先配置数据库的连接信息。创建一个ODBC的数据源(如果你的电脑上有测试用的数据源,可以忽略此步骤)打开控制面板->管理工具->数据源(ODBC)->系统DSN->点击“添加”按钮->在创建新的数据源中选择驱动程序为Sql Server->点击完成按钮,填写你自己的对应的信息
2.2 创建数据库文件PDM,通过菜单:打开Power Designer->Reverse Engineer->DataBase

如果还不明白逆向工程,或版本不匹配,可以再搜一下powerdesigner 逆向工程。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-19
下面是我从网上看的文章,说的是oracle,oracle跟sql配置差不多,用ODBC,希望能帮上你:

使用PowerDesigner生成数据库建表SQL脚本时,尤其是Oracle数据库时,表名一般会带引号。其实加引号是PL/SQL的规范,数据库会严格按照“”中的名称建表,如果没有“”,会按照 ORACLE默认的设置建表(DBA STUDIO里面),默认是全部大写,这样,在ORACLE数据库里的字段就如“Column_1”。如果你把引号去掉,ORACLE自动默认为全部大写,即“COLUMN_1”,所以这段SQL在PL/SQL中执行的时候是没有任何问题的,如果不加引号,在PL/SQL会自动识别为大写。如果加了引号,sql或者hql查询“Column_1='XXX'”时,就会报错:ORA-00904: "COLUMN_1": 无效的标识符,除非写为“‘Column_1’='XXX'”。

这个问题是生成脚本格式的问题,因此,我们可以尝试在DBMS配置文件中修改相应的格式设置来解决这个问题。选择DBMS Properties,选择Script->Sql->Format,有一项CaseSensitivityUsingQuote,它的comment为“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否适用双引号来规定标识符的大小写,可以看到右边的values默认值为“YES”,改为“No”,点击【应用】按钮。
第2个回答  2011-05-20
你是用ODBC连接的数据库然后生成的吗?建议你还是生成SQL然后用语句去执行建表。看看有没有什么警告或者错误。估计是哪儿出错了,有2个表没建上。
相似回答