高分请教,在pd中如何成功生成第归表

wantchy 2004-10-19 09:03:12
在powerdesiger中怎么生成 这种第归表:
ttable
id int pk
pid int fk
name varchar(30)
(自身牵出一条关系给自己)生成的表的例值如下:
ttable
id pid name
1 a
2 b
3 1 c
4 1 d
5 4 e
6 2 f
7 1 g
8 6 h
................
也就是说插入的pid的值必须是在表ttable中存在的id值,说白了就是一个树表.
始终报错,我知道在erwin中,可以选择触发器来控制参照完整性来成功生成这张表,但是pd中,怎么实现呀,各位帮帮忙,指教一下吧! 30
...全文
228 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2005-03-28
  • 打赏
  • 举报
回复
uping......
nm_2j 2004-10-20
  • 打赏
  • 举报
回复
这是我用pd生成的sql脚本,没有问题,外键约束允许为null就可以了。
/*==============================================================*/
/* Database name: ConceptualDataModel_1 */
/* DBMS name: Microsoft SQL Server 2000 */
/* Created on: 2004-10-20 9:45:32 */
/*==============================================================*/


alter table table1
drop constraint FK_TABLE1_PID_TABLE1
go


if exists (select 1
from sysindexes
where id = object_id('table1')
and name = 'pid_FK'
and indid > 0
and indid < 255)
drop index table1.pid_FK
go


if exists (select 1
from sysobjects
where id = object_id('table1')
and type = 'U')
drop table table1
go


/*==============================================================*/
/* Table: table1 */
/*==============================================================*/
create table table1 (
id int not null,
tab_id int null,
name varchar(10) null,
constraint PK_TABLE1 primary key (id)
)
go


/*==============================================================*/
/* Index: pid_FK */
/*==============================================================*/
create index pid_FK on table1 (
tab_id
)
go


alter table table1
add constraint FK_TABLE1_PID_TABLE1 foreign key (tab_id)
references table1 (id)
go


paulowang 2004-10-19
  • 打赏
  • 举报
回复
报了什么错?我在pd的概念模型中做自关联,在物理模型中能生成pid和关系的(就是pid的name和code得重新修改)
Eddie005 2004-10-19
  • 打赏
  • 举报
回复
up

2,596

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧