无法通过robotframework连接到mysql数据库

无法通过robotframework连接到mysql数据库,robotframework,mysql-python,Robotframework,Mysql Python,我正在尝试在robot框架中连接MySQL数据库。但我收到以下错误: 操作错误:(1045,u“用户访问被拒绝 'ABC'@'Nd204-151-102-92.com'(使用密码:YES)“) 我使用了数据库库和以下代码: *** Settings *** Library Database Library Library pymysql *** Variable *** ${DBHost} value

我正在尝试在robot框架中连接MySQL数据库。但我收到以下错误:

操作错误:(1045,u“用户访问被拒绝 'ABC'@'Nd204-151-102-92.com'(使用密码:YES)“)

我使用了数据库库和以下代码:

      *** Settings ***
  Library           Database Library
  Library           pymysql

     *** Variable ***
  ${DBHost}           value4
  ${DBName}           value1
  ${DBPass}          "value2"
  ${DBPort}           port
  ${DBUser}          value3


    *** Keywords ***
Connect to DB 
Connect To Database    pymysql  ${DbName}    ${DBUser}    ${DBPass}    
${DBHost}    ${DBPort} 
${output}=    Query    select * from tables;

我要冒险一试,猜想你在用户名和密码周围加了引号。错误消息似乎暗示了这一点,您在评论中添加了以下内容:

我在同一个robot文件中定义用户名和密码,并在我的变量部分中定义:如
***变量***${DBUser}='DBUser'和${DBPass}='dbpassword'

假设用户名是6个字符的字符串
DBuser
,密码是10个字符的字符串
dbpassword
,您需要这样定义它:

*** Variables ***
${DBUser}    DBuser
${DBPASS|    dbpassword

请注意缺少
=
,并且没有引号

我要冒险一试,猜想你在用户名和密码周围加了引号。错误消息似乎暗示了这一点,您在评论中添加了以下内容:

我在同一个robot文件中定义用户名和密码,并在我的变量部分中定义:如
***变量***${DBUser}='DBUser'和${DBPass}='dbpassword'

假设用户名是6个字符的字符串
DBuser
,密码是10个字符的字符串
dbpassword
,您需要这样定义它:

*** Variables ***
${DBUser}    DBuser
${DBPASS|    dbpassword

请注意缺少
=
,并且没有引号

错误来自您的数据库,它字面上表示该用户/密码组合的访问被拒绝。您的问题是什么?您能说明您是如何定义用户名和密码的吗?错误消息中提到,用户ABC由于密码错误或无法读取指定的数据库而无法访问。@YashJagdale:是的,但错误消息看起来很奇怪。用户名和主机名周围有引号,我想知道OP的实际数据中是否有这些引号。这可能是因为错误是一个dictionary对象,其字符串包含字符串。它的想法从未尝试过。错误来自您的数据库,它字面上说用户/密码组合的访问被拒绝。您的问题是什么?您能说明您是如何定义用户名和密码的吗?错误消息中提到,用户ABC由于密码错误或无法读取指定的数据库而无法访问。@YashJagdale:是的,但错误消息看起来很奇怪。用户名和主机名周围有引号,我想知道OP的实际数据中是否有这些引号。这可能是因为错误是一个dictionary对象,其字符串包含字符串。它的想法从未尝试过。嗨,布莱恩,谢谢你不断的帮助,它成功了。:)我可以从DB获取详细信息。嗨,布莱恩,谢谢你不断的帮助,它成功了。:)我可以从DB获取详细信息。