写 sql语句时,一定要 "select * from 用户.表名" 这样吗?

tiger8000 2012-01-04 03:04:31
我刚刚接触 oracle10g数据库,以前从来没有碰 过 oracle 数据库

今天刚刚装了 oracle10g 数据库,在程序中写了一个 sql

string sql = "select * from Produt";
但是,程序提示说找不到表或视图

后来,我改了下

string sql = "select * from GuanUser.Produt";

这样就可以了,GuanUser 是我在 oracle 中建的用户。


但是,如果这样写的话, sql 通用性就差了,比如,换成了别的数据库
那 sql只需写 string sql = "select * from Produt"; 就行了


难道 换 oracle 的话,所有 sql 语句就都得重写储如 select * from 用户.表名 这样吗

请各位大侠赐教,非常感谢!!!







...全文
364 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiger8000 2012-01-04
  • 打赏
  • 举报
回复
明白了,我的 web.config 连接数据库的写法是

以 system 用户登录 的,如果我改成

GuanUser1 登录后,就可该可以了,我试试,多谢这位 LuiseRADL
大哥了
raymonshi 2012-01-04
  • 打赏
  • 举报
回复
是用什么方式连接的数据库?
检查,连接时,使用的哪个用户
我心飞翔 2012-01-04
  • 打赏
  • 举报
回复
因为你不是用GuanUser这个用户登陆的(是用其它用户登录的)
所以用B用户登录,访问A用户所创建的数据库对象,必须加上前面的限定名。

当然如果用A用户登录,访问自己的对象,就不需要这个限定名了啊。

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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