如何在delphi中解压缩mysql字符串

时间:2014-03-24 06:12:22

标签: mysql delphi

我想在MySQL查询中压缩MySQL结果或字符串,结果将发送到delphi应用程序。我用它来加速连接。 问题是如何从delphi中的MySQL结果中解压缩字符串。

这是我的示例查询

Select Compress(AColumn), Compress(BColumn) from ATable

1 个答案:

答案 0 :(得分:3)

压缩用于存储
MySQL中的compress关键字并不是为了减少网络流量,而是为了减少存储需求 压缩的详细信息未记录,可能因服务器而异。

  

COMPRESS(string_to_compress)

     

压缩字符串并将结果作为二进制字符串返回。此函数要求MySQL使用压缩库(如zlib)进行编译。否则,返回值始终为NULL。压缩的字符串可以使用UNCOMPRESS()解压缩。

请注意,解压缩的能力取决于编译MySQL版本的压缩库。

如果要进行网络压缩,请修改连接字符串
如果要压缩网络数据,请在连接设置中指定: 将以下字符串添加到Properties属性 UseCompression = true;

enter image description here

可在此处找到所有连接属性的列表:
https://www.connectionstrings.com/mysql/

可以在此处找到更多信息:http://dev.mysql.com/doc/refman/5.0/es/connector-net-examples-mysqlconnection.html#connector-net-examples-mysqlconnection-connectionstring
(请注意,此信息相当陈旧,但我正在调整新版本的网址,导致找不到404页错误。)

请注意,在Delphi中connectionstring由属性提交了大量文章:
- 数据库
- 港口
- 密码

Properties属性中,您只提供Delphi在其他属性中尚未涵盖的ConnectionString个选项。多个参数由;分隔。

进一步的并发症
不同的组件包使用不同的名称来添加可以放入ConnectionString的额外数据 ZEOS称之为properties
其他人称之为其他东西。