我使用python-mysql的(MySQLdb的)来查询MySQL服务器。 有两个光标模块:一个是客户端游标,如:我感到困惑MySQLdb的服务器端游标和客户端游标
cursor = db.cursor(MySQLdb.cursors.DictCursor)
另外一个是服务器端游标,如:
cursor = db.cursor(MySQLdb.cursors.SSDictCursor)
的医生说服务器端游标意味着Mysql的将缓存一些结果在MySQL服务器端,然后将它们发送到客户端。我对此很困惑,比方说,如果我想杀死一个mysql服务器,我可以使用多个服务器端游标,然后由于内存耗尽,mysql将会死机。而且,服务器大小的光标有什么意义?默认情况下,Mysql机制是当mysql检索到一条记录时,它会立即将它发送出客户端。缓存结果然后发送出去会有意义吗?
我真的不知道我应该使用哪一个游标,客户端游标或服务器端游标?
不是一个答案,因为我将这个基于另一个相同的数据库管理系统....有些情况下,你是逐页显示结果,即使有(说)10页,因为他们的方式排序后,用户往往只看第1个。所以,为什么要发送全部10个网页。 –
问题是如果你需要1,你为什么要查询10页。这是可怕的设计。 – nimdil