我正在尝试将from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://reactdropzone.azurewebsites.net/example/')
input_field = driver.find_element_by_xpath('.//input[@type="file"]')
input_field.send_keys('full_path_to_your_file.png')
字段值从color
表转移到dress
表,因为我稍微更改了数据库的结构。
这是查询,它很简单,但我一直收到错误。
purchase
我也尝试过没有JOIN并将条件放在WHERE子句中但我得到了同样的错误。
UPDATE purchase
SET purchase.color = (SELECT dress.color
FROM dress INNER JOIN purchase
ON dress.ID = purchase.dressID);
我还读到这个错误有时是由于文件是“只读”或其他许可问题,我已经尝试了所有内容,但似乎没有任何工作。
编辑:也试过这个,但我得到“遗失操作员”错误
UPDATE purchase
SET purchase.color = (SELECT dress.color
FROM dress, purchase
WHERE dress.ID = purchase.dressID);
答案 0 :(得分:1)
我认为你真的想要一个简单的相关子查询:
UPDATE purchase
SET color = (SELECT d.color
FROM dress as d
WHERE d.ID = purchase.dressID
);
如果子查询中可能存在重复项,请尝试TOP 1
:
UPDATE purchase
SET color = (SELECT TOP 1 d.color
FROM dress as d
WHERE d.ID = purchase.dressID
);
答案 1 :(得分:0)
感谢Ken White的链接,我找到了答案。
这个带有奇怪关键字'DISTINCTROW'的查询解决了这个问题。
UPDATE DISTINCTROW purchase
INNER JOIN dress ON purchase.dressID = dress.ID
SET purchase.color = dress.color;