PD16 Generate Datebase For Sql2008R2时报脚本错误“对象名sysproperties无效”

PowerDesinger16创建数据库表到SQL2008R2时,执行报“对象名sysproperties无效”错误。

主要是在建模时我们对表、列增加了些说明注释,而Sql2005之后系统表sysproperties已废弃删除而改用sys.extended_properties所致。

此问题解决主要参考了http://hi.baidu.com/xuefliang/item/45e7f71421d5a67871d5e8e2

1、修改Table TableComment模板

路径是 Database -> Edit Current DBMS 窗体 General 选项卡 下 Script -> Objects -> Table –> TableComment

[if exists (select 1
            from  sys.extended_properties
            where  major_id = object_id(‘[%QUALIFIER%]%TABLE%‘)
            and   minor_id = 0 )
/* SQL2008 属性表sysproperties改为 sys.extended_properties代替,替换以下脚本
[if exists (select 1
            from  sysproperties
           where  id = object_id(‘[%QUALIFIER%]%TABLE%‘)
            and   type = 3)
*/

2、修改Column ColumnComment模板

路径是 Database -> Edit Current DBMS 窗体 General 选项卡 下 Script -> Objects -> Column –> ColumnComment

[if exists (select 1
            from  sys.extended_properties
            where  major_id = object_id(‘[%QUALIFIER%]%TABLE%‘)
            and   minor_id <> 0 and name = ‘MS_Description‘)
/* SQL2008 属性表sysproperties改为 sys.extended_properties代替,替换以下脚本
if exists (select 1
            from  sysproperties
           where  id = object_id(‘[%QUALIFIER%]%TABLE%‘)
            and   type = 4)
*/

也可创建sysproperties视图来,通过此视图处理以上问题。

 if exists (select 1
              from  sysobjects
             where  name = ‘sysproperties‘
              and   xtype = ‘V‘)
  begin
   DROP VIEW sysproperties
  end
  GO  

  CREATE VIEW sysproperties
  AS
  SELECT A.name As TableName,A.id As TableID,B.Name As ColName,B.colid As ColID,B.xtype As ColType,C.name As PropName,C.Value As PropValue
  FROM sysobjects As A
  INNER JOIN syscolumns As B ON A.id = B.id
  INNER JOIN sys.extended_properties As C ON C.major_id = A.id AND ( minor_id = B.colid)  
时间: 2024-08-05 04:15:31

PD16 Generate Datebase For Sql2008R2时报脚本错误“对象名sysproperties无效”的相关文章

解决PowerDesigner 16 Generate Datebase For Sql2005/2008 对象名sysproperties无效的问题

在PowerDesigner 16 中生成的sql语句,在执行的时候报错:对象名sysproperties 无效的错误;造成此问题的原因是由于Sql 2005.2008 删除了系统表 sysproperties 而改用 sys.extended_properties 表所致 , 以下是通过创建sysproperties视图,以及修改powerdesigner sql语句生成模板后, 再生成数据库SQL脚本执行,共分为三部: 第一步:在Sql 2005/2008 Exec the Sql 创建Vi

PowerDesigner16 生成的备注脚本,在sql server 2008 中报“对象名 &#39;sysproperties&#39; 无效”的错误的解决办法

主要是在建模时我们对表.列增加了些说明注释,而Sql2005之后系统表sysproperties已废弃删除而改用sys.extended_properties所致. 1.修改Table TableComment 部分 菜单Database -> Edit Current DBMS 窗体 General 选项卡 下 Script -> Objects -> Table –> TableComment 在开头部分替换如下: [if exists (select 1           

NHibernate could not get or update next value[SQL: ] 对象名 &#39;hibernate_unique_key&#39; 无效。

错误信息: --------------------------- --------------------------- NHibernate.Exceptions.GenericADOException: could not get or update next value[SQL: ] ---> System.Data.SqlClient.SqlException: 对象名 'hibernate_unique_key' 无效. 在 System.Data.SqlClient.SqlConn

com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;xxxxx&#39; 无效

一般这种问题就是由于大家在.hbm.xml定义的数据库表名和数据库的关键字冲突了,导致产生这样的错误.但我今天遇到了下面的错误,看着像是那个问题,不过我整了好久并不是关键字冲突问题,由于是手工配置,在配置时将正确的 hibernate.hbm2ddl.auto=update误写成了hibernate.hbm2ddl=update导致下边的错误,好几个小时就在痛苦中度过了.. Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 对

【WPF学习笔记】之 System.Exception 对象名 &#39;XXXX&#39; 无效。

我在运行vs时候发现项目报错,如下图: 报Exception错误,对象名"XXXXXX"无效. 经过调查得知,因为连接数据库的库名写错了,如下: 对应正确数据库的库名: 把库名改正确,问题就解决了. [WPF学习笔记]之 System.Exception 对象名 'XXXX' 无效.

数据库对象名无效

对象名 ‘tablename’ 无效的问题 这里可能会有人遇到对象名 ‘tablename’无效的问题.系统表却不会产生这个问题,而用户表还要加上用户名,然后是表明才能访问,比如select * from author,会说对象名 author 无效,而用select * from test.author就可以访问,这个是用户首选身份的问题. 方法一: 解决很简单,就是察看test登录用户是否具有dba的权限或者系统管理的权限,有的话去掉就行了. 因为如果用户有dba身份,那么它登陆后的默认表空

SQL对象名无效的解决

SQL对象名无效的解决方法 产生SQL对象名无效的问题大多原因是由于数据迁移导致的,下面我们给出解决方法. 在使用数据库的过程中,经常会遇到数据库迁移或者数据迁移的问题,或者有突然的数据库损坏,这时需要从数据库的备份中直接恢复.但是,此时会出现问题,这里说明几种常见问题的解决方法. 一.孤立用户的问题 比如,以前的数据库的很多表是用户test建立的,但是当我们恢复数据库后,test用户此时就成了孤立用户,没有与之对应的登陆用户名,哪怕你建立了一个test登录用户名,而且是以前的用户密码,用该用户

类名 对象名 =new 类名();

类名 对象名 =new 类名();该怎么理解 类名 对象名 =new 类名();=左边:创建一个类的对象=右边:调用这个类的构造函数初始化对象,类名()这个是构造函数,用来做初始化的.

java连接sqlserver2008报错 java.sql.SQLException: 对象名 &#39;表名&#39; 无效.

注意:c3p0的数据库配置方式为: <named-config name="sqlsvr"> <property name="driverClass">net.sourceforge.jtds.jdbc.Driver</property> <property name="jdbcUrl">jdbc:jtds:sqlserver://localhost:1433/WaterNet_DaFeng<