MySQL 创建外键的语法

2023-11-22

创建外键时这种语法是否正确?

create table department
(
  departmentID int not null auto_increment primary key,
  name varchar(30)
) type=InnoDB;

create table employee
(
  employeeID int not null auto_increment primary key,
  name varchar(80),
  job varchar(30),
  departmentID int not null references department(departmentID)
) type=InnoDB;

看起来 MySQL 接受它(不抱怨语法),但实际上并没有创建外键。

要创建此外键,请运行以下命令:

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

MySQL 创建外键的语法 的相关文章

随机推荐

  • Facebook 广告 API 错误 - 未启用使用

    因此 我一直在尝试创建一个使用 Facebook Ads API 来获取广告费用和统计数据的应用程序 我已经创建了一个应用程序并将我的广告帐户 ID 添加到应用程序设置中 但仍然收到错误 error message 274 The ad a
  • 为什么使用 C++ Typedef?

    我对 typedef 的理解是给一个声明一个别名 这样的 int 声明现在将被称为 Integer 但为什么 为什么有人会使用 typedef 更有利的原因是什么 typedef int Integer Integer blamo 50 c
  • C++ 中的粗体输出

    我正在构建一本字典 当我打印 输出 单词定义时 我想以粗体打印单词本身 当我打印时 cout lt
  • 您可以通过 Flex 使用 Amazon S3 吗?

    由于缺少 clientaccesspolicy xml 通过 Flex 使用 Amazon S3 似乎存在问题 有什么解决办法吗 Edit 下面的两个答案都很棒并且有效 我都赞成 我不会为这个问题指定答案 因为它们都有效 您可以通过 Fle
  • 在 VB 中键入时,如何使智能感知上的 Enter 键的反应方式与 Visual Studio 中的 C# 中的反应方式相同?

    我使用的是 Visual Studio 2008 并且习惯了 C 当智能感知弹出时 我通过按 Enter 键选择我想要的内容 它不会跳到下一行 在 VB 中 当我在智能感知上按下回车键时 我会跳转到下一行 有谁知道这个智能感知选项的设置可能
  • 是否可以在 Emacs 中用文本替换边缘位图?

    我很想用简单 雅致的文本 甚至可能是一个很好的 unicode 字符 例如 u2026省略 这可能吗 不它不是 边缘 位图 实际上是位图 即覆盖在边缘上的 0 1 位向量 没有办法直接将任意 unicode 字符渲染到边缘上 您可以做的就是
  • IN 子句中的通配符

    SQL 我想在 IN 子句中使用通配符 但没有得到我期望的结果 我的查询是这样的 SELECT DISTINCT ID FROM INST WHERE TYPE in IP International 请帮助解决这个问题 解决方案应该是使用
  • Python for 循环中的“pass”和“continue”有区别吗?

    两个Python关键字之间有什么显着差异吗continue and pass就像例子中一样 for element in some list if not element pass and for element in some list
  • 可以改变JButton的形状吗?

    是否可以将 JButton 的形状从矩形更改为圆形 Sean Cogan 提供的链接就是您所需要的 如果您想要简短 请设置一个图像 圆形或任何您希望按钮看起来相似的形状 使用setIcon然后在 JButton button1 上设置这些值
  • 获取类转换异常,其中两个类完全相同

    我正在做一个 JBoss SEAM 项目 当我查看表单时 我收到此错误 java lang ClassCastException it cogitoweb csi entity csiorelav CsiTipoLav cannot be
  • Unix 域:connect():没有这样的文件或目录

    如标题所述 我的连接 调用具有相应地址的 unix 域类型套接字会导致错误ENOENT 没有这样的文件或目录 两个套接字已正确初始化 并且相应地创建并绑定了套接字文件 服务器和客户端套接字在不同的进程中运行 尽管客户端进程是 fork 和
  • 使用标记列表构建抽象语法树

    我想从令牌列表构建 AST 我正在制作一种脚本语言 并且已经完成了词法分析部分 但我不知道如何创建 AST 所以问题是 我该如何采取这样的事情 WORD int WORD x SYMBOL NUMBER 5 SYMBOL 并将其转换为抽象语
  • GWT - 在单元树中添加和删除节点

    这里我有一个完整且非常简单的示例来动态添加 删除 单元树的节点 我的例子效果不太好 似乎有 是刷新问题 只有关闭 展开节点才会显示正确的 结果 我在这个论坛上也没有找到适合这个问题的答案 也许有人可以尝试我的例子并告诉我问题出在哪里 任何其
  • 在一个 JFrame 中使用两个 JPanel

    我正在尝试创建一个程序 允许用户单击按钮将某些内容放入JPanel并允许他们移动该物品 我已经找到了一个很好的布局来允许移动组件 请参阅this关联 但是 我只是好奇创建这样的布局的最佳方法 我的希望是有这样的东西 我怎样才能做到这一点 我
  • Python 读取输入的最快方法

    我想读取一个包含整数列表列表的巨大文本文件 现在我正在执行以下操作 G with open test txt r as f for line in f G append list map int line split 然而 大约需要 17
  • 实时更新 Google Compute Engine 实例类型

    我想知道您是否可以将一个实例的类型更改为另一种实例 例如 n1 标准 1 到 n1 标准 2 我在文档中没有看到任何内容 但可能我错过了一些东西 如果这是不可能的 我如何处理这个问题 还有另一种方法可以进行此更改 您可以停止机器 对其进行编
  • AngularJS ngTable 按日期过滤

    我正在尝试在我的应用程序中设置 ngTable 但它不支持按日期过滤 而且我不知道如何实现它 我最初将数据中的日期作为时间戳 这使我能够由于时间戳的增量性质而对列进行正确排序 但显然我无法输入 9 月并过滤数据 Example row da
  • 两个文本文件的内连接

    希望对两个不同的文本文件执行内部联接 基本上我正在寻找与 GNU join 程序等效的内部联接 这样的事情存在吗 如果没有 则awk or sed解决方案将是最有帮助的 但我的第一选择是 Linux 命令 这是我想要做的事情的一个例子 fi
  • 在应用程序购买恢复交易中,我无法弄清楚代码

    我在我的编码中添加了应用程序内购买 它在购买时运行良好 但当我尝试在删除并再次安装应用程序时添加 Restore Transaction 代码时 它会出现错误并且应用程序关闭 我添加了以下编码 在 onCreate 我写的 startSer
  • MySQL 创建外键的语法

    创建外键时这种语法是否正确 create table department departmentID int not null auto increment primary key name varchar 30 type InnoDB c