sql 对象名无效

j_hunter 2009-09-14 11:28:43
想从sql 2000升级到sql 2005,但老是解决不了对象名无效的问题,现求教各位高手。
我先说下我是这么做的,大家看下哪里不对。
1,先用sql 2000的备份还原了一个库(A)。然后在安全性里面再新建一个登录名,退出。
2,用刚才新建的登录名登录,登录后再新建一个数据库(B),其中所有者就选刚才新建的登录名,然后用sql 2000里生成的脚本再生成所有的表,数据库的所有者我选的是刚才新建的登录名。 到这一布都是对的,只是查不到数据。
3,在新建的这个数据库上点导入数据(从A导入到B),但是这样导入的数据是带有原用户的,比如:select * from test.user 是可以查询出数据,但是select * from user 就报对象名无效.

大概就是这样, 每次只要导入或还原数据都是会有这样的错误,这个在2000中好解决.但是在2005里面一直没找到解决办法.知道的说哈啊 在线等了 分不多了,只要有价值的回答 都会有分
...全文
680 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuejiecn 2009-09-14
  • 打赏
  • 举报
回复
带架构名的,为什么不用SQL,而用导入和导出数据呢?
只要带上架构名直接insert不就可以了?

导入导出的话,源数据和目的数据都可以设置帐户的,设置成相应的登录,问题就应该解决了。
j_hunter 2009-09-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fredrickhu 的回复:]
为什么不试下直接用2005附加2000的数据
[/Quote]

现在就试试 .
j_hunter 2009-09-14
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 htl258 的回复:]
升級後查詢要加架構名
[/Quote]

但是要用程序去访问呢?在查询语句里面也加吗?
htl258_Tony 2009-09-14
  • 打赏
  • 举报
回复
升級後查詢要加架構名
dawugui 2009-09-14
  • 打赏
  • 举报
回复
看看这里有没有?

升级到SQL Server 2005的常见问题解答
http://database.ctocio.com.cn/tips/314/7573314.shtml
--小F-- 2009-09-14
  • 打赏
  • 举报
回复
为什么不试下直接用2005附加2000的数据
guguda2008 2009-09-14
  • 打赏
  • 举报
回复
学习
j_hunter 2009-09-14
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 xuejiecn 的回复:]
带架构名的,为什么不用SQL,而用导入和导出数据呢?
只要带上架构名直接insert不就可以了?

导入导出的话,源数据和目的数据都可以设置帐户的,设置成相应的登录,问题就应该解决了。
[/Quote]

在网上搜到了个个方法,就是不用那么麻烦,直接给还原的数据库做一个用户名到登录名的映射就可以了。就用这句:exec sp_change_users_login 'UPDATE_ONE','用户名','登录名'
但是这样做对安全方面有没影响呢/
j_hunter 2009-09-14
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 sql77 的回复:]
3,在新建的这个数据库上点导入数据(从A导入到B),但是这样导入的数据是带有原用户的,比如:select * from test.user 是可以查询出数据,但是select * from user 就报对象名无效.

你指定那个用户的表呀
[/Quote]

就是在B库里面查询.你指定那个用户的表呀? 不懂你说的什么意思?
soft_wsx 2009-09-14
  • 打赏
  • 举报
回复
路过的!看看!
SQL77 2009-09-14
  • 打赏
  • 举报
回复
3,在新建的这个数据库上点导入数据(从A导入到B),但是这样导入的数据是带有原用户的,比如:select * from test.user 是可以查询出数据,但是select * from user 就报对象名无效.

你指定那个用户的表呀

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧