Wednesday, April 30, 2008

Microsoft SQL Server Interview Questions And Answers (SET -9)

Microsoft SQL Server Interview Questions And Answers (SET -9)



What does this method in SQL Server 2005's SMO equate to in T-SQL?
db.CheckTables(RepairType.None)
DBCC CHECKDB WITH NO_INFOMSGS
This SMO method executes a DBCC CHECKDB with the NO_INFOMSGS option set.

In SQL Server 2005, can you include a user-defined role as a member of another user-defined role?
Yes
Yes you can.

In SQL Server 2005, what does instance aware mean for a service?
The service is installed once for each instances on the server.
An instance aware service is one that is installed for each instance on the server. An instance-unaware service is only installed once , no matter how many instances. Integration Services is instance-unaware whereas SQL Agent is instance aware.

If you use the EXECUTE AS clause to impersonate a user at a database-scoped level. Can you execute a query through a linked server if the impersonated user has the rights to do so when normally logged in? No trust relationships exist between the databases.
No
If you change your execution context to a user, which is scoped at a database level, then any queries to linked servers or other databases will fail. There is a way around this restriction if trust relationships are setup.

The nesting level for stored procedures in SQL Server 2005, but how many databases can you access inside one stored procedure?
8
The footnote for nested stored procedures limits the number at 8.

Is it possible to build an index on a view ?
Yes
Yes, an index can be put on a view but the first index must be a unique clustered index.

What does REVERT do in SQL Server 2005?
Restores your previous execution context.
If you have changed your execution context with EXECUTE AS, the REVERT statement will restore the last context prior to the EXECUTE AS.

What does SEND do in SQL Server 2005?
Sends a service broker message using a conversation.
SEND is used to send a message on an existing conversation in the Service Broker architecture.

In SQL Server 2005, most data for your data types is stored in the pages for the table. Binary objects, such as image or text, are stored in LOB or large Object data pages. Where is varchar(max) data stored?
In LOB pages
Since the size restrictions for varchar(max) are the same as for text data, this data is stored in LOB data pages.

What will occur with the following code in SQL Server 2005 if executed by Alice?
execute as user = 'Bob' with no revert
select user_name()
go
revert
select user_name()
go

You will receive as results:

bob
An error

The NO REVERT option with EXECUTE AS prevents the return of execution context to the previous value. If you run the REVERT statement, you will receive the following error:

You have to create some T-SQL that produces an order of players in a golf tournament. Players who finish on the same number of strokes have to be given the same finishing place denoting that they will have an equal prize amount. What T-SQL function can achieve this?
RANK alongside the OVER function where the OVER function uses the players number of strokes taken
The rank function will return the rank of the row in the result set. Ties will receive the same rank. The OVER clause will separate out the ranking into partitions and use those for calculating the proper placement of the golfers.

You want to disable the trigger dEmployee on the HumanResources.Employee table in the SQL Server 2005 AdventureWorks sample database. Which of the following statements will do the trick?

Answer
A and B

Explanation
Either of the commands in A and B will disable the trigger.


In SQL Server 2005, if you want the keys securing your data to expire over time, what type of key encryption would you choose?

Answer
Certificates

Explanation
Certificates have an expiration data associated with them. This allows you to issue them to users and force a reissue in order to maintain their access to data.


Which is larger in size in SQL Server 2005 if you are using symmetric keys?

Answer
Ciphertext

Explanation
Ciphertext is larger and can be calculated using the following formula:
Size = ( FLOOR (8 + D)/BLOCK) + 1) * (BLOCK + BLOCK + 16)
where D is the data size in bytes, BLOCK is the block size (8 or 16, depending on algorithm) and Size is the new size in bytes of the ciphertext.

0 comments: