在mysql中,如果我使用 useServerPrepStmts=true
,然后驱动程序将尝试在服务器上准备一个语句,如果它认为这是可能的。如果服务器无法准备语句(并非所有语句都可以在服务器端准备),则会返回到“客户机准备的语句”。
我有两个问题:
什么样的语句不能在服务器端准备?
为什么驱动程序有时认为可以在服务器端发送 COM_STMT_PREPARE
(参见此处)到服务器,如果服务器实际上无法准备该语句?这是不是意味着 prepareability
语句的类型依赖于服务器端的某个 predicate 是否为真,这就是为什么仅驱动程序无法做出正确的决定?
暂无答案!
目前还没有任何答案,快来回答吧!