ORA-00907: 创建外键 Oracle 12c 时缺少右括号

2023-12-14

我想制作一张包含一个自动生成的主键和两个外键的表,但我遇到了这个错误...

create table answers
( id number generated by default on null as identity primary key
, question_id number foreign key references questions(id)
, user_id number foreign key references users(id)
, answer varchar(1000)
, post_date date);

create table answers (id number generated by default on null as identity primary key, question_id number foreign key references questions(id), user_id number foreign key references users(id), answer varchar(1000), post_date date)

第 1 行错误: ORA-00907: 缺少右括号

然后,我尝试了这个:

create table answers
( id number generated by default on null as identity primary key
, question_id number foreign key (question_id) references questions(id)
, user_id number foreign key (user_id) references users(id)
, answer varchar(1000)
, post_date date );

create table answers
( id number generated by default on null as identity primary key
, question_id number foreign key (question_id) references questions(id)
, user_id number foreign key (user_id) references users(id)
, answer varchar(1000)
, post_date date )
                                                                                                     *

第 1 行错误: ORA-00907: 缺少右括号

它仍然给出同样的错误!

但是,如果我分两步进行:

create table answers
( id number generated by default on null as identity primary key
, question_id number not null
, user_id number not null
, answer varchar(1000)
, post_date date );

Table created.

alter table answers
add foreign key (question_id) references questions(id) add foreign key (user_id) references users(id);

表已更改。

谁能帮我摆脱这个困境吗?


当将约束内联定义为列定义的一部分时,您不需要说foreign key:

create table answers
( id number generated by default on null as identity primary key
, question_id number references questions(id)
, user_id number references users(id)
, answer varchar(1000)
, post_date date);

祝你好运。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ORA-00907: 创建外键 Oracle 12c 时缺少右括号 的相关文章

  • SQLite HAVING 比较错误

    我有一个测试 SQLite 表 用于存储带有值的报告数据 CREATE TABLE IF NOT EXISTS test fact daily revenue date TEXT revenue NUMERIC product TEXT I
  • 如何在Oracle中使用Timestamp_to_scn和Scn_to_timestamp?

    我的查询结果是这样的 select cast to date a start time mm dd yyyy hh mi ss pm as timestamp date of call ora rowscn from calling tab
  • 拆分列中的字符串并在列中添加值

    我有一个包含几行数据的表 如下所示 16 W 2 Work ALBO 00 Proposal ALxO Amendement 1 20091022 signed pdf 17 W 2 Work ALBO 00 Proposal Level1
  • 将 UUID 存储为 base64 字符串

    我一直在尝试使用 UUID 作为数据库键 我希望占用尽可能少的字节数 同时仍然保持 UUID 表示形式的可读性 我认为我已经使用 base64 将其减少到 22 个字节 并删除了一些尾随的 这些 对于我的目的来说似乎没有必要存储 这种方法有
  • 使用 JSON 参数的 Postgres 批量 INSERT 函数

    这是一个plpgsqlpostgres 的函数9 6 它试图INSERT一行 如果插入没有失败 由于违反键约束 那么它会运行更多命令 CREATE FUNCTION foo int text text RETURNS void AS BEG
  • 插入触发器最终在分区表中插入重复行

    我有一个分区表 我认为 适当的INSERT触发器和一些限制 不知何故 INSERT语句为每个语句插入 2 行INSERT 一个用于父分区 一个用于相应的分区 设置简要如下 CREATE TABLE foo id SERIAL NOT NUL
  • Mysql 中 UNION 子句的替代方案

    我有两张桌子 表 a 表 b table a ID 1 2 3 4 5 7 table b ID 2 3 4 5 6 我必须得到这样的输出而无需UNION命令 ID 1 2 3 4 5 6 7 注意 我有一个联合解决方案 select fr
  • 如何在列上创建外键,该列的每条记录都可能引用多个表之一中的列?

    我正在创建一个社交网络 它有新闻 照片等多个实体 可以有评论 由于所有评论都具有相同的列并且行为方式相同 唯一的区别是它们的类型 新闻 照片或将来添加的其他内容 我决定为所有评论创建一个表 其中的列名为type 它工作得很好 直到我决定将外
  • 独立对列进行排序,使得所有空值都位于每列的最后

    这是一个名为的示例表animal name color fox brown fox red dog gold 现在 我想要的是这样的结果 fox dog brown gold red 名称应该是结果的列 不同颜色值作为行 我的第一个想法是
  • 在sqlite SQL语句中与order by子句结合使用limit

    下面的两条 SQL 语句总是会产生相同的结果集吗 1 SELECT FROM MyTable where Status 0 order by StartTime asc limit 10 2 SELECT FROM SELECT FROM
  • Oracle TDE 能否保护数据免受 DBA 的侵害?

    甲骨文专家 我的客户想要部署一个必须在数据库中保存信用卡号的应用程序 客户显然很关心安全性 我们特别关注一个令人痛苦的问题 我们如何确保只有具有 业务需要知道 的授权用户才可以访问数据 我们如何保护数据免受 DBA 的侵害 一个明显的解决方
  • 了解 SSMS 2008 中关系的更新和删除规则

    当我们定义外键约束时 我对 SQL Server 2008 Management Studio 中的更新和删除规则的含义感到困惑 我也没有找到相关的帮助文档 例如F1帮助 这是屏幕快照 如果有人能描述它们的含义并推荐一些相关文档来阅读 我将
  • 对多个数据库执行 SQL 查询

    我知道我的帖子与该论坛中的其他帖子的标题非常相似 但我真的找不到我需要的答案 这是我的问题 我的 Windows Server 上运行着 SQL Server 在我的 SQL Server 中 我有大约 30 个数据库 它们都具有相同的表和
  • MySQL 查询到 CSV [重复]

    这个问题在这里已经有答案了 有没有一种简单的方法来运行MySQL查询来自linux命令行并以csv格式输出结果 这就是我现在正在做的事情 mysql u uid ppwd D dbname lt lt EOQ sed e s g tee l
  • 如何在 Play java 中创建数据库线程池并使用该池进行数据库查询

    我目前正在使用 play java 并使用默认线程池进行数据库查询 但了解使用数据库线程池进行数据库查询可以使我的系统更加高效 目前我的代码是 import play libs Akka import scala concurrent Ex
  • SQL - != 'NULL' 的解释

    我的SSMS代码如下 Select top 50 From FilteredContact Where statuscode 1 and emailaddress1 NULL and telephone1 NULL and address1
  • 如何获得顶部带有千位分隔符的数字?

    SELECT count FROM table A 假设结果是8689 我怎样才能将它转换为8 689在 SQL Server 上 尝试这样 select replace convert varchar convert Money coun
  • SQL 国家字符 (NCHAR) 数据类型的真正用途是什么?

    也CHAR CHARACTER and VARCHAR CHARACTER VARYING SQL 提供了NCHAR NATIONAL CHARACTER and NVARCHAR NATIONAL CHARACTER VARYING 类型
  • 索引数量越少意味着插入、更新和删除速度更快? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在 Oracle 行的多个列上使用透视

    我在 Oracle 表中有以下示例数据 tab1 我正在尝试将行转换为列 我知道如何在某一列上使用 Oracle 数据透视表 但是否可以将其应用于多个列 样本数据 Type weight height A 50 10 A 60 12 B 4

随机推荐

  • 模运算符如何工作?

    假设我需要格式化数组的输出以显示每行固定数量的元素 我该如何使用模数运算来做到这一点 使用 C 下面的代码可以每行显示 6 个元素 但我不知道它是如何工作的以及为什么工作 for count 0 count lt size count co
  • 如何在多用户环境(500+)中处理 Eclipse?

    您将如何在拥有 500 名或更多开发人员的多用户和多站点环境中处理 Eclipse 让每个人下载自己的安装将导致一场支持和维护的噩梦 强迫每个人都使用集中安装感觉也不理想 并且会限制用户下载插件的选择 Edit 问题不是强迫用户选择Ecli
  • 如何使用 ZipKit 在 iOS 中压缩目录?

    我需要在 iOS 应用程序中压缩文档文件夹的子目录 在咨询了 Google 和其他 SO 帖子后 我发现 ZipKit 和 ZipArchive 作为两个提供此功能的开源项目 此时 我选择实现 ZipKit 因为它目前似乎比 ZipArch
  • 用 Java 找出您网站访问者的 IP 地址

    有没有简单可靠的方法来使用 Java 检测您的网站访问者 IP 地址 我正在尝试利用 Akismet 来检测我的博客文章 评论中的垃圾邮件 API 要求我指定评论者的 IP 地址 谢谢 致电ServletRequest getRemoteA
  • 如何在我的 Android 应用程序的可视化 C# Web 服务中调用 LINQ 中的用户定义函数?

    我目前正在开发一个应用程序 该应用程序将根据距离检索其他用户的位置 我有一个数据库 以纬度和经度存储所有用户位置信息 由于这两对经纬度之间距离的计算相当复杂 所以我需要一个函数来处理它 from a in db Location Where
  • 单击 #-links 时避免窗口跳转到顶部

    我有一个包含一些问题和答案的页面 默认情况下答案是折叠的 当他们单击问题时 我展开隐藏的答案 div 问题是 当我点击这些问题时 窗口跳到屏幕顶部 这不是一个大问题 但我觉得很烦人 因为我必须再次向下滚动到问题 链接看起来就像这样 a hr
  • 如何获取iPhone应用隐藏状态栏区域的触摸事件?

    我有一个隐藏状态栏的 iPhone 应用程序 但是 当我点击状态栏区域时 我的主视图没有收到任何触摸事件 我可以做些什么来解决这个问题吗 以下是我的应用程序设置的一些详细信息 如果重要的话 它是一个基于 OpenGL 的应用程序 该应用程序
  • 如何从 PHP 连接 Jms?

    我正在尝试在我的网站上实现像 Facebook 使用的小聊天功能 我使用了 Html PHP JQuery 和 Apache 我之前用 JMS 做了一些例子 但我不知道如何用 PHP 向 JMS 服务器发送消息 对于 JMS 我使用 Web
  • 将 BigInteger 二进制转换为 BigInteger 数字

    目前我正在使用Long整数类型 我使用以下命令来转换二进制 数字 Convert ToInt64 BinaryString 2 Convert binary string of base 2 to number Convert ToStri
  • java.util.Date 和 java.time.Instant 之间转换古代日期时出现差异

    我有使用 java util Date 创建古代日期 0002 年 11 月 30 日 的遗留代码 我正在尝试更新我可以更新的代码 但这需要在 Date 和 LocalDate 等之间进行转换 我无法完全摆脱使用 Date 或古老的日期选择
  • Spring Integration / JSch:身份验证失败

    我正在尝试使用 Spring Integration 的 SFTP 入站通道适配器 但我被困在这里 20 29 30 458 INFO com jcraft jsch task scheduler 6 Connecting to deplo
  • 在基于 Flask 的应用程序中获取客户端 IP

    我在服务器中部署了 Flask 应用程序 我们正在使用 Nginx nginx 设置如下 proxy set header X Forward For proxy add x forwarded for proxy set header H
  • 在 Windows x86-64 下,发生异常时,有多少内容被推送到 32 位堆栈上?

    In this 这个问题 我给出了一些我已经实现的并行语言的背景知识 编译器生成本机 x86 32 代码 一个关键的实现决策是为每个函数 调用 从堆中分配堆栈空间 这允许递归直到你用完虚拟机 并为词法范围启用仙人掌堆栈 甚至对于嵌套的并行子
  • 使用 Jenkins 管道脚本从 Windows 到 Linux 的 SCP

    我想要做SCP从 Windows Jenkins 节点到 Linux 服务器 在此设置中 Windows 计算机是 Jenkins 从机 我要复制的目标服务器是 Linux 下面是我的 Jenkins 管道脚本 在运行下面的脚本之前 我将克
  • 无法将 dbt cloud 或 dbt core 连接到 databricks

    我在将 dbt cloud 和 dbt core 连接到 databricks 时遇到问题 我已阅读这 4 个链接 但仍然无法连接 https docs databricks com integrations prep dbt html h
  • GridView无法显示图像

    我获取所有应用程序的图标 并在 GridView 中显示图标 GridView 很好地显示了它们 但是当我非常快地向下滑动 GridView 时 有时 GridView 缺少两个图标 这种情况不常出现 您能给我一些建议吗 EDIT 这个问题
  • Google c# Api,从 v2.3 更改为 v3

    我有以下代码使用 C v2 3 api 查询谷歌分析 string username email protected string pass PASS string gkey key XXXXXXXXXXXXXXXXXXXXXXXXXXX
  • SkiaSharp Tiff 支持

    目前 SkiaSharp 不支持 tiff 图像 它支持 jpg gif bmp png 和其他一些格式 如何将 tiff 图像转换为 SKBitmap 对象 一个想法 也许有一种有效的方法来转换 tiff 流 gt png 流 gt SK
  • Descendants 在 Word 文档中获取零个元素

    我在更新 Word 文档中的超链接时遇到问题 Q如何更新 Word 文档中的正文和超链接 并放大Descendants
  • ORA-00907: 创建外键 Oracle 12c 时缺少右括号

    我想制作一张包含一个自动生成的主键和两个外键的表 但我遇到了这个错误 create table answers id number generated by default on null as identity primary key q