Worklight,SQL-适配器,指定为定义者的用户 ('mobilefirst'@'localhost') 不存在
Worklight, SQL-Adapter, The user specified as a definer ('mobilefirst'@'localhost') does not exist
我是 sql 和工作灯的新手。我正在关注 IBM Worklight SQL-Adapter tutorial,并将示例代码导入 worklight studio。
部署适配器后,我选择 运行 as -> Call Mobilefirst Adapter。
这是我对程序的回复 "getAccountTransactions1":
{ "isSuccessful": true, "resultSet": [ ]}
这是我对程序的回复 "getAccountTransactions2":
{ "errors": [ "Runtime: Failed to retrieve data with procedure : getAccountTransactions" ], "info": [ ], "isSuccessful": false, "warnings": [ ]}
这是程序 "getAccountTransactions2"
的错误控制台
FWLSE0101E:原因:[项目适配器]java.sql.SQLException:指定为定义者的用户 ('mobilefirst'@'localhost')不是 existjava.lang.RuntimeException:使用过程检索数据失败:getAccountTransactions
我认为 sql 用户 'mobilefirst'@'localhost' 有问题,但我不知道为什么,因为我在 SQLAdapter.xml 中使用 root 用户。
如果我将"Worklight" sql用户用作此示例代码的默认值,如何设置权限?
User who created that procedure has been deleted. If
you recreate that user, it should address your error.
您可以尝试使用:
grant all on *.* to 'root'@'%' identified by 'password' with grant option;
您提到了用户 "mobilefirst",这让您看起来像是在使用 MobileFirst Platform Foundation 6.3 或 7.0(以前称为 "Worklight"),但由于某些原因您 following/using 来自 Worklight 6.0.0.0 的示例...这是为什么?
你不知何故在你的数据库中混合了一些东西...
无论您造成混乱的原因是什么,最简单的解决方案是简单地将所有权限授予 mobilefirst@localhost 用户和 Worklight@localhost。
然后您还需要确保在您的适配器的 XML 文件中您使用的是同一个用户 - "mobilefirst" 或 "Worklight"(数据库中您使用的同一个用户)已授予所有权限)。
关于 运行 的确切查询,您可以参考 Stanislovas 的回答 - 只需将 "root" 替换为适当的用户名即可。
并且不要将旧样品与新产品版本混在一起...
我是 sql 和工作灯的新手。我正在关注 IBM Worklight SQL-Adapter tutorial,并将示例代码导入 worklight studio。
部署适配器后,我选择 运行 as -> Call Mobilefirst Adapter。
这是我对程序的回复 "getAccountTransactions1":
{ "isSuccessful": true, "resultSet": [ ]}
这是我对程序的回复 "getAccountTransactions2":
{ "errors": [ "Runtime: Failed to retrieve data with procedure : getAccountTransactions" ], "info": [ ], "isSuccessful": false, "warnings": [ ]}
这是程序 "getAccountTransactions2"
的错误控制台FWLSE0101E:原因:[项目适配器]java.sql.SQLException:指定为定义者的用户 ('mobilefirst'@'localhost')不是 existjava.lang.RuntimeException:使用过程检索数据失败:getAccountTransactions
我认为 sql 用户 'mobilefirst'@'localhost' 有问题,但我不知道为什么,因为我在 SQLAdapter.xml 中使用 root 用户。
如果我将"Worklight" sql用户用作此示例代码的默认值,如何设置权限?
User who created that procedure has been deleted. If you recreate that user, it should address your error.
您可以尝试使用:
grant all on *.* to 'root'@'%' identified by 'password' with grant option;
您提到了用户 "mobilefirst",这让您看起来像是在使用 MobileFirst Platform Foundation 6.3 或 7.0(以前称为 "Worklight"),但由于某些原因您 following/using 来自 Worklight 6.0.0.0 的示例...这是为什么?
你不知何故在你的数据库中混合了一些东西...
无论您造成混乱的原因是什么,最简单的解决方案是简单地将所有权限授予 mobilefirst@localhost 用户和 Worklight@localhost。
然后您还需要确保在您的适配器的 XML 文件中您使用的是同一个用户 - "mobilefirst" 或 "Worklight"(数据库中您使用的同一个用户)已授予所有权限)。
关于 运行 的确切查询,您可以参考 Stanislovas 的回答 - 只需将 "root" 替换为适当的用户名即可。
并且不要将旧样品与新产品版本混在一起...