Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 数据库管理 » 配置数据库 » 数据库选项 » 数据库选项简介 » 按字母顺序排列的选项列表

 

max_client_statements_cached 选项 [数据库]

控制由客户端高速缓存的语句数。

允许值

整数,0 到 100

作用域

可以为单个连接或 PUBLIC 组设置此选项。更改值操作立即生效。

缺省值

10

说明

多次准备相同的 SQL 语句时,客户端语句高速缓存可减少数据库请求数和语句准备数。重复准备和删除相同的 SQL 文本时,客户端可高速缓存该语句,使其在数据库服务器上保留为已准备语句,即使它已由应用程序删除。高速缓存语句可节省数据库服务器删除和重新准备语句的额外工作量。如果模式更改发生、数据库选项设置更改或执行 DROP VARIABLE 语句,则自动删除已准备语句,并在下次执行 SQL 语句时再次准备,确保决不重新使用可能造成错误行为的高速缓存语句。

此选项指定可保留为已准备(高速缓存)的语句的最大数。对于 max_statement_count 资源控制器,高速缓存语句数不计算在内。

此选项的设置适用于使用嵌入式 SQL、ODBC、OLE DB、ADO.NET 和 iAnywhere JDBC 驱动程序进行的连接。它不适用于 Open Client、jConnect 或 HTTP 连接。

将此选项设置为 0 会禁用客户端语句高速缓存。如果应用程序重复准备和删除超过 10 个相同 SQL 语句,则增加此值可能提高性能。例如,如果应用程序循环遍历二十五个 SQL 语句,在循环的每个迭代都要准备和删除这些 SQL 语句,其中的每个语句在每个迭代都具有完全相同的文本,则将此选项设置为 25 可以提高性能。

但增加此选项的值会增加客户端上占用的内存,也会给数据库服务器施加更大高速缓存压力。如果大量高速缓存语句由于模式更改或选项设置不能重新使用,则会自动禁用连接的语句高速缓存。如果自动关闭语句高速缓存,则客户端会定期再次打开语句高速缓存,重新评估决定,确定重新启用语句高速缓存是否有益。

另请参见