如果我将 ;
添加到我的 MySQL 查询中,这是否计入 max_allowed_packet
长度?加个空格怎么办?这算不算?如果 ;
不存在,MySQL 会自动添加吗?
即。
就 max_allowed_packet
长度而言,以下是否相同?:
INSERT INTO table_name (col_name) VALUES ( 1 ) , ( 2 );
INSERT INTO table_name (col_name) VALUES (1),(2)
如果它们相同,我如何以编程方式知道 MySQL 将查询视为多长时间?
最佳答案
不,空格与 max_allowed_packet
无关,它是一个服务器变量。
正如您可以检查机器上的 MySQL 客户端将接收到的字符串转换为正确的数据类型,同时它会删除额外的无关空白,您的 MySQL 连接器也是如此。
Which means both the Queries are treated as same
所以你应该只关心 SQL 查询的可读性而忘记空格。
检查
使用WIRESHARK,抓取mysql数据包。
如果对深潜感兴趣。浏览您正在使用的 MySQL 客户端或 MySQL 连接器的源代码。
关于mysql - max_allowed_packet 考虑了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14113769/