• PowerDesigner生成数据库建表sql脚本


     

     

    PowerDesigner生成数据库建表sql脚本

     一、生成sql server 2000或oracle建表sql脚本
      
      1、新建一个物理模型,通过database菜单下的change current dbms可查看当前所用的DBMS是什么类型的,比如sql server 2000 或oracle 10g,当前选择sql server 2000。
      
      2、在新建的dbms为sql server 2000的物理模型中添加表及关系,通过database菜单下的generate database可将当前DBMS的表结构及关系导出成sql语句。
      
      3、若想将sql server 2000的表结构及关系变成oracl 10g的表结构及关系,可通过Tools菜单下的generate physical data model,再选择DBMS为oracle10g,就可生成oracl10g的表结构及关系。
      
      4、若想将oracl10g中的表结构及关系导出成sql语句,执行database菜单下的generate database可将当前DBMS的表结构及关系导出成sql语句。
      
      
      注意:oracle10g生成的sql语句可能表名及字段名存在用引号括起的情况,不用担心,通过简单的设置即可解决。
      
      
      
      
      二、PowerDesigner生成数据库建表sql脚本时出现双引号解决方法(测试通过的软件版本为PowerDesigner V15.1.0.2850)
      
       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”,点击【应用】按钮。

    http://blog.tianya.cn/blogger/post_read.asp?BlogID=4132684&PostID=39104319
      

  • 相关阅读:
    PHP javascript cookie
    angular.js初探
    熟悉陌生框架或代码, 产品设计小结
    question2answer论坛框架分析及web开发思考
    一个很好用的系统管理的命令lsof(转载)
    Linux nc命令用法收集
    Linux IO实时监控iostat命令详解(转载)
    AIX中查找端口号和进程
    bash之局部变量与子shell(转载)
    Linux下产生随机密码10方法
  • 原文地址:https://www.cnblogs.com/hengli/p/2872702.html
Copyright © 2020-2023  润新知