1. What is Cursor?
Cursor is a database object used by
applications to manipulate data in a set on a row-by- row basis, instead of the
typical SQL commands that operate on all the rows in the set at one time.
In order to work with a cursor we need to perform some steps in the following
order:
1. Declare
cursor
2. Open
cursor
3. Fetch
row from the cursor
4. Process
fetched row
5. Close
cursor
6. Deallocate
cursor
2. What is Difference between Function and Stored Procedure?
UDF can be used in the SQL statements anywhere in the WHERE/HAVING/SELECT section where as Stored procedures cannot be. UDFs that return tables can be treated as another rowset. This can be used in JOINs with other tables. Inline UDF's can be thought of as views that take parameters and can be used in JOINs and other Rowset operations.
3. What are different Types of Join?
1. Cross
Join : A cross
join that does not have a WHERE clause produces the Cartesian product of the
tables involved in the join. The size of a Cartesian product result set is the
number of rows in the first table multiplied by the number of rows in the
second table. The common example is when company wants to combine each product
with a pricing table to analyze each product at each price.
2. Inner
Join : A join
that displays only the rows that have a match in both joined tables is known as
inner Join. This is the default type of join in the Query and View Designer.
3. Outer
Join : A join
that includes rows even if they do not have related rows in the joined table is
an Outer Join. You can create three different outer join to specify the
unmatched rows to be included:
1.Left
Outer Join: In Left
Outer Join all rows in the first-named table i.e. "left" table, which
appears leftmost in the JOIN clause are included. Unmatched rows in the right
table do not appear.
2. Right
Outer Join: In
Right Outer Join all rows in the second-named table i.e. "right"
table, which appears rightmost in the JOIN clause are included. Unmatched rows
in the left table are not included.
3 Full
Outer Join: In Full
Outer Join all rows in all joined tables are included, whether they are matched
or not.
4.Self
Join This is
a particular case when one table joins to itself, with one or two aliases to
avoid confusion. A self join can be of any type, as long as the joined tables
are the same. A self join is rather unique in that it involves a relationship
with only one table. The common example is when company has a hierarchal
reporting structure whereby one member of staff reports to another. Self Join
can be Outer Join or Inner Join.
4. What are primary keys and foreign keys?
Primary keys are the unique identifiers for
each row. They must contain unique values and cannot be null. Due to their
importance in relational databases, Primary keys are the most fundamental of
all keys and constraints. A table can have only one Primary key. Foreign keys
are both a method of ensuring data integrity and a manifestation of the
relationship between tables.
5. What is User Defined Functions? What kind
of User-Defined Functions can be created?
User-Defined Functions allow defining its own
T-SQL functions that can accept 0 or more parameters and return a single scalar
data value or a table data type.
Different Kinds of User-Defined Functions created are:
1.Scalar
User-Defined Function A
Scalar user-defined function returns one of the scalar data types. Text, ntext,
image and timestamp data types are not supported. These are the type of
user-defined functions that most developers are used to in other programming
languages. You pass in 0 to many parameters and you get a return value.
2. Inline
Table-Value User-Defined Function An
Inline Table-Value user-defined function returns a table data type and is an
exceptional alternative to a view as the user-defined function can pass
parameters into a T-SQL select command and in essence provide us with a
parameterized, non-updateable view of the underlying tables.
3.Multi-statement
Table-Value User-Defined Function A
Multi-Statement Table-Value user-defined function returns a table and is also
an exceptional alternative to a view as the function can support multiple T-SQL
statements to build the final result where the view is limited to a single
SELECT statement. Also, the ability to pass parameters into a TSQL select
command or a group of them gives us the capability to in essence create a
parameterized, non-updateable view of the data in the underlying tables. Within
the create function command you must define the table structure that is being
returned. After creating this type of user-defined function, It can be used in
the FROM clause of a T-SQL command unlike the behavior found when using a
stored procedure which can also return record sets.
No comments:
Post a Comment