【发布时间】:2015-09-06 09:36:55
【问题描述】:
有没有一种方法可以强制我的 MySQL 数据库允许创建一个名为 table_xyz 的新表,前提是另一个表中存在 table_xyz 的记录?
基本上我希望我的表名是外键。
例如allowed_tables 结构:
table_id | other columns |
--------------------------
table_xyz| bla bla bla |
--------------------------
因为我在 allowed_tables 中有一条带有 table_xyz 的记录,所以我可以用这个名称创建一个表。如果我删除记录,表应该会自动删除。如果我更改表名,也会发生同样的情况。
编辑 1:
表 allowed_structures 实际上称为贷款。它包含loan_id 和合同所需的其他列。插入这条记录后,我创建了一个名为
我需要知道执行此操作的最佳选择以及原因。谢谢!
【问题讨论】:
-
我认为您需要重新阅读数据库设计。
-
这听起来像是糟糕的设计,但您可以尝试使用源表的触发器创建/更新/删除新表。
-
我建议使用与名称不同的标识符,为贷款表创建一个不像名称那样可修改的唯一标识符。
标签: mysql