Mysql 将字段从外键拉入表中

Mysql 将字段从外键拉入表中,mysql,Mysql,我脑子里有点放屁。我有一个包含车辆信息的MySQL数据库。其中有一个表Vehicles,带有VehicleMake和VehicleModel的外键。我决定删除模型FK,并将车辆模型作为车辆表中的varchar字段。现在,我试图找出如何提取表中现有条目的模型 Table 'Vehicle' (id, vehicleMake, vehicleModel, model) Table 'VehicleModels' (id, modelName) 因此,基本上我正在尝试找出一个查询,该查询将把车辆表中

我脑子里有点放屁。我有一个包含车辆信息的MySQL数据库。其中有一个表Vehicles,带有VehicleMake和VehicleModel的外键。我决定删除模型FK,并将车辆模型作为车辆表中的varchar字段。现在,我试图找出如何提取表中现有条目的模型

Table 'Vehicle' (id, vehicleMake, vehicleModel, model)
Table 'VehicleModels' (id, modelName)

因此,基本上我正在尝试找出一个查询,该查询将把车辆表中每一行的数据从VehicleModels.modelName提取到Vehicle.model中。

以下是您希望使用的update语句:

UPDATE Vehicle, VehicleModel
SET Vehicle.VehicleModel = VehicleModel.modelName
WHERE Vehicle.model = VehicleModel.id
在此之后,当代码提供应用程序
VehicleModel
数据而不是
model
信息时,您还需要从车辆模型(id)上的
Vehicle(model)中删除FK约束

ALTER TABLE Vehicle DROP FOREIGN KEY FK_Vehicle_model_VehicleModel_id;

这将是我命名外键的方式,您的名称可能会有所不同。

以下是您希望使用的更新语句:

UPDATE Vehicle, VehicleModel
SET Vehicle.VehicleModel = VehicleModel.modelName
WHERE Vehicle.model = VehicleModel.id
在此之后,当代码提供应用程序
VehicleModel
数据而不是
model
信息时,您还需要从车辆模型(id)
上的
Vehicle(model)中删除FK约束

ALTER TABLE Vehicle DROP FOREIGN KEY FK_Vehicle_model_VehicleModel_id;

这就是我命名外键的方式,您的名字可能会有所不同。

太棒了。这正是我想弄明白的。我忘了将VehicleModel表添加到update子句中。谢谢太神了这正是我想弄明白的。我忘了将VehicleModel表添加到update子句中。谢谢