2) 显式指定主键PK_ORDER使用这个索引。在Table
Properties窗口中切换到Keys页,默认情况下,PowerDesigner为T_ORDER所指定的主键名为Key1,我们将其更名为PK_ORDER,双击这个主键,弹出Key
Properties窗口,切换到Options页,按图 8的方式为PK_ORDER指定IDX_ORDER_ID。

图 8 为主键指定特定的索引
|
不可否认PowerDesigner确实是目前业界最强大易用的数据库设计工具,但很遗憾,当我们为表主键指定一个索引时,其产生的语句在顺序上有问题:即创建主键的语句位于创建索引语句之前:
| create table T_ORDER (…);alter table T_ORDER add constraint
PK_T_ORDER primary key (ORDER_ID) using index IDX_ORDER_ID;create
unique index IDX_ORDER_ID on T_ORDER ( ORDER_ID ASC) reverse; |
我们可以通过对PowerDesigner生成SQL语句的设置进行调整,先生成创建表和索引的SQL语句,再创建为表添加主键和外键的SQL语句来达到曲线救国的目的,请看下一步。
3)通过菜单Database->Generate Database...调出Database
Configuration窗口,切换到Keys&Indexes页,按图 9设置:

图 9 设置生成键和索引SQL的选项
|
这里,我们将Primary Keys和Foreign
keys的选项都取消,而将Indexes勾选,以达到只生成表的索引SQL语句的目的。
点击"确定"后,生成创建数据库表及其索引的SQL语句,运行该SQL创建数据库后,再按图
10设置生成为表添加主键和外键的SQL语句:

图 10 生成创建表主键和外键的SQL语句
|
除此设置外,还必须切换到Tables & Views页下,取消所有选项,避免重新生成创建表的语句。