一、需求背景: 使用PowerDesigner创建表时,若设置某列默认值时,自动生成规则的默认值名称。比如说:DF表名列名
二、设置步骤:
1.选择Database—>Edit Current DBMS
2.选择Scripts-》Objects-》Column-》Add
3.把value 替换成以下内容即可:
%20:COLUMN% [%COMPUTE%?AS [(]%COMPUTE%[)]:[%.L:DATATYPE%=xml?xml[%XMLSchemaCollection%?([%ContentType% ]%XMLSchemaCollection.GeneratedName%): ]:%20:DATATYPE%][.Z:[ collate %ExtCollation%][%.LQ:DataType%=”varbinary(max)”?[%FileStream%? filestream]][%ExtRowGuidCol%? RowGuidCol][%Mandatory%?:[%Sparse%? sparse]][%IDENTITY%? %IDENTITY%[[(%ExtIdentitySeedInc%)][%ExtIdtNotForReplication%? not for replication]]:[%ExtNullConstName%? constraint %ExtNullConstName%][ %NULL%][ %NOTNULL%]][[%ExtDeftConstName%? [ constraint %ExtDeftConstName%]:[ constraint DF%TABLE%%COLUMN%]] default %DEFAULT%]]
[%CONSTDEFN%]]
三、具体分析:很简单的三目表达式
[[%ExtDeftConstName%? [ constraint %ExtDeftConstName%]:[ constraint DF%TABLE%%COLUMN%]]
%ExtDeftConstName% 默认值名称 ;
%TABLE%表名
%COLUMN%列名
%OWNER% 架构名称 (想把默认值设置成DF架构表名_列名,就把这个加上)