What are constraints? Mention the different types of constraints?
Correct Answer
Constraints enable the RDBMS to enforce the integrity of the database automatically, without the need to create triggers, rule or defaults Types of Constraints: NOT NULL, CHEQUE, UNIQUE, PRIMARY KEY, FOREIGN KEY
Technology problems
Search Results
1. What are defaults? Is there a column to which a default can?t be bound?
Correct Answer: A default is a value which will be used by a column, if no value is supplied to that column while inserting data Yes, IDENTITY and TIMESTAMP columns are free from the bounds of default
2. State one similarity and difference between WHERE Clause and HAVING Clause?
Correct Answer: Similarity: Both WHERE and HAVING Clause filters out records based on one or more conditions Difference: WHERE Clause can only be applied to a static non-aggregated column whereas HAVING is needed for aggregated columns
3. How can you generate debugging output from PL/SQL?
Correct Answer: - A clustered index is a special type of index that reorders the way records in the table are physically stored Therefore table can have only one clustered index The leaf nodes of a clustered index contain the data pages - A non clustered index is a special type of index in which the logical order of the index does not match the physical stored order of the rows on disk The leaf node of a non clustered index does not consist of the data pages Instead, the leaf nodes contain index rows
8. What is difference between DELETE and TRUNCATE commands?
Correct Answer: Delete command removes the rows from a table based on the condition that we provide with a WHERE clause Truncate will actually remove all the rows from a table and there will be no data in the table after we run the truncate command TRUNCATE: - TRUNCATE is faster and uses fewer system and transaction log resources than DELETE - TRUNCATE removes the data by deallocating the data pages used to store the table's data, and only the page deallocations are recorded in the transaction log - TRUNCATE removes all rows from a table, but the table structure, its columns, constraints, indexes and so on, remains The counter used by an identity for new rows is reset to the seed for the column - You cannot use TRUNCATE TABLE on a table referenced by a FOREIGN KEY constraint Because TRUNCATE TABLE is not logged, it cannot activate a trigger - TRUNCATE cannot be rolled back - TRUNCATE is DDL Command - TRUNCATE Resets identity of the table DELETE: - DELETE removes rows one at a time and records an entry in the transaction log for each deleted row - If you want to retain the identity counter, use DELETE instead If you want to remove table definition and its data, use the DROP TABLE statement - DELETE Can be used with or without a WHERE clause - DELETE Activates Triggers - DELETE can be rolled back - DELETE is DML Command - DELETE does not reset identity of the table Note: DELETE and TRUNCATE both can be rolled back when surrounded by TRANSACTION if the current session is not closed If TRUNCATE is written in Query Editor surrounded by TRANSACTION and if session is closed, it can not be rolled back but DELETE can be rolled back
9. Can SQL Servers linked to other servers like Oracle?
Correct Answer: SQL Server can be linked to any server provided it has OLE-DB provider from Microsoft to allow a link Eg Oracle has an OLE-DB provider for oracle that Microsoft provides to add it as linked server to SQL Server group
Correct Answer: Log shipping is the process of automating the backup of database and transaction log files on a production SQL server, and then restoring them onto a standby server Enterprise Editions only supports log shipping In log shipping the transactional log file from one server is automatically updated into the backup database on the other server If one server fails, the other server will have the same db and can be used this as the Disaster Recovery plan The key feature of log shipping is that it will automatically backup transaction logs throughout the day and automatically restore them on the standby server at defined interval