gpt4 book ai didi

mysql - 在对象 View 中插入数据时出现重复的列名称

转载 作者:行者123 更新时间:2023-11-29 13:26:45 24 4
gpt4 key购买 nike

我已从现有关系表创建了对象 View ,当我尝试使用 View 将数据插入表中时,出现错误。虽然我能够以关系方式将数据插入学生表

ORA-00957: duplicate column name

我的程序如下

CREATE TABLE Students
(
StudID NUMBER(6)
CONSTRAINT Students_StudID_PK PRIMARY KEY,
Sname VARCHAR2(15),
Street VARCHAR2(20),
CityName VARCHAR2(20),
StateName VARCHAR2(20),
PinCode NUMBER(6)
)

这是我在其上创建对象 View 的关系表

CREATE TYPE MyAddress
AS OBJECT
(
Street VARCHAR2(20),
CityName VARCHAR2(20),
StateName VARCHAR2(20),
PinCode NUMBER(6)
)

另一个作为

CREATE TYPE MyStudent
AS OBJECT
(
Sname VARCHAR2(15),
Saddress MYAddress
)

现在对象 View 已成功创建使用

CREATE OR REPLACE  VIEW StudentOv
(
StudID,
StudDEF
)
AS
SELECT StudID, MYStudent
(
StudID,
MyAddress
(
Street,
CityName,
StateName,
PinCode
)
)
FROM Students

当我尝试将数据插入 View 时出现错误,我们将不胜感激。提前致谢

INSERT INTO StudentOV
VALUES(1204,
MYSTUDENT('RAMESH',
MyAddress(
'SHYAMA NAGAR',
'SECUNDERABAD',
'ANDHRA PRADESH',
500601
)
)
)

最佳答案

创建 View 时,您选择了两次 StudId。

试试这个...创建 View 。

CREATE OR REPLACE VIEW StudentOv
(
StudId,
StudDEF
)
AS
SELECT StudId, MYStudent
(
StudName,
MyAddress
(
Street,
CityName,
StateName,
PinCode
)
)
FROM Students;

然后,尝试将数据插入到 View 中。

关于mysql - 在对象 View 中插入数据时出现重复的列名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20024039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com