如何在创建视图时同时创建一个在视图上面的约束
CREATE VIEW emp_sal (emp_id, last_name,
email UNIQUE RELY DISABLE NOVALIDATE,
CONSTRAINT id_pk PRIMARY KEY (emp_id) RELY DISABLE NOVALIDATE)
AS SELECT employee_id, last_name, email FROM employees;
该例摘自oracle 9i sql用户手册
我的sql语句为:
CREATE OR REPLACE VIEW dept20
(
EMPLOYEE_ID,EMPLOYEE, DEPARTMENT_ID,
CONSTRAINT ch CHECK (DEPARTMENT_ID = 20) RELY DISABLE NOVALIDATE
)
AS
SELECT empno ,ename ,deptno
FROM emp
WHERE deptno = 20
WITH CHECK OPTION CONSTRAINT ch/ CONSTRAINT ch CHECK (DEPARTMENT_ID = 20) RELY DISABLE NOVALIDATE
*
ERROR 位于第 3 行:
ORA-00904: 无效列名
未找到解决方法?
现象一:
CREATE OR REPLACE VIEW dept20
(
EMPLOYEE_ID,EMPLOYEE, DEPARTMENT_ID,
CONSTRAINT ch PRIMARY KEY (DEPARTMENT_ID) RELY DISABLE NOVALIDATE
)
AS
SELECT empno ,ename ,deptno
FROM emp
WHERE deptno = 20
该视图创建成功
CREATE VIEW emp_sal (emp_id, last_name,
email UNIQUE RELY DISABLE NOVALIDATE,
CONSTRAINT id_pk PRIMARY KEY (emp_id) RELY DISABLE NOVALIDATE)
AS SELECT employee_id, last_name, email FROM employees;
该例摘自oracle 9i sql用户手册
我的sql语句为:
CREATE OR REPLACE VIEW dept20
(
EMPLOYEE_ID,EMPLOYEE, DEPARTMENT_ID,
CONSTRAINT ch CHECK (DEPARTMENT_ID = 20) RELY DISABLE NOVALIDATE
)
AS
SELECT empno ,ename ,deptno
FROM emp
WHERE deptno = 20
WITH CHECK OPTION CONSTRAINT ch/ CONSTRAINT ch CHECK (DEPARTMENT_ID = 20) RELY DISABLE NOVALIDATE
*
ERROR 位于第 3 行:
ORA-00904: 无效列名
未找到解决方法?
现象一:
CREATE OR REPLACE VIEW dept20
(
EMPLOYEE_ID,EMPLOYEE, DEPARTMENT_ID,
CONSTRAINT ch PRIMARY KEY (DEPARTMENT_ID) RELY DISABLE NOVALIDATE
)
AS
SELECT empno ,ename ,deptno
FROM emp
WHERE deptno = 20
该视图创建成功
解决方案 »
- 谁有javafx的学习文档
- 求一条SQL语句...急
- 高手!救俺的命
- 联合查询的问题
- 如何优化Oracle
- 怎样在数据库中存取图片
- 使用TADOQUERYS查询ORACLE数据库提示出错
- 请问 Oracle 和 ms-sql 差别有多大?
- (在线..)windows2000(prefessional)刚装完oracle8.1.7,一用 sql-plus就出现:ERROR:ORA-12514: TNS: 监听进程不能解析在连接描述符中给
- MySQL#求问Got error 1 from storage engine解决方法
- oracle中,function如何调用procedure,在线等
- 请教各位大侠一个关于数据库联机重做日志损坏导致数据库不可用的为题(很急啊,大家帮帮忙!)
视图上不能,可以通过创建视图的sql实现相同的功能。