文章目录

第三十六章 类关键字 - SqlRowIdPrivate

指定这个类的ID列在投射到ODBCJDBC时是否为隐藏字段。
仅适用于持久类。

用法

当将表投射到ODBCJDBC时,要隐藏ID列,请使用以下语法:

Class MyApp.MyClass [ SqlRowIdPrivate ]  { //class members }

否则,忽略此关键字或将单词Not在关键字之前。

详解

如果该关键字为true,那么当表被投射到ODBCJDBC时,ID列就是一个隐藏字段。

当一个持久化类被投影为一个SQL表时,每个对象的Object Identity值被投影为一个SQL列——Row ID列。
SqlRowIdPrivate关键字允许指定是否应该对ODBC和基于jdbc的查询“隐藏”这个Row ID列。
如果行ID列被隐藏:

  • 它不会被各种目录查询报告为列
  • 它不包含在SELECT *查询中。

如果查询显式地在select子句中列出了该列,那么ODBCJDBC客户机可以选择该列。
(注意,根据定义,不能在UPDATEINSERT语句中使用Row ID列,因为不能修改或直接设置Row ID的值)。

通常,在处理遗留关系数据并且不希望报告工具看到Row ID列的情况下,使用此关键字。

对子类的影响

此关键字不是继承的。

默认

如果省略此关键字,当表被投影到ODBCJDBC时,ID列通常是可见的。