当外键存在时,用数据填充数据库
fill up database with data, when forgein key exist
Table1: tb1_id, tb1_value
Table 2: tb2_id, tb2_value, tb1_id
我的外键有问题tb1_id
。有没有一种简单的方法可以用值而不是 ID 号来填充此列。我拥有的数据库很复杂,很难找出每个值的 ID 号。
编辑:
数据示例:
_id | col2 | col3 | col4 ....
01 | 02 | 10 | 05
所以第 2、3、4 列是外键。我应该用数据填充很多这样的列,但我发现这样的数据很难填写,因为我必须为每个 ID 号寻找等效值。
如果您想禁用数据库中的所有约束(如外键),只需 运行 此代码:
-- disable all constraints
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all"
然后你应该可以用你想要的任何值填充值,null 或其他值。
我回答我的问题是为了帮助其他有同样问题的人。如果有人有同样的困难,我建议使用一个好的数据库编辑器软件,比如导航我试过的东西。
当有人点击 navicat 中的任何外键单元格时,它会显示外键 ID 和该 ID 所属的值。希望对您有所帮助。
Table1: tb1_id, tb1_value
Table 2: tb2_id, tb2_value, tb1_id
我的外键有问题tb1_id
。有没有一种简单的方法可以用值而不是 ID 号来填充此列。我拥有的数据库很复杂,很难找出每个值的 ID 号。
编辑:
数据示例:
_id | col2 | col3 | col4 ....
01 | 02 | 10 | 05
所以第 2、3、4 列是外键。我应该用数据填充很多这样的列,但我发现这样的数据很难填写,因为我必须为每个 ID 号寻找等效值。
如果您想禁用数据库中的所有约束(如外键),只需 运行 此代码:
-- disable all constraints
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all"
然后你应该可以用你想要的任何值填充值,null 或其他值。
我回答我的问题是为了帮助其他有同样问题的人。如果有人有同样的困难,我建议使用一个好的数据库编辑器软件,比如导航我试过的东西。 当有人点击 navicat 中的任何外键单元格时,它会显示外键 ID 和该 ID 所属的值。希望对您有所帮助。