我正在尝试使用 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