这是我的桌子:
“ modules-settings ”(带有列的 modules-ticker |) 名称 | module_code |。
' modules-users '带有列:| 角色 | module_id | module_order |。
此查询#1有效:
SELECT `modules-settings`.module_code
FROM `modules-settings`
JOIN `modules-users`
ON `modules-users`.module_id=`modules-settings`.module_ticker WHERE role='N'
但不查询2:
SELECT `modules-settings`.module_code, `modules-users`.module_order
FROM `modules-settings`
JOIN `modules-users`
ON `modules-users`.module_id=`modules-settings`.module_ticker WHERE role='N'
SQL错误为“ 无法执行查询”。 奇怪的是,当我在PhpMyAdmin上对其进行测试时,查询2可以正常工作。
我在这里想念什么?谢谢您的帮助。
答案 0 :(得分:0)
我曾经看到过一次,服务器上的mysql客户端与mysql服务器的版本不同。请检查您的客户端和服务器版本是否相同。 phpmyadmin绕过客户端并将查询直接发送到服务器,因此即使mysql客户端是其他版本,phpmyadmin也可以工作。
答案 1 :(得分:0)
SELECT ms.module_code
FROM modules_settings ms
JOIN modules_users mu ON mu.module_id=ms.module_ticker
答案 2 :(得分:0)
请尝试使用此查询:
IWebElement h2Element = null;
string xpath = "//td[contains(@class,'productItem')]/div/div[contains(@class,'product-main')]/h2";
if (boolWaitForElementIsDisplayed(By.XPath(xpath), 30))
h2Element = Driver.FindElement(xpath);
答案 3 :(得分:0)
please try using this :
my database table :
I have created two tables:
SELECT * FROM `modules-settings` ;
module_ticker | name | module_code |
+---------------+----------+--------------+
| 1 | test | testcode |
| 2 | demotest | demotestcode |
SELECT * FROM `modules-users` LIMIT 0 , 30;
+------+-----------+--------------+
| role | module_id | module_order |
+------+-----------+--------------+
| N | 1 | 123 |
| 0 | 2 | 456 |
+------+-----------+--------------+
Now execute query :
SELECT `modules-settings`.module_code, `modules-users`.module_order FROM `modules-settings` JOIN `modules-users` ON `modules-users`.module_id=`modules-settings`.module_ticker WHERE role='N';
+-------------+--------------+
| module_code | module_order |
+-------------+--------------+
| testcode | 123 |
+-------------+--------------+
答案 4 :(得分:0)
@Aidan向我指出了解决方案。他知道查询很好,因此尝试通过跳出思维来寻找另一个原因。 pb确实是我在2个数据库中运行这些查询,它们非常相似,但仍足以使我的pb发生。