将 name 指定的客户端信息属性的值设置为 value 指定的值。
应用程序可以使用 databasemetadata.getclientinfoproperties
方法确定驱动程序支持的客户端信息属性,以及为每个属性指定的最大长度。
驱动程序存储数据库中合适位置上指定的值。例如,在特殊注册表 (special register)、会话参数 (session parameter) 或者系统表 (system table) 列中。为了提高效率,驱动程序可以将设置数据库中的值推迟到下一次执行语句或者准备执行语句时。除了在数据库中的适当位置存储客户端信息之外,这些方法不能以任何方式改变连接的行为。为这些方法提供的值只能用于计数、诊断和调试目的。
如果指定的客户端属性名称不被驱动程序所识别,那么该驱动程序将生成一个警告。
如果为此方法指定的值大于该属性的最大长度,则驱动程序可能截取该值并生成一个警告,或者生成一个 sqlclientinfoexception
。如果驱动程序生成一个 sqlclientinfoexception
,则指定的值不是在连接上设置的。
以下是标准的客户端信息属性。不过,如果驱动程序支持可由某个标准属性描述的客户端信息属性,则驱动程序无需支持这些属性,应该使用标准属性名称。
- applicationname - 当前正在使用连接的应用程序的名称
- clientuser - 用户名,正在使用连接的应用程序将为该用户执行工作。这与建立连接所使用的用户名可能不同。
- clienthostname - 计算机的主机名,正使用连接的应用程序将在该计算机上运行。
- 参数:
name
- 要设置的客户端信息属性名称value
- 要设置为客户端信息属性的值。如果该值为 null,则清除指定属性的当前值。
- 抛出:
sqlclientinfoexception
- 如果在数据库服务器上设置客户端信息值时数据库服务器返回一个错误,或者在关闭的连接上调用此方法
- 从以下版本开始:
- 1.6