在Access数据库中,UPDATE指令不能够含有From语句。因此在多表关联批量更新数据时操作不是那么方便。
用Where语句好像也不怎么好使的情况下,可以使用INNER JOIN 语句。
下面的一个示例是我想往AirForecastCity 中更新数据,而数据存储在Sheet1表中。可以使用下述语句来执行。
UPDATE AirForecastCity INNER JOIN [Sheet1] ON (((AirForecastCity.NAME)=[Sheet1].[城市名称])) SET AirForecastCity.污染指数 = Sheet1.污染指数, AirForecastCity.首要污染物 = Sheet1.首要污染物, AirForecastCity.空气质量级别 = Sheet1.空气质量级别, AirForecastCity.空气质量状况 = Sheet1.空气质量状况
如果采用Where语句构造出来的SQL语句:
UPDATE AirForecastCity SET AirForecastCity.污染指数 = Sheet1.污染指数, AirForecastCity.首要污染物 = Sheet1.首要污染物, AirForecastCity.空气质量级别 = Sheet1.空气质量级别, AirForecastCity.空气质量状况 = Sheet1.空气质量状况
WHERE (((AirForecastCity.NAME)=[Sheet1].[城市名称]));
则数据无法更新上去。
用Where语句好像也不怎么好使的情况下,可以使用INNER JOIN 语句。
下面的一个示例是我想往AirForecastCity 中更新数据,而数据存储在Sheet1表中。可以使用下述语句来执行。
UPDATE AirForecastCity INNER JOIN [Sheet1] ON (((AirForecastCity.NAME)=[Sheet1].[城市名称])) SET AirForecastCity.污染指数 = Sheet1.污染指数, AirForecastCity.首要污染物 = Sheet1.首要污染物, AirForecastCity.空气质量级别 = Sheet1.空气质量级别, AirForecastCity.空气质量状况 = Sheet1.空气质量状况
如果采用Where语句构造出来的SQL语句:
UPDATE AirForecastCity SET AirForecastCity.污染指数 = Sheet1.污染指数, AirForecastCity.首要污染物 = Sheet1.首要污染物, AirForecastCity.空气质量级别 = Sheet1.空气质量级别, AirForecastCity.空气质量状况 = Sheet1.空气质量状况
WHERE (((AirForecastCity.NAME)=[Sheet1].[城市名称]));
则数据无法更新上去。
1人赞
分享
二维码
赏一个