System.Data.SqlClient Namespace

The System.Data.SqlClient namespace is the .NET Data Provider for SQL Server.

Classes

SqlAuthenticationInitializer

Defines the core behavior of authentication initializers that can be registered in the app.config file and provides a base for derived classes.

SqlAuthenticationParameters

Represents AD authentication parameters passed by a driver to authentication providers.

SqlAuthenticationProvider

Defines the core behavior of authentication providers and provides a base class for derived classes.

SqlAuthenticationToken

Represents an AD authentication token.

SqlBulkCopy

Lets you efficiently bulk load a SQL Server table with data from another source.

SqlBulkCopyColumnMapping

Defines the mapping between a column in a SqlBulkCopy instance's data source and a column in the instance's destination table.

SqlBulkCopyColumnMappingCollection

Collection of SqlBulkCopyColumnMapping objects that inherits from CollectionBase.

SqlClientFactory

Represents a set of methods for creating instances of the System.Data.SqlClient provider's implementation of the data source classes.

SqlClientLogger

Represents a SQL client logger.

SqlClientMetaDataCollectionNames

Provides a list of constants for use with the GetSchema method to retrieve metadata collections.

SqlClientPermission

Enables the .NET Framework Data Provider for SQL Server to help make sure that a user has a security level sufficient to access a data source.

SqlClientPermissionAttribute

Associates a security action with a custom security attribute.

SqlColumnEncryptionCertificateStoreProvider

The implementation of the key store provider for Windows Certificate Store. This class enables using certificates stored in the Windows Certificate Store as column master keys. For details, see Always Encrypted.

SqlColumnEncryptionCngProvider

The CMK Store provider implementation for using the Microsoft Cryptography API: Next Generation (CNG) with Always Encrypted.

SqlColumnEncryptionCspProvider

The CMK Store provider implementation for using Microsoft CAPI based Cryptographic Service Providers (CSP) with Always Encrypted.

SqlColumnEncryptionEnclaveProvider

The base class that defines the interface for enclave providers for Always Encrypted.

SqlColumnEncryptionKeyStoreProvider

Base class for all key store providers. A custom provider must derive from this class and override its member functions and then register it using SqlConnection.RegisterColumnEncryptionKeyStoreProviders(). For details see, Always Encrypted.

SqlCommand

Represents a Transact-SQL statement or stored procedure to execute against a SQL Server database. This class cannot be inherited.

SqlCommandBuilder

Automatically generates single-table commands that are used to reconcile changes made to a DataSet with the associated SQL Server database. This class cannot be inherited.

SqlConnection

Represents a connection to a SQL Server database. This class cannot be inherited.

SqlConnectionStringBuilder

Provides a simple way to create and manage the contents of connection strings used by the SqlConnection class.

SqlCredential

SqlCredential provides a more secure way to specify the password for a login attempt using SQL Server Authentication.

SqlCredential is comprised of a user id and a password that will be used for SQL Server Authentication. The password in a SqlCredential object is of type SecureString.

SqlCredential cannot be inherited.

Windows Authentication (Integrated Security = true) remains the most secure way to log in to a SQL Server database.

SqlDataAdapter

Represents a set of data commands and a database connection that are used to fill the DataSet and update a SQL Server database. This class cannot be inherited.

SqlDataReader

Provides a way of reading a forward-only stream of rows from a SQL Server database. This class cannot be inherited.

SQLDebugging

Included to support debugging applications. Not intended for direct use.

SqlDependency

The SqlDependency object represents a query notification dependency between an application and an instance of SQL Server. An application can create a SqlDependency object and register to receive notifications via the OnChangeEventHandler event handler.

SqlEnclaveAttestationParameters

Encapsulates the information SqlClient sends to SQL Server to initiate the process of attesting and creating a secure session with the enclave, SQL Server uses for computations on columns protected using Always Encrypted.

SqlEnclaveSession

Encapsulates the state of a secure session between SqlClient and an enclave inside SQL Server, which can be used for computations on encrypted columns protected with Always Encrypted.

SqlError

Collects information relevant to a warning or error returned by SQL Server.

SqlErrorCollection

Collects all errors generated by the .NET Framework Data Provider for SQL Server. This class cannot be inherited.

SqlException

The exception that is thrown when SQL Server returns a warning or error. This class cannot be inherited.

SqlInfoMessageEventArgs

Provides data for the InfoMessage event.

SqlNotificationEventArgs

Represents the set of arguments passed to the notification event handler.

SqlParameter

Represents a parameter to a SqlCommand and optionally its mapping to DataSet columns. This class cannot be inherited. For more information on parameters, see Configuring Parameters and Parameter Data Types.

SqlParameterCollection

Represents a collection of parameters associated with a SqlCommand and their respective mappings to columns in a DataSet. This class cannot be inherited.

SqlProviderServices

The DbProviderServices implementation for the SqlClient provider for SQL Server.

SqlRowsCopiedEventArgs

Represents the set of arguments passed to the SqlRowsCopiedEventHandler.

SqlRowUpdatedEventArgs

Provides data for the RowUpdated event.

SqlRowUpdatingEventArgs

Provides data for the RowUpdating event.

SqlTransaction

Represents a Transact-SQL transaction to be made in a SQL Server database. This class cannot be inherited.

Enums

ApplicationIntent

Specifies a value for ApplicationIntent. Possible values are ReadWrite and ReadOnly.

PoolBlockingPeriod

Specifies a value for the PoolBlockingPeriod property.

SortOrder

Specifies how rows of data are sorted.

SqlAuthenticationMethod

Describes the different SQL authentication methods that can be used by a client connecting to Azure SQL Database. For details, see Connecting to SQL Database By Using Azure Active Directory Authentication.

SqlBulkCopyOptions

Bitwise flag that specifies one or more options to use with an instance of SqlBulkCopy.

SqlCommandColumnEncryptionSetting

Specifies how data will be sent and received when reading and writing encrypted columns. Depending on your specific query, performance impact may be reduced by bypassing the Always Encrypted driver's processing when non-encrypted columns are being used. Note that these settings cannot be used to bypass encryption and gain access to plaintext data. For details, see Always Encrypted (Database Engine).

SqlConnectionColumnEncryptionSetting

Specifies that Always Encrypted functionality is enabled in a connection. Note that these settings cannot be used to bypass encryption and gain access to plaintext data. For details, see Always Encrypted (Database Engine).

SqlNotificationInfo

This enumeration provides additional information about the different notifications that can be received by the dependency event handler.

SqlNotificationSource

Indicates the source of the notification received by the dependency event handler.

SqlNotificationType

Describes the different notification types that can be received by an OnChangeEventHandler event handler through the SqlNotificationEventArgs parameter.

Delegates

OnChangeEventHandler

Handles the OnChange event that is fired when a notification is received for any of the commands associated with a SqlDependency object.

SqlInfoMessageEventHandler

Represents the method that will handle the InfoMessage event of a SqlConnection.

SqlRowsCopiedEventHandler

Represents the method that handles the SqlRowsCopied event of a SqlBulkCopy.

SqlRowUpdatedEventHandler

Represents the method that will handle the RowUpdated event of a SqlDataAdapter.

SqlRowUpdatingEventHandler

Represents the method that will handle the RowUpdating event of a SqlDataAdapter.

Remarks

Note

The System.Data.SqlClient APIs are deprecated. For new development, use the Microsoft.Data.SqlClient APIs.

The .NET Data Provider for SQL Server describes a collection of classes used to access a SQL Server database in the managed space. Using the SqlDataAdapter, you can fill a memory-resident DataSet that you can use to query and update the database.

Note

For conceptual information about using this namespace when programming with .NET, see SQL Server and ADO.NET.