0

我正在使用 Power Designer 创建数据库模型。在我的一张表中,我创建了一个 Check 约束,它调用一个函数来验证属性。我的表创建脚本如下所示

   create table tbl_Inventory (
      Id      int                  identity,
      Name    VARCHAR(50)          not null
      constraint CK_Inventory_Name check (([dbo].[fn_CheckNameComplexLogic]([Name]) = 1)),
      constraint PK_Inventory primary key (Id),
   )

我还创建了一个fn_CheckNameComplexLogic执行检查的函数。

当我尝试通过数据库->生成数据库来使用代码生成工具时。生成的代码总是create table放在create function. 因为我的表依赖于函数,所以脚本总是出错。我可以手动编辑生成的代码,但我想知道 PowerDesigner 中是否有一个地方可以配置它。

谢谢你的帮助。

4

2 回答 2

0

If 可能有点矫枉过正,但您可以更改生成顺序以将(所有)功能(包含在Procedure类别中)放在Table.

  • 将 DBMS 嵌入到您的模型中Database>Change Current DBMS
  • 编辑它Database>Edit Current DBMS
  • 更改项目中的顺序Script\Objects\GenerationOrder(使用 XML 视图)
  • 放在Procedure上面Table
于 2014-06-06T15:00:37.497 回答
0

只需在 %MINMAX% 和 %LISTVAL% 以及 %CASE% 和 %RULES% 等所有构造之后将条件添加到列属性的附加检查选项卡中,然后在此处写下您的条件...

于 2016-10-12T14:56:40.673 回答