oracle 如何从对象表中检索数据?

vbopmzt1  于 2023-10-16  发布在  Oracle
关注(0)|答案(1)|浏览(157)

我使用SQL Developer创建了对象表:

CREATE TYPE PRODUCT  AS  OBJECT(
name        varchar2(40),
category    varchar2(30),
price       varchar2(10));

CREATE  TABLE  S_PRODUCTS  OF PRODUCT;

SELECT VALUE(e) from S_PRODUCTS e;

此外,还在该表中插入了几个值。但是当我试图从整体上检索这个对象表时,我得到了奇怪的结果(见附件中的图片)。据我所知,第一部分,点之前是我的数据库用户名。

我尝试重新创建对象表并重新启动Oracle SQL Developer,但总是得到相同的结果

yc0p9oo0

yc0p9oo01#

如果你想看到列,那么:

SELECT * FROM s_products;

SELECT name, category, price FROM s_products;

如果你想获取每一行的对象,那么使用你的查询:

SELECT VALUE(e) from S_PRODUCTS e;

但是,SQL Developer客户端应用程序未配置为显示对象,因此它仅显示对象的标识符。如果你想查看对象的内容,那么:

  • 单击单元格的铅笔图标;
  • 双击单元格;或
  • 按照ThatJeffSmith's instructions并在“Datebase > Advanced”下的首选项中选中“Display Struct in Grid”选项。

相关问题