“%Type”是什么意思? Oracle sql 中的意思?
我第一次体验 Oracle 和 TOAD(我知道 SSMS)。我在更新过程中的输入参数旁边遇到了这个“%Type”,但我不知道它是什么或意味着什么。我在 Google 上找到了与“%Rowtype”相关的链接。是相同的东西还是完全不同的东西?
如果这含糊不清,我深表歉意。一如既往,感谢您的帮助。
I'm getting my first experience with Oracle and TOAD (I know SSMS). I came across this "%Type" next to an input parameter in an update procedure and I have no idea what it is or what it means. I found links on Google related to "%Rowtype". Is the same thing or something entirely different?
If this is vague, I apologize. As always, thanks for the help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Oracle(和 PostgreSQL)具有:
%TYPE
%TYPE
用于声明与现有表中列的数据类型相关的变量:这样做的好处是,如果数据类型发生变化,变量数据类型保持同步。
参考:http://download.oracle.com /docs/cd/B19306_01/appdev.102/b14261/fundamentals.htm#i6080
%ROWTYPE
这在游标中用于声明单个变量以包含游标或表结果集中的单个记录,而无需指定单个变量(及其数据类型) 。前任:
Oracle (and PostgreSQL) have:
%TYPE
%TYPE
is used to declare variables with relation to the data type of a column in an existing table:The benefit here is that if the data type changes, the variable data type stays in sync.
Reference: http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/fundamentals.htm#i6080
%ROWTYPE
This is used in cursors to declare a single variable to contain a single record from the resultset of a cursor or table without needing to specify individual variables (and their data types). Ex:
除了 OMG Ponies 指出的目的之外,
%TYPE
还用于继承先前声明的变量所使用的相同数据类型。语法是:
因此不需要声明第二个变量的数据类型,即
L_num_Test
。如果有人需要有关此主题的进一步说明,请发表评论。
参考:https://docs.oracle.com/ cd/B19306_01/appdev.102/b14261/fundamentals.htm#BEIIGBBF
Apart from the purpose pointed by OMG Ponies,
%TYPE
is also used for inheriting the same data type used by a previously declared variable.The syntax is :
So there is no need to declare the data type for the second variable i.e
L_num_Test
.Comment if anyone needs further clarification regarding this topic.
Reference: https://docs.oracle.com/cd/B19306_01/appdev.102/b14261/fundamentals.htm#BEIIGBBF
%Type 及其用途:
现实生活中的示例:如果您想创建一个简单的 PL SQL 块来检查直接表中数据类型的分配。 PL SQL 块:
%Type with its use :
Real life example : If you want to create a simple PL SQL block to check the assignment for the datatype from direct table. PL SQL block :