如何卸载具有 ROWID 数据类型字段的表?
我必须卸载包含 ROWID 数据类型字段的表。 我无法通过 QMF 卸载该表,因为它不支持此数据类型。 还有其他方法可以卸载表吗?
I have to unload a table which contains field with ROWID datatype. I could not unload the table through QMF as it is not supporting this data typr. Is there any other way to unload the table?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 DB2 中,ROWID 更多地为 RDMS 提供内部功能,而不是最终用户允许的功能。 这是故意的。 请参阅链接:
http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=/com.ibm.db2.doc.sqlref/xf7c63.htm
但是,如果您这样做不需要 ROWID 属性(将数据用于只读目的),那么可以模拟该表的卸载/加载。
您可以使用 EXPORT / IMPORT 命令执行卸载/加载功能,该功能应该支持 ROWID,但如果不支持,则可以通过将不支持的数据类型 ROWID 转换为支持的数据类型来实现相同的功能。 唯一的问题是,一旦执行此操作,您将无法将数据转换回此数据类型。 换句话说,ROWID 的所有属性现在都将是常规的 INTEGER 字段。
然后就可以执行EXPORT/IMPORT命令来卸载/加载数据。
警告:一旦删除 ROWID 属性,就无法恢复它。 换句话说,对该表的插入不会自动增加 ROWID 字段。
In DB2, ROWID serves more of an internal function to the RDMS than what is allowed by end users. This is intentional. See link:
http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=/com.ibm.db2.doc.sqlref/xf7c63.htm
However, if you do not need the ROWID properties (use the data for read-only purposes) then it may be possible to mimic unloading / loading of this table.
You can use the EXPORT / IMPORT commands to do the unloading / loading functions, which should support ROWID, but if it does not, then you can achieve the same functionality by converting the unsupported datatype ROWID into a supported datatype. The only thing is, that once you do this, you will not be able to convert the data back into this datatype. In other words, all the properties of ROWID will now be a regular INTEGER field.
Then you can execute the EXPORT / IMPORT command to unload / load the data.
Warning: Once you get rid of the ROWID properties, you cannot gain this back. In other words, INSERTS to this table will NOT automatically increment the ROWID field.