powerdesign实现导出的sql语句带主键

本文介绍如何在PowerDesigner中正确生成SQL Server 2000的建表脚本,特别是如何设置和调整主键字段,确保生成的SQL脚本能够准确反映数据库表结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     说说sqlserver2000情况下吧,pd导出sql语句,表是不带主键的。但是这个问题可以解决:

     双击你在pd里面所建的表--》选择“perview”,可以查看这张表的建表语句。

    举个例子:表1

   

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

/*
==============================================================*/
/* Table: T_SA_FIELD                                            */
/*
==============================================================*/
create table T_SA_FIELD (
   SAFIELDRECID         int                  null
,
   SARECID              int                  null
,
   FIELDNAME            varchar(
100)         null,
   FIELDTYPE            DECIMAL              null
)
go

     其中,SAFIELDRECID是此表的主键自增id,但是导出来的时候主键却不对。怎么解决呢?

    看看pd的建表解决这个问题的正确例子吧:

   

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

/*
==============================================================*/
/* Table: T_SA_FIELD                                            */
/*
==============================================================*/
create table dbo.T_SA_FIELD (
   SAFIELDRECID         int                  identity(
1, 1),
   SARECID              int                  null
,
   FIELDNAME            varchar(
1000)        null,
   constraint PK_T_SA_FIELD primary key (SAFIELDRECID)
         ON 
[PRIMARY]
)
ON 
[PRIMARY]
go

       看看这个语句上面带颜色的部分,对比一下区别,很明显的。我是把sqlserver2000里的数据库导成sql语句脚本。

然后打开pd,选择“file”--“reverse  engineer”--“database”选择刚才导出的sql脚本,在sql脚本里面吧相应的内容按着上面的改一下保存。然后再选择“file”--“reverse  engineer”--“database”,把刚改过的sql脚本导入pd就OK了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值