Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在Oracle数据库中创建链接表

如何在Oracle数据库中创建链接表
EN

Stack Overflow用户
提问于 2012-09-22 14:09:49
回答 1查看 284关注 0票数 1

我第一次创建了一个模拟数据库。我已经创建了由多对多关系组成的关系模型。在关系模型中,它有一个单独的链接/连接表。在创建数据库时,我是否也需要将此链接表创建为一个单独的表?或者我可以只把每个外键放在多对多的表中?

如果我需要一个单独的表,我如何通过语法将这些表链接在一起?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-22 16:27:31

我们只能以一对多的方式构建外键。所以你需要这个交叉表。它是我们在将逻辑数据模型转换为物理数据模型时引入的一种附加结构。

交叉表通常只有两列,即您希望以M:N方式链接的两个表的引用键(也可能有一些元数据列来保存链接的属性)。它通常在两列上有一个复合主键,以避免冗余。它在每个被引用的表上都有一个外键,这些表必须在被引用的列上定义了主键。

语法非常明显;这个示例构建了两个主表和一个仅定义键的交叉点。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
create table m1 (
   id number not null
   , constraint m1_pk primary key (id) );


create table m2 (
   id number not null
   , constraint m2_pk primary key (id) );


create table intersection_t (
   m1_id number not null
   , m2_id number not null
   , constraint int_pk primary key (m1_id, m2_id)
   , constraint int_m1_fk foreign key (m1_id)
         references m1 (id)
   , constraint int_m2_fk foreign key (m2_id)
         references m2 (id)
 );
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12544472

复制
相关文章
Oracle中如何创建数据库
Oracle数据库的物理结构与MySQL以及SQLServer有着很大的不同。在使用MySQL或SQLServer时,我们不需要去关心它们的逻辑结构和物理结构。
陈树义
2022/04/29
5.5K0
创建Oracle数据库
tempfile ‘/opt/oradata/WULIU/xsgj_temp.dbf’
全栈程序员站长
2022/07/18
1.9K0
创建Oracle数据库
打开开始->程序,找到oracle的配置和移置工具,打开Database Configuration Assistance
SmileNicky
2019/01/17
2K0
oracle创建数据库详解,详解Oracle手工创建数据库-Oracle「建议收藏」
Oracle提供的初始化参数样本文件位于$ORACLE_HOME\admin\tbsample\pfile目录中的initsmpl.ora
全栈程序员站长
2022/11/08
2.8K0
linux创建oracle数据库实例_oracle创建多个数据库
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/09/30
3.4K0
linux创建oracle数据库实例_oracle创建多个数据库
【DB笔试面试511】如何在Oracle中写操作系统文件,如写日志?
可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。
AiDBA宝典
2019/09/30
29K0
【DB笔试面试511】如何在Oracle中写操作系统文件,如写日志?
oracle数据库创建user,Oracle数据库如何创建数据库用户呢?
在oracle数据库中,当我们创建了相应的数据库后,通常我们会为数据库指定相应的用户,然后单独操作此数据库,
全栈程序员站长
2022/09/15
3.1K0
Oracle获取数据库中的对象创建语句
实验环境:Oracle 11.2.0.4 以获取jingyu用户下的T1表为例:
Alfred Zhao
2019/05/24
1.7K0
如何在MySQL数据库中创建新表
[IF NOT EXISTS]主要是用于判定新建的表是否存在 engine需要指定存储引擎。可以使用任何存储引擎,如:InnoDB,MyISAM,HEAP,EXAMPLE,CSV,ARCHIVE,MERGE, FEDERATED或NDBCLUSTER。如果不明确声明存储引擎,MySQL将默认使用InnoDB。 column_list较为复杂,为指定表的列表。字段的列用逗号(,)分隔。 column_list的语法如下:
用户7639835
2021/08/26
10K0
Oracle如何创建数据库[通俗易懂]
SQL*Plus: Release 11.2.0.1.0 Production on 星期四 3月 10 14:14:05 2022
全栈程序员站长
2022/11/09
1.7K0
Navicat for oracle创建数据库
其实在Oracle中的概念并不是创建数据库,而是创建一个表空间,然后再创建一个用户,设置该用户的默认表空间为我们新创建的表空间,这些操作之后,便和你之前用过的mysql数据库创建完数据库一模一样了(如果你用过mysql的话,当然如果Oracle是你用的第一个数据库系统,那上面这段话其实看不看并不重要)。 但是,鉴于很多用过mysql的用户,在刚开始使用Oracle的时候都会不知道如何创建数据库,觉得很茫然,然后开始百度、CSDN一通搜索“Oracle如何创建数据库”,所以笔者把本文的题目写成“Navicat for oracle创建数据库”应该也无可厚非。
全栈程序员站长
2022/09/14
1.5K0
Navicat for oracle创建数据库
oracle数据库创建表
实际工作中,在数据库中创建表是经常会用到的。我们今天呢?主要给大家来分享一下在数据库如何通过sql语句去创建表。其实,创建表很简单,只需要把数据库的数据类型和约束搞清楚就可以了,其他的就好说了。接下来呢,开始我的表演。首先,先使用plsql连接到oracle数据库,先保证下面的服务是开启的。
良月柒
2019/03/19
2K0
Oracle应用系列之创建Oracle数据库
打开开始->程序,找到oracle的配置和移置工具,打开Database Configuration Assistance
SmileNicky
2022/05/07
7950
Oracle应用系列之创建Oracle数据库
Oracle创建数据库语句_oracle创建表的sql语句
create tablespace SOA logging datafile ‘D:\app\oradata\ORCL\SOA.dbf’ size 32m autoextend on next 32m maxsize 2048m extent management local;
全栈程序员站长
2022/11/08
3.1K0
使用navicat创建Oracle数据库[通俗易懂]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/08
5.7K0
使用navicat创建Oracle数据库[通俗易懂]
oracle 创建索引的sql语句_oracle数据库创建索引语句
CREATE INDEX POLICYIMPART_INDEX ON ROOTE.W_POLICYIMPART( POLICYID ASC, IMPARTCODE ASC, CUSTOMERTYPE ASC
全栈程序员站长
2022/10/04
2K0
如何创建oracle数据表空间,oracle创建数据库/表空间
||||||||||||||||||||||||简略的说||||||||||||||||||||||||||||
全栈程序员站长
2022/09/14
8.8K0
Oracle 数据库创建导入的方法
当SQL Plus 启动后,它会提示您输入用户名和密码。继续使用在安装Oracle数据库服务器期间输入的密码以sys用户身份登录:
用户8965210
2021/08/31
1.3K0
如何在js中创建对象
七夕临近了,没有对象的来创建一个吧 使用对象字面量: const o = { name: "zehan", greeting() { return `Hi, 我是${this.name}`; } }; o.greeting(); // "Hi, zehan" 使用构造函数: function Person(name) { this.name = name; } Person.prototype.greeting = function () { return `Hi, 我是
ZEHAN
2020/09/23
7.6K0
如何在Mac中创建MiniKube
Minikube是一个工具,可以在本地轻松运行Kubernetes。 Minikube在笔记本电脑的VM中运行单节点Kubernetes集群,供希望尝试Kubernetes或日常开发的用户使用。
方志朋
2022/05/08
2.4K0
如何在Mac中创建MiniKube

相似问题

如何在oracle数据库中输入特殊字符,如“§”?

20

如何在oracle XE中创建数据库?

30

如何在Amazon Athena中创建链接表?

16

H2:如何从Oracle视图创建链接表?

14

如何在oracle中创建数据库及其url?

32
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文