Interface ISQLServerDataSource

All Superinterfaces:
javax.sql.CommonDataSource
All Known Implementing Classes:
SQLServerConnectionPoolDataSource, SQLServerDataSource, SQLServerXADataSource

public interface ISQLServerDataSource
extends javax.sql.CommonDataSource
Provides a factory to create connections to the data source represented by this object. This interface was added in SQL Server JDBC Driver 3.0. This interface is implemented by SQLServerDataSource Class.
  • Method Summary

    Modifier and Type Method Description
    java.lang.String getAADSecurePrincipalId()
    Returns the value for the connection property 'AADSecurePrincipalId'.
    java.lang.String getAADSecurePrincipalSecret()
    Returns the value for the connection property 'AADSecurePrincipalSecret'.
    java.lang.String getAccessToken()
    Returns the access token.
    java.lang.String getApplicationIntent()
    Returns the application intent.
    java.lang.String getApplicationName()
    Returns the application name.
    java.lang.String getAuthentication()
    Returns the authentication mode.
    int getCancelQueryTimeout()
    Returns the cancel timeout.
    java.lang.String getClientCertificate()
    Returns client certificate path for client certificate authentication.
    java.lang.String getClientKey()
    Returns Private key file path for client certificate authentication.
    java.lang.String getColumnEncryptionSetting()
    Returns the Always Encrypted functionality setting for the data source object.
    java.lang.String getDatabaseName()
    Returns the database name.
    boolean getDelayLoadingLobs()
    Returns the current flag value for delayLoadingLobs.
    java.lang.String getDescription()
    Returns a description of the data source.
    boolean getDisableStatementPooling()
    Returns whether statement pooling is disabled.
    java.lang.String getDomain()
    Returns the value for the connection property 'domain'.
    boolean getEnablePrepareOnFirstPreparedStatementCall()
    Returns the value that indicates whether the first execution of a prepared statement will call sp_executesql and not prepare a statement.
    java.lang.String getEnclaveAttestationProtocol()
    Returns the enclave attestation protocol used in Always Encrypted with Secure Enclaves.
    java.lang.String getEnclaveAttestationUrl()
    Returns the enclave attestation URL used in Always Encrypted with Secure Enclaves.
    boolean getEncrypt()
    Returns a Boolean value that indicates if the encrypt property is enabled.
    java.lang.String getFailoverPartner()
    Returns the name of the failover server that is used in a database mirroring configuration.
    boolean getFIPS()
    Returns the value of connection property "fips".
    org.ietf.jgss.GSSCredential getGSSCredentials()
    Returns the GSSCredential.
    java.lang.String getHostNameInCertificate()
    Returns the host name used in validating the SQL Server Secure Sockets Layer (SSL) certificate.
    java.lang.String getInstanceName()
    Returns the SQL Server instance name.
    java.lang.String getJASSConfigurationName()
    Returns the login configuration file for Kerberos authentication.
    java.lang.String getKeyStoreAuthentication()
    Returns the value of the keyStoreAuthentication setting for the data source object.
    java.lang.String getKeyStoreLocation()
    Returns the keyStoreLocation for the Java Key Store.
    java.lang.String getKeyStorePrincipalId()
    Returns the value for the connection property 'keyStorePrincipalId'.
    java.lang.String getKeyVaultProviderClientId()
    Returns the value for the connection property 'keyVaultProviderClientId'.
    boolean getLastUpdateCount()
    Returns a Boolean value that indicates if the lastUpdateCount property is enabled.
    int getLockTimeout()
    Returns an int value that indicates the number of milliseconds that the database will wait before reporting a lock time out.
    java.lang.String getMaxResultBuffer()
    Returns value of 'maxResultBuffer' from Connection String.
    java.lang.String getMSIClientId()
    Returns the value for the connection property 'msiClientId'.
    boolean getMultiSubnetFailover()
    Returns the value of the multiSubnetFailover connection property.
    int getPacketSize()
    Returns the current network packet size used to communicate with SQL Server, specified in bytes.
    int getPortNumber()
    Returns the current port number that is used to communicate with SQL Server.
    int getQueryTimeout()
    Returns the query timeout.
    java.lang.String getResponseBuffering()
    Returns the response buffering mode for this SQLServerDataSource object.
    java.lang.String getSelectMethod()
    Returns the default cursor type used for all result sets that are created by using this SQLServerDataSource object.
    boolean getSendStringParametersAsUnicode()
    Returns whether sending string parameters to the server in UNICODE format is enabled.
    boolean getSendTemporalDataTypesAsStringForBulkCopy()  
    boolean getSendTimeAsDatetime()
    Returns the value of the sendTimeAsDatetime connection property.
    java.lang.String getServerName()
    Returns the name of the SQL Server instance.
    boolean getServerNameAsACE()
    Returns if the serverName should be translated from Unicode to ASCII Compatible Encoding (ACE).
    int getServerPreparedStatementDiscardThreshold()
    Returns the value of the setting that controls how many outstanding prepared statement discard actions (sp_unprepare) can be outstanding per connection before a call to clean-up the outstanding handles on the server is executed.
    java.lang.String getServerSpn()
    Returns the server spn.
    java.lang.String getSocketFactoryClass()
    Returns the value for the connection property 'socketFactoryClass'.
    java.lang.String getSocketFactoryConstructorArg()
    Returns the value for the connection property 'socketFactoryConstructorArg'.
    int getSocketTimeout()
    Returns the socket timeout value.
    java.lang.String getSSLProtocol()
    Returns the value of connection property 'sslProtocol'.
    int getStatementPoolingCacheSize()
    Returns the size of the prepared statement cache for this connection.
    boolean getTransparentNetworkIPResolution()
    Returns the TransparentNetworkIPResolution value.
    java.lang.String getTrustManagerClass()
    Returns the value for the connection property 'trustManagerClass'.
    java.lang.String getTrustManagerConstructorArg()
    Returns the value for the connection property 'trustManagerConstructorArg'.
    boolean getTrustServerCertificate()
    Returns a Boolean value that indicates if the trustServerCertificate property is enabled.
    java.lang.String getTrustStore()
    Returns the path (including file name) to the certificate trustStore file.
    java.lang.String getTrustStoreType()
    Returns the keyStore Type for the trustStore.
    java.lang.String getURL()
    Returns the URL that is used to connect to the data source.
    boolean getUseBulkCopyForBatchInsert()
    Returns whether the use Bulk Copy API is used for Batch Insert.
    boolean getUseFmtOnly()
    Returns the current flag value for useFmtOnly.
    java.lang.String getUser()
    Returns the user name that is used to connect the data source.
    java.lang.String getWorkstationID()
    Returns the name of the client computer name that is used to connect to the data source.
    boolean getXopenStates()
    Returns the value that indicates if converting SQL states to XOPEN compliant states is enabled.
    void setAADSecurePrincipalId​(java.lang.String AADSecurePrincipalId)
    Sets the 'AADSecurePrincipalId' connection property used for Active Directory Service Principal authentication.
    void setAADSecurePrincipalSecret​(java.lang.String AADSecurePrincipalSecret)
    Sets the 'AADSecurePrincipalSecret' connection property used for Active Directory Service Principal authentication.
    void setAccessToken​(java.lang.String accessToken)
    Sets the access token.
    void setApplicationIntent​(java.lang.String applicationIntent)
    Sets the application intent.
    void setApplicationName​(java.lang.String applicationName)
    Sets the application name.
    void setAuthentication​(java.lang.String authentication)
    Sets the authentication mode.
    void setAuthenticationScheme​(java.lang.String authenticationScheme)
    Sets the kind of integrated security you want your application to use.
    void setCancelQueryTimeout​(int cancelQueryTimeout)
    Sets the cancel timeout.
    void setClientCertificate​(java.lang.String certPath)
    Sets client certificate path for client certificate authentication.
    void setClientKey​(java.lang.String keyPath)
    Sets Private key file path for client certificate authentication.
    void setClientKeyPassword​(java.lang.String password)
    Sets the password to be used for Private key provided by the user for client certificate authentication.
    void setColumnEncryptionSetting​(java.lang.String columnEncryptionSetting)
    Sets the value to enable/disable Always Encrypted functionality for the data source object.
    void setDatabaseName​(java.lang.String databaseName)
    Sets the database name to connect to.
    void setDelayLoadingLobs​(boolean delayLoadingLobs)
    Specifies the flag to load LOBs instead of streaming them.
    void setDescription​(java.lang.String description)
    Sets the description of the data source.
    void setDisableStatementPooling​(boolean disableStatementPooling)
    Sets the value to disable/enable statement pooling.
    void setDomain​(java.lang.String domain)
    Sets the 'domain' connection property used for NTLM Authentication.
    void setEnablePrepareOnFirstPreparedStatementCall​(boolean enablePrepareOnFirstPreparedStatementCall)
    Sets the value that enables/disables whether the first execution of a prepared statement will call sp_executesql and not prepare a statement.
    void setEnclaveAttestationProtocol​(java.lang.String protocol)
    Sets the enclave attestation protocol to be used in Always Encrypted with Secure Enclaves.
    void setEnclaveAttestationUrl​(java.lang.String url)
    Sets the enclave attestation URL used in Always Encrypted with Secure Enclaves.
    void setEncrypt​(boolean encrypt)
    Sets a Boolean value that indicates if the encrypt property is enabled.
    void setFailoverPartner​(java.lang.String serverName)
    Sets the name of the failover server that is used in a database mirroring configuration.
    void setFIPS​(boolean fips)
    Sets whether Fips Mode should be enabled/disabled on the connection.
    void setGSSCredentials​(org.ietf.jgss.GSSCredential userCredential)
    Sets the GSSCredential.
    void setHostNameInCertificate​(java.lang.String hostName)
    Sets the host name to be used in validating the SQL Server Secure Sockets Layer (SSL) certificate.
    void setInstanceName​(java.lang.String instanceName)
    Sets the SQL Server instance name.
    void setIntegratedSecurity​(boolean enable)
    Sets a Boolean value that indicates if the integratedSecurity property is enabled.
    void setJASSConfigurationName​(java.lang.String configurationName)
    Sets the login configuration file for Kerberos authentication.
    void setKeyStoreAuthentication​(java.lang.String keyStoreAuthentication)
    Sets the name that identifies a key store.
    void setKeyStoreLocation​(java.lang.String keyStoreLocation)
    Sets the location including the file name for the Java keystore.
    void setKeyStorePrincipalId​(java.lang.String keyStorePrincipalId)
    Sets the value for the connection property 'keyStorePrincipalId'.
    void setKeyStoreSecret​(java.lang.String keyStoreSecret)
    Sets the password for the Java keystore.
    void setKeyVaultProviderClientId​(java.lang.String keyVaultProviderClientId)
    Sets the Azure Key Vault (AKV) Provider Client Id to provided value to be used for column encryption.
    void setKeyVaultProviderClientKey​(java.lang.String keyVaultProviderClientKey)
    Sets the Azure Key Vault (AKV) Provider Client Key to provided value to be used for column encryption.
    void setLastUpdateCount​(boolean lastUpdateCount)
    Sets a Boolean value that indicates if the lastUpdateCount property is enabled.
    void setLockTimeout​(int lockTimeout)
    Sets an int value that indicates the number of milliseconds to wait before the database reports a lock time out.
    void setMaxResultBuffer​(java.lang.String maxResultBuffer)
    Specifies value for 'maxResultBuffer' property
    void setMSIClientId​(java.lang.String msiClientId)
    Sets the client id to be used to retrieve access token from MSI EndPoint.
    void setMultiSubnetFailover​(boolean multiSubnetFailover)
    Sets the value of the multiSubnetFailover connection property.
    void setPacketSize​(int packetSize)
    Sets the current network packet size used to communicate with SQL Server, specified in bytes.
    void setPassword​(java.lang.String password)
    Sets the password that will be used to connect to SQL Server.
    void setPortNumber​(int portNumber)
    Sets the port number to be used to communicate with SQL Server.
    void setQueryTimeout​(int queryTimeout)
    Setting the query timeout.
    void setResponseBuffering​(java.lang.String bufferingMode)
    Sets the response buffering mode for connections created by using this SQLServerDataSource object.
    void setSelectMethod​(java.lang.String selectMethod)
    Sets the default cursor type that is used for all result sets that are created by using this SQLServerDataSource object.
    void setSendStringParametersAsUnicode​(boolean sendStringParametersAsUnicode)
    Sets a boolean value that indicates if sending string parameters to the server in UNICODE format is enabled.
    void setSendTemporalDataTypesAsStringForBulkCopy​(boolean sendTemporalDataTypesAsStringForBulkCopy)
    Specifies the flag to send temporal datatypes as String for Bulk Copy.
    void setSendTimeAsDatetime​(boolean sendTimeAsDatetime)
    Sets the value to enable/disable the sendTimeAsDatetime connection property.
    void setServerName​(java.lang.String serverName)
    Sets the name of the computer that is running SQL Server.
    void setServerNameAsACE​(boolean serverNameAsACE)
    Sets whether the serverName will be translated from Unicode to ASCII Compatible Encoding (ACE).
    void setServerPreparedStatementDiscardThreshold​(int serverPreparedStatementDiscardThreshold)
    Sets the value that controls how many outstanding prepared statement discard actions (sp_unprepare) can be outstanding per connection before a call to clean-up the outstanding handles on the server is executed.
    void setServerSpn​(java.lang.String serverSpn)
    Sets the server spn.
    void setSocketFactoryClass​(java.lang.String socketFactoryClass)
    Sets the connection property 'socketFactoryClass' on the connection.
    void setSocketFactoryConstructorArg​(java.lang.String socketFactoryConstructorArg)
    Sets Constructor Arguments to be provided on constructor of 'socketFactoryClass'.
    void setSocketTimeout​(int socketTimeout)
    Sets the socket timeout value.
    void setSSLProtocol​(java.lang.String sslProtocol)
    Sets the sslProtocol property for connection Set this value to specify TLS protocol keyword.
    void setStatementPoolingCacheSize​(int statementPoolingCacheSize)
    Sets the size of the prepared statement cache for this connection.
    void setTransparentNetworkIPResolution​(boolean tnir)
    Sets the value to enable/disable Transparent Netowrk IP Resolution (TNIR).
    void setTrustManagerClass​(java.lang.String trustManagerClass)
    Sets the connection property 'trustManagerClass' on the connection.
    void setTrustManagerConstructorArg​(java.lang.String trustManagerConstructorArg)
    Sets Constructor Arguments to be provided on constructor of 'trustManagerClass'.
    void setTrustServerCertificate​(boolean e)
    Sets a Boolean value that indicates if the trustServerCertificate property is enabled.
    void setTrustStore​(java.lang.String trustStore)
    Sets the path (including file name) to the certificate trustStore file.
    void setTrustStorePassword​(java.lang.String trustStorePassword)
    Sets the password that is used to check the integrity of the trustStore data.
    void setTrustStoreType​(java.lang.String trustStoreType)
    Sets the keystore type for the trustStore.
    void setURL​(java.lang.String url)
    Sets the URL that is used to connect to the data source.
    void setUseBulkCopyForBatchInsert​(boolean useBulkCopyForBatchInsert)
    Sets whether the use Bulk Copy API should be used for Batch Insert.
    void setUseFmtOnly​(boolean useFmtOnly)
    Specifies the flag to use FMTONLY for parameter metadata queries.
    void setUser​(java.lang.String user)
    Sets the user name that is used to connect the data source.
    void setWorkstationID​(java.lang.String workstationID)
    Sets the name of the client computer name that is used to connect to the data source.
    void setXopenStates​(boolean xopenStates)
    Sets whether converting SQL states to XOPEN compliant states is enabled.

    Methods inherited from interface javax.sql.CommonDataSource

    createShardingKeyBuilder, getLoginTimeout, getLogWriter, getParentLogger, setLoginTimeout, setLogWriter
  • Method Details

    • setApplicationIntent

      void setApplicationIntent​(java.lang.String applicationIntent)
      Sets the application intent.
      Parameters:
      applicationIntent - A String that contains the application intent.
    • getApplicationIntent

      java.lang.String getApplicationIntent()
      Returns the application intent.
      Returns:
      A String that contains the application intent.
    • setApplicationName

      void setApplicationName​(java.lang.String applicationName)
      Sets the application name.
      Parameters:
      applicationName - A String that contains the name of the application.
    • getApplicationName

      java.lang.String getApplicationName()
      Returns the application name.
      Returns:
      A String that contains the application name, or "Microsoft JDBC Driver for SQL Server" if no value is set.
    • setDatabaseName

      void setDatabaseName​(java.lang.String databaseName)
      Sets the database name to connect to.
      Parameters:
      databaseName - A String that contains the database name.
    • getDatabaseName

      java.lang.String getDatabaseName()
      Returns the database name.
      Returns:
      A String that contains the database name or null if no value is set.
    • setInstanceName

      void setInstanceName​(java.lang.String instanceName)
      Sets the SQL Server instance name.
      Parameters:
      instanceName - A String that contains the instance name.
    • getInstanceName

      java.lang.String getInstanceName()
      Returns the SQL Server instance name.
      Returns:
      A String that contains the instance name, or null if no value is set.
    • setIntegratedSecurity

      void setIntegratedSecurity​(boolean enable)
      Sets a Boolean value that indicates if the integratedSecurity property is enabled.
      Parameters:
      enable - true if integratedSecurity is enabled. Otherwise, false.
    • setLastUpdateCount

      void setLastUpdateCount​(boolean lastUpdateCount)
      Sets a Boolean value that indicates if the lastUpdateCount property is enabled.
      Parameters:
      lastUpdateCount - true if lastUpdateCount is enabled. Otherwise, false.
    • getLastUpdateCount

      boolean getLastUpdateCount()
      Returns a Boolean value that indicates if the lastUpdateCount property is enabled.
      Returns:
      true if lastUpdateCount is enabled. Otherwise, false.
    • setEncrypt

      void setEncrypt​(boolean encrypt)
      Sets a Boolean value that indicates if the encrypt property is enabled.
      Parameters:
      encrypt - true if the Secure Sockets Layer (SSL) encryption is enabled between the client and the SQL Server. Otherwise, false.
    • getEncrypt

      boolean getEncrypt()
      Returns a Boolean value that indicates if the encrypt property is enabled.
      Returns:
      true if encrypt is enabled. Otherwise, false.
    • setTransparentNetworkIPResolution

      void setTransparentNetworkIPResolution​(boolean tnir)
      Sets the value to enable/disable Transparent Netowrk IP Resolution (TNIR). Beginning in version 6.0 of the Microsoft JDBC Driver for SQL Server, a new connection property transparentNetworkIPResolution (TNIR) is added for transparent connection to Always On availability groups or to a server which has multiple IP addresses associated. When transparentNetworkIPResolution is true, the driver attempts to connect to the first IP address available. If the first attempt fails, the driver tries to connect to all IP addresses in parallel until the timeout expires, discarding any pending connection attempts when one of them succeeds.

      transparentNetworkIPResolution is ignored if multiSubnetFailover is true

      transparentNetworkIPResolution is ignored if database mirroring is used

      transparentNetworkIPResolution is ignored if there are more than 64 IP addresses

      Parameters:
      tnir - if set to true, the driver attempts to connect to the first IP address available. It is true by default.
    • getTransparentNetworkIPResolution

      boolean getTransparentNetworkIPResolution()
      Returns the TransparentNetworkIPResolution value.
      Returns:
      if enabled, returns true. Otherwise, false.
    • setTrustServerCertificate

      void setTrustServerCertificate​(boolean e)
      Sets a Boolean value that indicates if the trustServerCertificate property is enabled.
      Parameters:
      e - true, if the server Secure Sockets Layer (SSL) certificate should be automatically trusted when the communication layer is encrypted using SSL. Otherwise, false.
    • getTrustServerCertificate

      boolean getTrustServerCertificate()
      Returns a Boolean value that indicates if the trustServerCertificate property is enabled.
      Returns:
      true if trustServerCertificate is enabled. Otherwise, false.
    • setTrustStoreType

      void setTrustStoreType​(java.lang.String trustStoreType)
      Sets the keystore type for the trustStore.
      Parameters:
      trustStoreType - A String that contains the trust store type
    • getTrustStoreType

      java.lang.String getTrustStoreType()
      Returns the keyStore Type for the trustStore.
      Returns:
      trustStoreType A String that contains the trust store type
    • setTrustStore

      void setTrustStore​(java.lang.String trustStore)
      Sets the path (including file name) to the certificate trustStore file.
      Parameters:
      trustStore - A String that contains the path (including file name) to the certificate trustStore file.
    • getTrustStore

      java.lang.String getTrustStore()
      Returns the path (including file name) to the certificate trustStore file.
      Returns:
      trustStore A String that contains the path (including file name) to the certificate trustStore file, or null if no value is set.
    • setTrustStorePassword

      void setTrustStorePassword​(java.lang.String trustStorePassword)
      Sets the password that is used to check the integrity of the trustStore data.
      Parameters:
      trustStorePassword - A String that contains the password that is used to check the integrity of the trustStore data.
    • setHostNameInCertificate

      void setHostNameInCertificate​(java.lang.String hostName)
      Sets the host name to be used in validating the SQL Server Secure Sockets Layer (SSL) certificate.
      Parameters:
      hostName - A String that contains the host name.
    • getHostNameInCertificate

      java.lang.String getHostNameInCertificate()
      Returns the host name used in validating the SQL Server Secure Sockets Layer (SSL) certificate.
      Returns:
      A String that contains the host name, or null if no value is set.
    • setLockTimeout

      void setLockTimeout​(int lockTimeout)
      Sets an int value that indicates the number of milliseconds to wait before the database reports a lock time out.
      Parameters:
      lockTimeout - An int value that contains the number of milliseconds to wait.
    • getLockTimeout

      int getLockTimeout()
      Returns an int value that indicates the number of milliseconds that the database will wait before reporting a lock time out.
      Returns:
      An int value that contains the number of milliseconds that the database will wait.
    • setPassword

      void setPassword​(java.lang.String password)
      Sets the password that will be used to connect to SQL Server.
      Parameters:
      password - A String that contains the password.
    • setPortNumber

      void setPortNumber​(int portNumber)
      Sets the port number to be used to communicate with SQL Server.
      Parameters:
      portNumber - An int value that contains the port number.
    • getPortNumber

      int getPortNumber()
      Returns the current port number that is used to communicate with SQL Server.
      Returns:
      An int value that contains the current port number.
    • setSelectMethod

      void setSelectMethod​(java.lang.String selectMethod)
      Sets the default cursor type that is used for all result sets that are created by using this SQLServerDataSource object.
      Parameters:
      selectMethod - A String value that contains the default cursor type.
    • getSelectMethod

      java.lang.String getSelectMethod()
      Returns the default cursor type used for all result sets that are created by using this SQLServerDataSource object.
      Returns:
      A String value that contains the default cursor type.
    • setResponseBuffering

      void setResponseBuffering​(java.lang.String bufferingMode)
      Sets the response buffering mode for connections created by using this SQLServerDataSource object.
      Parameters:
      bufferingMode - A String that contains the buffering and streaming mode. The valid mode can be one of the following case-insensitive Strings: full or adaptive.
    • getResponseBuffering

      java.lang.String getResponseBuffering()
      Returns the response buffering mode for this SQLServerDataSource object.
      Returns:
      A String that contains a lower-case full or adaptive.
    • setSendTimeAsDatetime

      void setSendTimeAsDatetime​(boolean sendTimeAsDatetime)
      Sets the value to enable/disable the sendTimeAsDatetime connection property.
      Parameters:
      sendTimeAsDatetime - A Boolean value. When true, causes java.sql.Time values to be sent to the server as SQL Server datetime types. When false, causes java.sql.Time values to be sent to the server as SQL Server time types.
    • getSendTimeAsDatetime

      boolean getSendTimeAsDatetime()
      Returns the value of the sendTimeAsDatetime connection property. This method was added in SQL Server JDBC Driver 3.0. Returns the setting of the sendTimeAsDatetime connection property.
      Returns:
      true if java.sql.Time values will be sent to the server as a SQL Server datetime type. false if java.sql.Time values will be sent to the server as a SQL Server time type.
    • setSendStringParametersAsUnicode

      void setSendStringParametersAsUnicode​(boolean sendStringParametersAsUnicode)
      Sets a boolean value that indicates if sending string parameters to the server in UNICODE format is enabled.
      Parameters:
      sendStringParametersAsUnicode - true if string parameters are sent to the server in UNICODE format. Otherwise, false.
    • getSendStringParametersAsUnicode

      boolean getSendStringParametersAsUnicode()
      Returns whether sending string parameters to the server in UNICODE format is enabled.
      Returns:
      true if string parameters are sent to the server in UNICODE format. Otherwise, false.
    • setServerNameAsACE

      void setServerNameAsACE​(boolean serverNameAsACE)
      Sets whether the serverName will be translated from Unicode to ASCII Compatible Encoding (ACE).
      Parameters:
      serverNameAsACE - if enabled the servername will be translated to ASCII Compatible Encoding (ACE)
    • getServerNameAsACE

      boolean getServerNameAsACE()
      Returns if the serverName should be translated from Unicode to ASCII Compatible Encoding (ACE).
      Returns:
      if enabled, will return true. Otherwise, false.
    • setServerName

      void setServerName​(java.lang.String serverName)
      Sets the name of the computer that is running SQL Server.
      Parameters:
      serverName - A String that contains the server name.
    • getServerName

      java.lang.String getServerName()
      Returns the name of the SQL Server instance.
      Returns:
      A String that contains the server name or null if no value is set.
    • setFailoverPartner

      void setFailoverPartner​(java.lang.String serverName)
      Sets the name of the failover server that is used in a database mirroring configuration.
      Parameters:
      serverName - A String that contains the failover server name.
    • getFailoverPartner

      java.lang.String getFailoverPartner()
      Returns the name of the failover server that is used in a database mirroring configuration.
      Returns:
      A String that contains the name of the failover partner, or null if none is set.
    • setMultiSubnetFailover

      void setMultiSubnetFailover​(boolean multiSubnetFailover)
      Sets the value of the multiSubnetFailover connection property.
      Parameters:
      multiSubnetFailover - The new value of the multiSubnetFailover connection property.
    • getMultiSubnetFailover

      boolean getMultiSubnetFailover()
      Returns the value of the multiSubnetFailover connection property.
      Returns:
      Returns true or false, depending on the current setting of the connection property.
    • setUser

      void setUser​(java.lang.String user)
      Sets the user name that is used to connect the data source.
      Parameters:
      user - A String that contains the user name.
    • getUser

      java.lang.String getUser()
      Returns the user name that is used to connect the data source.
      Returns:
      A String that contains the user name.
    • setWorkstationID

      void setWorkstationID​(java.lang.String workstationID)
      Sets the name of the client computer name that is used to connect to the data source.
      Parameters:
      workstationID - A String that contains the client computer name.
    • getWorkstationID

      java.lang.String getWorkstationID()
      Returns the name of the client computer name that is used to connect to the data source.
      Returns:
      A String that contains the client computer name.
    • setXopenStates

      void setXopenStates​(boolean xopenStates)
      Sets whether converting SQL states to XOPEN compliant states is enabled.
      Parameters:
      xopenStates - true if converting SQL states to XOPEN compliant states is enabled. Otherwise, false.
    • getXopenStates

      boolean getXopenStates()
      Returns the value that indicates if converting SQL states to XOPEN compliant states is enabled.
      Returns:
      true if converting SQL states to XOPEN compliant states is enabled. Otherwise, false.
    • setURL

      void setURL​(java.lang.String url)
      Sets the URL that is used to connect to the data source.
      Parameters:
      url - A String that contains the URL.
    • getURL

      java.lang.String getURL()
      Returns the URL that is used to connect to the data source.
      Returns:
      A String that contains the URL.
    • setDescription

      void setDescription​(java.lang.String description)
      Sets the description of the data source.
      Parameters:
      description - A String that contains the description.
    • getDescription

      java.lang.String getDescription()
      Returns a description of the data source.
      Returns:
      A String that contains the data source description or null if no value is set.
    • setPacketSize

      void setPacketSize​(int packetSize)
      Sets the current network packet size used to communicate with SQL Server, specified in bytes.
      Parameters:
      packetSize - An int value containing the network packet size.
    • getPacketSize

      int getPacketSize()
      Returns the current network packet size used to communicate with SQL Server, specified in bytes.
      Returns:
      An int value containing the current network packet size.
    • setAuthenticationScheme

      void setAuthenticationScheme​(java.lang.String authenticationScheme)
      Sets the kind of integrated security you want your application to use.
      Parameters:
      authenticationScheme - Values are "JavaKerberos" and the default "NativeAuthentication".
    • setAuthentication

      void setAuthentication​(java.lang.String authentication)
      Sets the authentication mode.
      Parameters:
      authentication - the authentication mode
    • getAuthentication

      java.lang.String getAuthentication()
      Returns the authentication mode.
      Returns:
      the authentication value
    • setServerSpn

      void setServerSpn​(java.lang.String serverSpn)
      Sets the server spn.
      Parameters:
      serverSpn - A String that contains the server spn
    • getServerSpn

      java.lang.String getServerSpn()
      Returns the server spn.
      Returns:
      A String that contains the server spn
    • setGSSCredentials

      void setGSSCredentials​(org.ietf.jgss.GSSCredential userCredential)
      Sets the GSSCredential.
      Parameters:
      userCredential - the credential
    • getGSSCredentials

      org.ietf.jgss.GSSCredential getGSSCredentials()
      Returns the GSSCredential.
      Returns:
      GSSCredential
    • setAccessToken

      void setAccessToken​(java.lang.String accessToken)
      Sets the access token.
      Parameters:
      accessToken - to be set in the string property.
    • getAccessToken

      java.lang.String getAccessToken()
      Returns the access token.
      Returns:
      the access token.
    • setColumnEncryptionSetting

      void setColumnEncryptionSetting​(java.lang.String columnEncryptionSetting)
      Sets the value to enable/disable Always Encrypted functionality for the data source object. The default is Disabled.
      Parameters:
      columnEncryptionSetting - Enables/disables Always Encrypted functionality for the data source object. The default is Disabled.
    • getColumnEncryptionSetting

      java.lang.String getColumnEncryptionSetting()
      Returns the Always Encrypted functionality setting for the data source object.
      Returns:
      the Always Encrypted functionality setting for the data source object.
    • setKeyStoreAuthentication

      void setKeyStoreAuthentication​(java.lang.String keyStoreAuthentication)
      Sets the name that identifies a key store. Only value supported is the "JavaKeyStorePassword" for identifying the Java Key Store. The default is null.
      Parameters:
      keyStoreAuthentication - the name that identifies a key store.
    • getKeyStoreAuthentication

      java.lang.String getKeyStoreAuthentication()
      Returns the value of the keyStoreAuthentication setting for the data source object.
      Returns:
      the value of the keyStoreAuthentication setting for the data source object.
    • setKeyStoreSecret

      void setKeyStoreSecret​(java.lang.String keyStoreSecret)
      Sets the password for the Java keystore. Note that, for Java Key Store provider the password for the keystore and the key must be the same. Note that, keyStoreAuthentication must be set with "JavaKeyStorePassword".
      Parameters:
      keyStoreSecret - the password to use for the keystore as well as for the key
    • setKeyStoreLocation

      void setKeyStoreLocation​(java.lang.String keyStoreLocation)
      Sets the location including the file name for the Java keystore. Note that, keyStoreAuthentication must be set with "JavaKeyStorePassword".
      Parameters:
      keyStoreLocation - the location including the file name for the Java keystore.
    • getKeyStoreLocation

      java.lang.String getKeyStoreLocation()
      Returns the keyStoreLocation for the Java Key Store.
      Returns:
      the keyStoreLocation for the Java Key Store.
    • setQueryTimeout

      void setQueryTimeout​(int queryTimeout)
      Setting the query timeout.
      Parameters:
      queryTimeout - The number of seconds to wait before a timeout has occurred on a query. The default value is 0, which means infinite timeout.
    • getQueryTimeout

      int getQueryTimeout()
      Returns the query timeout.
      Returns:
      The number of seconds to wait before a timeout has occurred on a query.
    • setCancelQueryTimeout

      void setCancelQueryTimeout​(int cancelQueryTimeout)
      Sets the cancel timeout.
      Parameters:
      cancelQueryTimeout - The number of seconds to wait before we wait for the query timeout to happen.
    • getCancelQueryTimeout

      int getCancelQueryTimeout()
      Returns the cancel timeout.
      Returns:
      the number of seconds to wait before we wait for the query timeout to happen.
    • setEnablePrepareOnFirstPreparedStatementCall

      void setEnablePrepareOnFirstPreparedStatementCall​(boolean enablePrepareOnFirstPreparedStatementCall)
      Sets the value that enables/disables whether the first execution of a prepared statement will call sp_executesql and not prepare a statement. If this configuration is false the first execution of a prepared statement will call sp_executesql and not prepare a statement, once the second execution happens it will call sp_prepexec and actually setup a prepared statement handle. Following executions will call sp_execute. This relieves the need for sp_unprepare on prepared statement close if the statement is only executed once.
      Parameters:
      enablePrepareOnFirstPreparedStatementCall - Changes the setting per the description.
    • getEnablePrepareOnFirstPreparedStatementCall

      boolean getEnablePrepareOnFirstPreparedStatementCall()
      Returns the value that indicates whether the first execution of a prepared statement will call sp_executesql and not prepare a statement. If this configuration returns false the first execution of a prepared statement will call sp_executesql and not prepare a statement, once the second execution happens it will call sp_prepexec and actually setup a prepared statement handle. Following executions will call sp_execute. This relieves the need for sp_unprepare on prepared statement close if the statement is only executed once.
      Returns:
      Returns the current setting per the description.
    • setServerPreparedStatementDiscardThreshold

      void setServerPreparedStatementDiscardThreshold​(int serverPreparedStatementDiscardThreshold)
      Sets the value that controls how many outstanding prepared statement discard actions (sp_unprepare) can be outstanding per connection before a call to clean-up the outstanding handles on the server is executed. If the setting is <= 1 unprepare actions will be executed immedietely on prepared statement close. If it is set to > 1 these calls will be batched together to avoid overhead of calling sp_unprepare too often.
      Parameters:
      serverPreparedStatementDiscardThreshold - Changes the setting per the description.
    • getServerPreparedStatementDiscardThreshold

      int getServerPreparedStatementDiscardThreshold()
      Returns the value of the setting that controls how many outstanding prepared statement discard actions (sp_unprepare) can be outstanding per connection before a call to clean-up the outstanding handles on the server is executed.
      Returns:
      Returns the current setting per the description.
    • setStatementPoolingCacheSize

      void setStatementPoolingCacheSize​(int statementPoolingCacheSize)
      Sets the size of the prepared statement cache for this connection. A value less than 1 means no cache.
      Parameters:
      statementPoolingCacheSize - Changes the setting per the description.
    • getStatementPoolingCacheSize

      int getStatementPoolingCacheSize()
      Returns the size of the prepared statement cache for this connection. A value less than 1 means no cache.
      Returns:
      Returns the current setting per the description.
    • setDisableStatementPooling

      void setDisableStatementPooling​(boolean disableStatementPooling)
      Sets the value to disable/enable statement pooling.
      Parameters:
      disableStatementPooling - true to disable statement pooling, false to enable it.
    • getDisableStatementPooling

      boolean getDisableStatementPooling()
      Returns whether statement pooling is disabled.
      Returns:
      true if statement pooling is disabled, false if it is enabled.
    • setSocketTimeout

      void setSocketTimeout​(int socketTimeout)
      Sets the socket timeout value.
      Parameters:
      socketTimeout - The number of milliseconds to wait before a timeout is occurred on a socket read or accept. The default value is 0, which means infinite timeout.
    • getSocketTimeout

      int getSocketTimeout()
      Returns the socket timeout value.
      Returns:
      The number of milliseconds to wait before a timeout is occurred on a socket read or accept.
    • setJASSConfigurationName

      void setJASSConfigurationName​(java.lang.String configurationName)
      Sets the login configuration file for Kerberos authentication. This overrides the default configuration SQLJDBCDriver
      Parameters:
      configurationName - the configuration name
    • getJASSConfigurationName

      java.lang.String getJASSConfigurationName()
      Returns the login configuration file for Kerberos authentication.
      Returns:
      login configuration file name
    • setFIPS

      void setFIPS​(boolean fips)
      Sets whether Fips Mode should be enabled/disabled on the connection. For FIPS enabled JVM this property should be true.
      Parameters:
      fips - Boolean property to enable/disable fips
    • getFIPS

      boolean getFIPS()
      Returns the value of connection property "fips". For FIPS enabled JVM this property should be true.
      Returns:
      fips boolean value
    • setSSLProtocol

      void setSSLProtocol​(java.lang.String sslProtocol)
      Sets the sslProtocol property for connection Set this value to specify TLS protocol keyword. Acceptable values are: TLS, TLSv1, TLSv1.1, and TLSv1.2.
      Parameters:
      sslProtocol - Value for SSL Protocol to be set.
    • getSSLProtocol

      java.lang.String getSSLProtocol()
      Returns the value of connection property 'sslProtocol'.
      Returns:
      sslProtocol property value
    • getSocketFactoryClass

      java.lang.String getSocketFactoryClass()
      Returns the value for the connection property 'socketFactoryClass'.
      Returns:
      socketFactoryClass property value
    • setSocketFactoryClass

      void setSocketFactoryClass​(java.lang.String socketFactoryClass)
      Sets the connection property 'socketFactoryClass' on the connection.
      Parameters:
      socketFactoryClass - The fully qualified class name of a custom javax.net.SocketFactory.
    • getSocketFactoryConstructorArg

      java.lang.String getSocketFactoryConstructorArg()
      Returns the value for the connection property 'socketFactoryConstructorArg'.
      Returns:
      socketFactoryConstructorArg property value
    • setSocketFactoryConstructorArg

      void setSocketFactoryConstructorArg​(java.lang.String socketFactoryConstructorArg)
      Sets Constructor Arguments to be provided on constructor of 'socketFactoryClass'.
      Parameters:
      socketFactoryConstructorArg - 'socketFactoryClass' constructor arguments
    • setTrustManagerClass

      void setTrustManagerClass​(java.lang.String trustManagerClass)
      Sets the connection property 'trustManagerClass' on the connection.
      Parameters:
      trustManagerClass - The fully qualified class name of a custom javax.net.ssl.TrustManager.
    • getTrustManagerClass

      java.lang.String getTrustManagerClass()
      Returns the value for the connection property 'trustManagerClass'.
      Returns:
      trustManagerClass property value
    • setTrustManagerConstructorArg

      void setTrustManagerConstructorArg​(java.lang.String trustManagerConstructorArg)
      Sets Constructor Arguments to be provided on constructor of 'trustManagerClass'.
      Parameters:
      trustManagerConstructorArg - 'trustManagerClass' constructor arguments
    • getTrustManagerConstructorArg

      java.lang.String getTrustManagerConstructorArg()
      Returns the value for the connection property 'trustManagerConstructorArg'.
      Returns:
      trustManagerConstructorArg property value
    • getUseBulkCopyForBatchInsert

      boolean getUseBulkCopyForBatchInsert()
      Returns whether the use Bulk Copy API is used for Batch Insert.
      Returns:
      whether the driver should use Bulk Copy API for Batch Insert operations.
    • setUseBulkCopyForBatchInsert

      void setUseBulkCopyForBatchInsert​(boolean useBulkCopyForBatchInsert)
      Sets whether the use Bulk Copy API should be used for Batch Insert.
      Parameters:
      useBulkCopyForBatchInsert - indicates whether Bulk Copy API should be used for Batch Insert operations.
    • setMSIClientId

      void setMSIClientId​(java.lang.String msiClientId)
      Sets the client id to be used to retrieve access token from MSI EndPoint.
      Parameters:
      msiClientId - Client ID of User Assigned Managed Identity
    • getMSIClientId

      java.lang.String getMSIClientId()
      Returns the value for the connection property 'msiClientId'.
      Returns:
      msiClientId property value
    • setKeyStorePrincipalId

      void setKeyStorePrincipalId​(java.lang.String keyStorePrincipalId)
      Sets the value for the connection property 'keyStorePrincipalId'.
      Parameters:
      keyStorePrincipalId -
              When keyStoreAuthentication = keyVaultClientSecret, set this value to a valid Azure Active Directory Application Client ID.
              When keyStoreAuthentication = keyVaultManagedIdentity, set this value to a valid Azure Active Directory Application Object ID (optional, for user-assigned only).
              
    • getKeyStorePrincipalId

      java.lang.String getKeyStorePrincipalId()
      Returns the value for the connection property 'keyStorePrincipalId'.
      Returns:
      keyStorePrincipalId
    • setKeyVaultProviderClientId

      void setKeyVaultProviderClientId​(java.lang.String keyVaultProviderClientId)
      Sets the Azure Key Vault (AKV) Provider Client Id to provided value to be used for column encryption.
      Parameters:
      keyVaultProviderClientId - Client Id of Azure Key Vault (AKV) Provider to be used for column encryption.
    • getKeyVaultProviderClientId

      java.lang.String getKeyVaultProviderClientId()
      Returns the value for the connection property 'keyVaultProviderClientId'.
      Returns:
      keyVaultProviderClientId
    • setKeyVaultProviderClientKey

      void setKeyVaultProviderClientKey​(java.lang.String keyVaultProviderClientKey)
      Sets the Azure Key Vault (AKV) Provider Client Key to provided value to be used for column encryption.
      Parameters:
      keyVaultProviderClientKey - Client Key of Azure Key Vault (AKV) Provider to be used for column encryption.
    • getDomain

      java.lang.String getDomain()
      Returns the value for the connection property 'domain'.
      Returns:
      'domain' property value
    • setDomain

      void setDomain​(java.lang.String domain)
      Sets the 'domain' connection property used for NTLM Authentication.
      Parameters:
      domain - Windows domain name
    • getUseFmtOnly

      boolean getUseFmtOnly()
      Returns the current flag value for useFmtOnly.
      Returns:
      'useFmtOnly' property value.
    • setUseFmtOnly

      void setUseFmtOnly​(boolean useFmtOnly)
      Specifies the flag to use FMTONLY for parameter metadata queries.
      Parameters:
      useFmtOnly - boolean value for 'useFmtOnly'.
    • getEnclaveAttestationUrl

      java.lang.String getEnclaveAttestationUrl()
      Returns the enclave attestation URL used in Always Encrypted with Secure Enclaves.
      Returns:
      enclave attestation URL.
    • setEnclaveAttestationUrl

      void setEnclaveAttestationUrl​(java.lang.String url)
      Sets the enclave attestation URL used in Always Encrypted with Secure Enclaves.
      Parameters:
      url - Enclave attestation URL.
    • getEnclaveAttestationProtocol

      java.lang.String getEnclaveAttestationProtocol()
      Returns the enclave attestation protocol used in Always Encrypted with Secure Enclaves.
      Returns:
      Enclave attestation protocol.
    • setEnclaveAttestationProtocol

      void setEnclaveAttestationProtocol​(java.lang.String protocol)
      Sets the enclave attestation protocol to be used in Always Encrypted with Secure Enclaves.
      Parameters:
      protocol - Enclave attestation protocol.
    • getClientCertificate

      java.lang.String getClientCertificate()
      Returns client certificate path for client certificate authentication.
      Returns:
      Client certificate path.
    • setClientCertificate

      void setClientCertificate​(java.lang.String certPath)
      Sets client certificate path for client certificate authentication.
      Parameters:
      certPath - Client certificate path.
    • getClientKey

      java.lang.String getClientKey()
      Returns Private key file path for client certificate authentication.
      Returns:
      Private key file path.
    • setClientKey

      void setClientKey​(java.lang.String keyPath)
      Sets Private key file path for client certificate authentication.
      Parameters:
      keyPath - Private key file path.
    • setClientKeyPassword

      void setClientKeyPassword​(java.lang.String password)
      Sets the password to be used for Private key provided by the user for client certificate authentication.
      Parameters:
      password - Private key password.
    • setDelayLoadingLobs

      void setDelayLoadingLobs​(boolean delayLoadingLobs)
      Specifies the flag to load LOBs instead of streaming them.
      Parameters:
      delayLoadingLobs - boolean value for 'delayLoadingLobs'.
    • getDelayLoadingLobs

      boolean getDelayLoadingLobs()
      Returns the current flag value for delayLoadingLobs.
      Returns:
      'delayLoadingLobs' property value.
    • getSendTemporalDataTypesAsStringForBulkCopy

      boolean getSendTemporalDataTypesAsStringForBulkCopy()
    • setSendTemporalDataTypesAsStringForBulkCopy

      void setSendTemporalDataTypesAsStringForBulkCopy​(boolean sendTemporalDataTypesAsStringForBulkCopy)
      Specifies the flag to send temporal datatypes as String for Bulk Copy.
      Parameters:
      sendTemporalDataTypesAsStringForBulkCopy - boolean value for 'sendTemporalDataTypesAsStringForBulkCopy'.
    • getAADSecurePrincipalId

      java.lang.String getAADSecurePrincipalId()
      Returns the value for the connection property 'AADSecurePrincipalId'.
      Returns:
      'AADSecurePrincipalId' property value.
    • setAADSecurePrincipalId

      void setAADSecurePrincipalId​(java.lang.String AADSecurePrincipalId)
      Sets the 'AADSecurePrincipalId' connection property used for Active Directory Service Principal authentication.
      Parameters:
      AADSecurePrincipalId - Active Directory Service Principal Id.
    • getAADSecurePrincipalSecret

      java.lang.String getAADSecurePrincipalSecret()
      Returns the value for the connection property 'AADSecurePrincipalSecret'.
      Returns:
      'AADSecurePrincipalSecret' property value.
    • setAADSecurePrincipalSecret

      void setAADSecurePrincipalSecret​(java.lang.String AADSecurePrincipalSecret)
      Sets the 'AADSecurePrincipalSecret' connection property used for Active Directory Service Principal authentication.
      Parameters:
      AADSecurePrincipalSecret - Active Directory Service Principal secret.
    • getMaxResultBuffer

      java.lang.String getMaxResultBuffer()
      Returns value of 'maxResultBuffer' from Connection String.
      Returns:
      'maxResultBuffer' property.
    • setMaxResultBuffer

      void setMaxResultBuffer​(java.lang.String maxResultBuffer)
      Specifies value for 'maxResultBuffer' property
      Parameters:
      maxResultBuffer - String value for 'maxResultBuffer'