oracle中制作副本,创建表的副本并在创建时为其提供约束
不,你做不到;你的第二个陈述(略微修正)会得到
ORA-02440: Create as select with referential constraints not allowed
02440. 00000 - "Create as select with referential constraints not allowed"
*Cause: create table foo (... ref. con. ...) as select ...;
*Action: Create the table as select, then alter the table to add the
constraints afterwards.
这是提到in the documentation:
对表的定义查询的限制
表查询受以下限制: 表中的列数必须等于子查询中的表达式数。 列定义只能指定列名,默认值和完整性约束,而不能指定数据类型。 您不能在包含
CREATE TABLE的
AS subquery语句中定义外键约束,除非该表是引用分区且约束是表的分区引用约束。在所有其他情况下,您必须创建没有约束的表,然后使用
ALTER TABLE语句添加它。
可以提供其他约束,如在注释中链接到@Jeff的答案,因此您可以添加主键:
CREATE table copy_emp(eid primary key, ename,job,mid,sal,dept_id)
as
SELECT employee_id,
concat(first_name,last_name),job_id,manager_id,salary,department_id
FROM employees;
或(只要约束名称是唯一的)
CREATE table copy_emp(eid, ename,job,mid,sal,dept_id,
constraint emp_pk primary key (eid))
as
SELECT employee_id,
concat(first_name,last_name),job_id,manager_id,salary,department_id
FROM employees;
oracle中制作副本,创建表的副本并在创建时为其提供约束相关推荐
- oracle 其他用户表主键,Oracle中查看所有的表,用户表,列名,主键,外键
在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_ ...
- Oracle 创建表、定义序列以及创建触发器
Oracle 创建表.定义序列以及创建触发器 1. 定义序列 CREATE SEQUENCE <序列名>[MAXVALUE N|NOMAXVALUE][MINVALUE N|NOMINVA ...
- 怎么查看oracle数据库表的主键,Oracle中查看所有的表,用户表,列名,主键,外键...
在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_ ...
- Oracle中如何查询一个表的所有字段名和数据类型
Oracle中如何查询一个表的所有字段名和数据类型 查询语法 select A.COLUMN_NAME,A.DATA_TYPE from user_tab_columns A where TABLE_ ...
- oracle查询列属性,Oracle中查看所有的表,列,属性,…
在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user ...
- oracle恢复drop建的表首次,Oracle中Drop,Delete,Truancate表恢复
Oracle中Drop,delete,truancate表恢复 oracle中,常常会由于一些失误导致表的删除,以下是我写的一些表恢复的方法. 闪回模式得满足条件(启用闪回区和启用归档): 1.检查是 ...
- oracle查表字段长度,oracle中查询某张表中的字段名,字段类型,字段长度等信息...
oracle中查询某张表中的字段名,字段类型,是否为空,字段长度等信息 --更改某张表的字段类型长度 alter table bill_info modify IDCARD VARCHAR2 (30) ...
- oracle中快速复制数据表(创建数据表)
1.普通创建表方式如下: create table emp(empno number(4) primary key,ename varchar2(20),sal number(7,2)); 2.快速创 ...
- oracle 两表两列数据对比_当表中的列数不同时,如何比较oracle中的两个表
INTRO:下面我将展示如何做到"手工"这些工具(例如SQL Developer)可以做得更快更好.我对此(和你的!)的兴趣是双重的:学习和使用一些可以帮助解决许多其他问题的想法; ...
- oracle 查询字段除了as,Oracle中怎样查询数据表的哪个字段是主键
工作中要用到 Oracle 10g,经常要向其中的某张表插入事件发生的日期及时间.专门就 Oracle 的日期及时间显示方式和插入方式记一笔 工作中要用到 Oracle 10g,经常要向其中的某张表插 ...
最新文章
- react按需加载(getComponent优美写法),并指定输出模块名称解决缓存(getComponent与chunkFilename)...
- poj1195(二维树状数组)
- 你想要的宏基因组-微生物组知识全在这(181101)
- 怎么安装python的包_python下如何安装.whl包?
- 邀请函|WorkShop报名通道开启,来就送礼!
- python常用api_[原创]IDAPython常用API整理
- 【SpringBoot与SpringCloud的一些根本】
- python自学行吗-python自学行吗?给编程初学者零基础入门的建议
- html JS实现下拉菜单,vue.js怎么实现下拉框
- 台达PLC变频器通讯程序
- 机动车尾气排放智能抓拍解决应用方案
- No tests found for given includes: [xxx.xxx.testList](filter.includeTestsMatching)
- Fiddler抓包夜神模拟器
- 浅析negroni-gzip 过滤器的源码
- UTF-8 带BOM 和 UTF-8无BOM 的区别?
- c++日志工具之——log4cplus
- L2正则化—tensorflow实现
- 自动化学报latex模板——ctex2.4.6和ctex2.9.2直接使用步骤
- 【What if 系列】风挡与雨滴
- 问题解决:Excel 判断语句_绝对值_清除表格格式
热门文章
- 实验四+040+薛龚
- php 判断字符串中是否包含另一个字符串 strpos
- cblas_saxpy catlas_sset
- 28、Windows API Shell任务栏通知区域(Tray)图标
- 终于找到了满意的博客主题
- c语言CString转数字函数,CString与16进制的CByteArray之间相互转化
- Python提取docx文档中例题、插图、表格清单
- threejs 源码解析_threejs demo
- java 元组 getinteger_TS数据类型:从C++/Java/Python到TS看元组tuple—元组的来龙去脉...
- 计算机名称 steam,Steam电脑配置排名:前19名都是N卡