一些内容摘自网络:
法1 :用PowerDesigner12利用ODBC连接SQL2005进行反向工程时,报下面的错误:
---------------------------
PowerDesigner - Error
---------------------------
Unable to list the tables.
[Microsoft][ODBC SQL Server Driver][SQL Server]未能准备语句。
SQLSTATE = 37000
处理办法如下:
1、在建立ODBC时,把"更改默认的数据库为"这个选项去掉执行
2、在新的界面选择数据库(注:是在Database Reverse Engineering界面而不是Database Reverse Engineering Options 界面)。
注意:主要是数据库的版本不一致等等,检查是否一致如sql 2000 与sql2005
可以通过在PD 的database-->change current DBMS... 和 configure connection... 进行检查
法2 :
在PowerDesigner12 逆向工程DataBase SQl2005时出现:unable to list the tables 信息
此时应该设置sqlserver2005数据库的行为设置为指定Sql server版本兼容:
执行:EXEC sp_dbcmptlevel 'dbname
', '90';
GO
要为其更改兼容级别的数据库的名称。数据库名称必须符合标识符的规则。name 的数据类型为 sysname ,默认值为 NULL。
- [ @dbname = ] name
数据库要与之兼容的 SQL Server 的版本。version 的数据类型为 tinyint ,默认值为 NULL。该值必须为下列值之一:
80 = SQL Server 2000
90 = SQL Server 2005
100 = SQL Server 2008
- [ @new_cmptlevel = ] version