![Visio 2007 - 反向工程访问数据库失败](https://linux22.com/image/1278292/Visio%202007%20-%20%E5%8F%8D%E5%90%91%E5%B7%A5%E7%A8%8B%E8%AE%BF%E9%97%AE%E6%95%B0%E6%8D%AE%E5%BA%93%E5%A4%B1%E8%B4%A5.png)
我正在尝试使用 Visio 2007 记录一些 Access 数据库。
我遵循的流程是
- 为数据库创建一个 ODBC 连接,指向适当的文件(所有文件都在我的本地驱动器上)
- 启动 Visio
- 创建新的数据库模型图
- 从数据库菜单中选择“逆向工程”
- 从列表中选择数据源
- 按照向导操作,选择所有表格。(在 Access 中打开数据库不需要用户名或密码,因此这些都留空)
当我单击完成时,出现错误:
错误!无法提取表/视图“TABLENAME”的列定义。
该定义不可用,或者您可能没有足够的权限。
请咨询您的数据库管理员。
该数据库在 Access 2007 中可以正常打开。
答案1
这是 visio 2002 的一个已知错误,我不知道它是否在后续版本中修复。请参阅这里了解更多信息。解决方法似乎在帖子的最后一篇帖子中:
一个解决方法是在“as”后使用以下代码修改存储过程:
--Visio 错误修复数据库(2004 年 2 月 25 日)
声明@myTableOwner varchar(64)
从 sysobjects、sysusers u 中选择前 1 个 @myTableOwner=u.name
s.uid=u.uid 和 s.name=@tablename
设置@tablename = @myTableOwner + '.' + @tablename