未知mysql服务器主机“servername”(11001)

gk7wooem  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(567)

我想试着和你联系 MySQL 数据库与我的 Delphi 应用程序。我正在使用 dbXpress 组成部分 TSQLConnection .
当我尝试使用图形组件并测试它是否可以连接数据库时。它与使用对象检查器选项有关。
但是当我尝试使用代码时,得到的错误是未知的mysql服务器主机'servername'(11001)。
我无法从谷歌叔叔那里得到正确的解决方案。
有人能告诉我我的代码有什么问题吗?
下面是我的代码。

Conn := TSQLConnection.Create(nil);
  try
    conn.DriverName:= 'MySQL';
    conn.Params.Add('HostName=127.0.0.1');
    conn.Params.Add('Database=test1');
    conn.Params.Add('UserName=root');
    conn.Params.Add('Password=test');
    conn.LoginPrompt := false;
    try
    conn.Connected := true;
    ShowMessage('Database connected');
    Except
      on E:exception do
       ShowMessage(E.Message);
    end;
  finally
   if Conn.Connected then
     Conn.Connected :=  false;
   FreeAndNil(Conn);
  end;

如果需要更多的信息,请告诉我。
提前谢谢。

w1jd8yoj

w1jd8yoj1#

这个 conn.Params 列表已使用预先存在的值进行传播。所以你不应该 .add() 你的配置,而不是改变当前的 Params .
所以,不用

conn.Params.Add('HostName=127.0.0.1'); // wrong - should update, not add
conn.Params.Add('Database=test1'); // wrong - should update, not add
conn.Params.Add('UserName=root'); // wrong - should update, not add
conn.Params.Add('Password=test'); // wrong - should update, not add

使用

conn.Params.Values['HostName'] := '127.0.0.1';
conn.Params.Values['Database'] := 'test1';
conn.Params.Values['UserName'] := 'root';
conn.Params.Values['Password'] := 'test';

相关问题