dbexpress 4 + mysql 5 出现Too more connections的错误,解决办法说明

用写好的程序,连接数据库,并大量插入数据,结果插入了一定条数后,就出错了。也就是#1040 Too more connections.

同样用google一找,没有找到答案。只好自己解决了。还是查查CodeGear 2007自带的帮助了。没有找到可疑点。

我插入MySQL数据,是通过sql语句实现的,也就是通过insert实现的。

TDB::ExecSQL(const AnsiString & strSQL)

{

TSQLQuery * query = DB->Query;

query->SQL->Clear();

query->SQL->Add(strSQL);

query->ExecSQL(strSQL);

query->Close();

}

就这样,执行一定数量的SQL后,就出了这样的错误。加了query->Close()也不行,查找帮助没有发现特别说明。

后来我查看TSQLConnection方法的时候,发现有一个方法,ExecSQL,我想这个能不能行,于是我就改了一下,结果是

TDB::ExecSQL(const AnsiString & strSQL)

{

    Conn->ExecSQL(strSQL,NULL,NULL);

/*TSQLQuery * query = DB->Query;

query->SQL->Clear();

query->SQL->Add(strSQL);

query->ExecSQL(strSQL);

query->Close();*/

}

 这样后,问题解决了,希望和我碰到同样问题的兄弟也能照样解决:)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Delphi 7 是一种集成开发环境(IDE),适用于使用 Object Pascal 编程语言的 Windows 平台。DBExpress 是 Delphi 7 中的一个数据库组件框架,用于与各种数据库进行交互。 UTF-8 是一种编码方式,可表示 Unicode 字符集中的所有字符。它是一种多字节编码方案,可以将所有字符映射为不超过 4 个字节。在 Delphi 7 中,DBExpress 可以处理 UTF-8 编码的字符串。 DBExpress 通过 TSQLConnection 组件连接数据库,并通过 TSQLQuery 组件执行 SQL 语句。连接字符串属性可以指定数据库连接的相关信息,例如数据库驱动、服务器地址、用户名、密码等。但是在 Delphi 7 的 DBExpress 中,默认情况下,连接字符串属性不支持 UTF-8 编码形式的字符串,只支持 ANSI 编码。 要在 Delphi 7 中使用 DBExpress 和 UTF-8 编码,我们可以通过自定义 TSQLConnection 组件的连接字符串属性,手动设置相关参数。可以使用 TStringBuilder 构建连接字符串,然后将其赋值给 TSQLConnection 组件的 ConnectionString 属性。连接字符串应该明确指定使用 UTF-8 编码,如在 URL 参数中添加 "charset=utf8"。 此外,还应确保数据库本身也正确配置为支持 UTF-8 编码。通常可以在数据库管理工具中修改表和字段的字符集为 UTF-8,以确保正确存储和检索 UTF-8 编码的字符串数据。 需要注意的是,Delphi 7 的 DBExpress 已经过时,可能在处理 UTF-8 编码的字符串方面存在一些限制。如果需要更完善和现代化的数据库访问支持,可以考虑升级到更高版本的 Delphi 或使用其他数据库访问框架,例如 FireDAC。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值