为什么使用pl/sql developer 和使用sql*plus得到的结果不同呢

大明哥_
Java领域优质创作者
博客专家认证
2012-04-17 10:28:08
初学Oracle
在pl/sql developer 创建表student。并向其中添加了一条信息通过select * from student语句查询可以得到正确的结果。但是使用sql*plus时,输入同样的语句得到的结果是:缓冲区域中没有可以运行的程序,在isql*plus中得到的结果是:未选定行。
为什么。求解!!!
...全文
229 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ssqtjffcu 2012-04-17
  • 打赏
  • 举报
回复
你没有commit提交的话,表示数据并没有真正的插入,只有你当前这个session才能看到的,其它看不到
雅冰石 2012-04-17
  • 打赏
  • 举报
回复
这个跟平台无关。
不论是在PL SQL DEVELOPER还是sqlplus,只要未提交,都会出现这个问题。
你插入记录后,输入COMMIT,再在sqlplus里查询看看,就会出现你想要的结果了。
雅冰石 2012-04-17
  • 打赏
  • 举报
回复
这个跟平台无关。
你若一开始在sqlplus里面插入了一条记录,但因为未提交,再重启一个sqlplus窗口,查询时也会出现这个问题。
所以,你只要commit一下,再查询,就可以了。
lixiaoyu0707 2012-04-17
  • 打赏
  • 举报
回复
当你增删改的时候,其实就是一个事物,在你还没有commit的时候客户端是不向服务器提交的
你可以用PLSQL rollback一下,再select,你会发现也会出现未选定行。
我心飞翔 2012-04-17
  • 打赏
  • 举报
回复
在pl/sql developer插入数据后,需要commit(提交)
在SQL*Plus中才能看到这种改变,因为二者(PL/SQL Developer和SQL*PLus)处于2个不同的会话中。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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