oracle PLSQL 查询语句select t.*, t.rowid from PU.YK t 20

1、这语句是什么意思,请整句给个解释,谢谢。2、这样的语句查出来后为什么不能像SQL那样直接修改,如果需要修改的话应该怎么做。请给答案,不要像一楼那样灌水。... 1、这语句是什么意思,请整句给个解释,谢谢。
2、这样的语句查出来后为什么不能像SQL那样直接修改,如果需要修改的话应该怎么做。
请给答案,不要像一楼那样灌水。
展开
 我来答
犬夜叉樱桃
2012-10-23 · 超过27用户采纳过TA的回答
知道答主
回答量:116
采纳率:100%
帮助的人:66.5万
展开全部
1, t.* 表示查询表t 所有字段
t.rowid 表示唯一标识t表中伪列
PU.YK 表示的是用户PU下的YK表
PU.YK t 表示的是t是YK这个表的别名(也就是另外一个简化的名字,可以随意写)
整个语句的意思也就是查询PU用户下YK表的所有记录信息,以及每条记录对应的ROWID信息
2,
在plsql里面独特的rowid(也就是上面提到的伪劣),在sql中不支持。所以就没有办法修改了,但是如果要修改的话。可以直接去原本修改。比如直接在YK表中修改。

select * from pu.yk;
然后相应的修改YK这张表里面的东西就可以了。

如果还有不会可以的再问我哦 。嘿嘿
哈哈哈
zjy198518
推荐于2017-05-18 · TA获得超过867个赞
知道小有建树答主
回答量:777
采纳率:80%
帮助的人:562万
展开全部
解释如下
t.* -----表示查询表t 所有字段
t.rowid---表示唯一标识t表中的物理位置字段(伪列),这个字段是每个表中都默认有的,当设计表时没有设置主键或唯一标实的时候,也可吧他动作表的唯一标示(删除重复数据可用到)
PU.YK---表示查询的是用户名为PU下的YK表,如果是以PU用户登陆的数据库,PU也可以省略
t---PU.YK 表的别名,用于书写的时候方便简单,与PU.YK 完全相同,只是名字不同而已,就行你的学名和你的小名一样。
整个语句的意思也很简单,就是查询PU用户下YK表的所有记录信息,以及每条记录对应的ROWID信息

rowid是oracle特有的,sqlserver不支持,sqlserver可设置自增字段或唯一标识列代替
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
流浪云风
2012-10-08 · TA获得超过4315个赞
知道大有可为答主
回答量:1119
采纳率:69%
帮助的人:920万
展开全部
PU应该是用户名,PU.YK就是PU用户下的YK表;
最后的t是别名,代替PU.YK;
t.*是指PU用户下的YK表中满足条件的所有数据;
t.rowid是每条数据对应的物理地址的id;
语句含义为:查询PU用户下的YK表的全部数据及每条数据对应的rowid
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
随o天
2012-10-08 · TA获得超过3158个赞
知道大有可为答主
回答量:1740
采纳率:71%
帮助的人:2006万
展开全部
第一个问题已经回答的很清楚了,我来说一下第二个问题。
1、问题中给出的语句是查出记录后可以直接修改的,语句本身没有问题。
2、问题出在你登入的用户对PU用户YK表有没有增删改权限。
解决方法:1、直接以PU用户登入,然后进行上述处理。
2、为你登入的用户授予PU用户YK表增删改权限。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
于美龙111
2012-10-08 · TA获得超过571个赞
知道答主
回答量:10
采纳率:0%
帮助的人:8.4万
展开全部
1查询PU用户下的YK表中的所有列信息,并且增加了一列伪列
2因为伪列是数据库中实际不存在的所以没有办法进行修改 只能修改数据库中其他实际存在的列
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式