ADO.NET and Database FAQ
1.
What is the
role of the DataReader class in ADO.NET connections?
It returns a
read-only, forward-only rowset from the data source. A DataReader provides fast
access when a forward-only sequential read is needed.
2. What are
advantages and disadvantages of Microsoft-provided
data provider
classes in ADO.NET?
SQLServer.NET
data provider is high-speed and robust, but requires SQL Server license
purchased from Microsoft. OLE-DB.NET is universal for accessing other sources,
like Oracle, DB2, Microsoft Access and Informix. OLE-DB.NET is a .NET layer on
top of the OLE layer, so it's not as fastest and efficient as SqlServer.NET.
3. What is
the wildcard character in SQL?
Let's say you
want to query database with LIKE for all employees whose name starts with La.
The wildcard character is %, the proper query with LIKE would involve ‘La%'.
4. Explain
ACID rule of thumb for transactions?
A transaction
must be:
- Atomic
- it is one unit of work and does not dependent onprevious and following
transactions.
- Consistent - data is either committed or roll back, no “in-between” case
where something has been updated and something hasn't.
- Isolated
- no transaction sees the intermediate results of the current transaction).
- Durable
- the values persist if the data had been committed even if the system
crashes right after.
5. What
connections does Microsoft SQL Server support?
Windows
Authentication (via Active Directory) and SQL Serverauthentication (via
Microsoft SQL Server username and password).
6. Between
Windows Authentication and SQL Server
Authentication,
which one is trusted and which one is untrusted?
Windows
Authentication is trusted because the username and password are checked with the
Active Directory, the SQL Server authentication is untrusted, since SQL Server
is the only verifier participating in the transaction.
7. What does
the Initial Catalog parameter define in the
connection
string?
The database
name to connect to.
8. What does
the Dispose method do with the connection object?
Deletes it from
the memory.
9.
What
is a pre-requisite for connection pooling?
Multiple
processes must agree that they will share the same connection, where every
parameter is the same, including the security
settings. The connection string must be identical.