|
What does this return? SELECT USER_NAME() -- Returns Andy EXECUTE AS TechPreparation GO EXECUTE AS Steve GO REVERT GO SELECT USER_NAME() TechPreparation The execution context switches can be nested, so changing to TechPreparation, then Steve, then issuing a Revert will return you to the context of TechPreparation. This works in the same manner as a stack. In building a PDF report in Reporting Services 2005, images that are originally stored in jpg format are rendered in jpg format. What format are images rendered in if they were stored originally in another format? png Images stored originally in formats other than jpg are rendered in png format. What does the tablediff utility do? This utility will report the differences in data between two tables. This utility will report the data differences between two tables. They must be alike in structure and give back the T-SQL to bring the data in the tables to be the same for most datatypes. Which severity levels of errors can be corrected by a user (as opposed to those that an administrator or Microsoft must work to fix.) 11-16 Severity levels 11-16 are correctable by users. Below 11, these are informational warnings and not raised as system errors. Errors above 16 must have an administrator or Microsoft correct. What is the granularity in seconds of the timestamp datatype? The timestamp datatype does not store time values. The answer is the timestamp datatype does not store time values. The better name for this datatype is rowversion, and it is actually a database-wide unique varbinary value. When you have a rowversion column in a table, the value of the rowversion column changes for each modification to each row. The value in the rowversion column is guaranteed to be unique across all tables in the datatype. You are setting up the backup scheme for your SQL Server 2005 server and want to setup nightly full backups and hourly log backups in the Maintenance Plans subsystem. How many plans must you setup? 2 Since you have two separate schedules for the maintenance operations, you will need to have two separate plans to handle this need. Each plan can only be executed on one schedule, so one is needed for a single daily execution, the nightly full backups, and another for the hourly log backups. You have installed one new assembly on your SQL Server 2005 server and are wondering if it is being used on the production server. How can you easily monitor to see if this assembly is being used? You can monitor the Assembly Load event in a trace. While you could scan trace results for the names of functions and procedures using the assembly, it is possible that you may not know all the places the assembly is being called from. There is a CLR Load event class that will capture an event when a CLR class is executed. You wish to ensure you can recover your SQL Server 2005 database to a point in time if necessary. Which recovery models can you use? Full Only the Full recovery model supports point in time restoration of your database. Does a root element in an XML document necessarily contain all the content for a well-formed document? Yes By definition, the root element is required in a well-formed XML document and it contains all other content nested inside it. Which of the following datatypes can be represented in a SQL_VARIANT datatype? None of the above. The SQL Variant type can store all datatypes except varchar(max), varbinary(max), xml, text, ntext, rowversion/timestamp (thought the data of a rowversion can be stored in a binary(8), which can be stored in a sql_variant) and sql_variant (it may seem strange that you can’t store a variant in a variant, but all this is saying is that the sql_variant data type doesn’t actually exist as such—SQL Server chooses the best type of storage to store the value you give to it). What's the difference between a server login and a database user? A server login connects an account to the server. A database user the link from the server login to a defined database . You need to create a server login using CREATE LOGIN before you can then link it to a database using a database user with CREATE USER. The server login logs into the server and grants access to any server wide permissions. The server login is then mapped to a database user for access to database objects. For regulatory reasons, you must maintain an exact text copy of your XML documents in your SQL Server 2005 database. What datatype of storage should you choose? varchar(max) The XML data type changes the representation of your XML document into an internal, optimized version that has all the content, but may not maintain the original text. The varchar(max) or nvarchar(max) represenations should be used in this case. What is a bookmark lookup? An operation where the row in the heap or clustered index is found from the bookmark in the index. A bookmark ID is stored in an index and points back to the actual row in the heap or clustered index of the table. The lookup operation occurs when an index satisfies a search and the actual row is retrieved from the table. Yesterday's QOD How are comments denoted in an XML document? With the <!-- and --> markers. Comments in an XML document are denoted just as they are in HTML with the markers. How secure are encrypted stored procedures, triggers and views? They are not really secure, that are only obfusticated. There are tools that you can use to get at the code. The code itself is just obfusticated. However, you cannot edit the code, the stored procedure or view would have to be dropped and re-created. By combing this fact with a DDL trigger that executes on object creation you can tell when it has been modified. You have created a new assembly and want to test it on SQL Server 2005. You install the developer edition with defaults on your workstation and create the assembly as a sysadmin. You then write a function to use this assembly, but it does not work. What could be the problem? The CLR environment needs to be enabled. By default on SQL Server 2005, the CLR runtime environment, which is what executes the .NET assemblies, is not enabled. You need to execute the following code to enable it: The Service Broker operates on messages in which fashion? Like a queue, first in, first out. Messages transferred in Service Broker work in a queue fashion with the first message being sent being the first processed. You have a user that agrees to take over some of the database administration for your SQL Server 2005. They will be in charge of granting access to one particular database used by the time card application for server logins. What security role should you assign them? db_accessadmin This user will not add logins, but rather grant database level access for existing logins, therefore the minimum role they need is the db_accessadmin fixed database role. This allows them the ability to add access for Windows logins, Windows group logins, or SQL Server logins. 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. What result would you expect from this statement? Select * from dbo .MyTable All records from [dbo].[MyTable] The answer is all records from [dbo].[MyTable]. Qualified names can include white space before and after the dots. Restrictions apply only to the names themselves that may need quoted identifiers with embedded white space or invalid characters. You are using SQL Server 2005 and you wish to find a number of details about stored procedures created. The details include date and time, the server that created the stored procedure, the login name and the contents. How would you do this? Create a DDL trigger on CREATE_PROCEDURE database event The answer is Create a DDL trigger on CREATE_PROCEDURE database event You can find the answer on page 448 of Beginning SQL Server 2005 for Developers: From Novice to Professional A .NET assembly running with UNSAFE permissions can do which of the following? All of the above CLR code running with UNSAFE permissions can access virtually any resource inside or outside of SQL Server without restriction. This is one reason only a sysadmin can create an assembly as UNSAFE. What does the SQL Writer service do? Handles Volume Shadow Service Copy functions. The SQL Writer service was introduced to handle access to the data files in SQL Server. It allows backup programs, like VSS, to function while SQL Server is still running. Which key provides the strongest encryption? AES (256 bit) The longer the key, the better the encryption, so choose longer keys for more encryption. However there is a larger performance penalty for longer keys. DES is a relatively old and weaker algorithm than AES. You are delegating permissions on your SQL Server 2005 server to other administrators. You have local, single server jobs on one server that you would like to allow another administer to start, stop, and view the history for, but not delete history. This administrator will own the jobs. Which role should you assign? SQLAgentUserRole SQL Server 2005 provides 3 fixed roles for the agent service that limit privileges for administrators. The SQLAgentUserRole is designed for local jobs (not multiserver) that allows the member to work with their owned jobs (edit, start, stop, view history) without deleting the history of any job.
|