Showing posts with label SQL Server. Show all posts
Showing posts with label SQL Server. Show all posts

Monday, 6 November 2017

SQL Server creating table with clustered index without a primary key

Yes, it is possible to create a clustered index that is not the primary key. Just use a CREATE CLUSTERED INDEX statement.
CREATE TABLE dbo.myTable (
    myTableId int PRIMARY KEY NONCLUSTERED
    myColumn int NOT NULL
)

CREATE CLUSTERED INDEX myIndex ON dbo.myTable(myColumn)

Wednesday, 29 July 2015

Differences between Sql server 2005, 2008, 2008r2, 2012

Difference between Sql server 2000 and 2005
Table1

Difference between Sql server 2005 and 2008
Table2

Difference between Sql server 2008 and 2008r2
Table3

Difference between Sql server 2008 and 2012
Table4

Thursday, 25 September 2014

View in SQL Server 2008



Introduction

In this article, I describe Views in SQL Server. This is a simple topic. I hope this article will help you just like my Windows Store articles. Please give me your valuable suggestions and feedback to improve my articles.

What is a View

Views are database objects which are like virtual tables that have no physical storage and contains data from one table or multiple tables. A View does not have any physical storage so they do not contain any data. When we update, insert or apply any operation over the View then these operations are applied to the table(s) on which the view was created.

Types Of View
  1. System View
  2. User Define View
User Defined Views are important so I describe only User Defined Views. They are of two types:
  1. Simple View
  2. Complex view
Simple View:

When a View is created on a single Table than it is called a Simple View. We can apply all operations on a Simple View that we can apply on a table.

First of all we create a table on which we create a view.
create table emp(empId int,empName varchar(15),empAdd varchar(15))

Now insert data by the following code.
 
insert into emp
select 1,'deepak','UA'union all
select 2,'Middha','Punjab'union all
select 3,'d','Delhi'union all
select 4,'gourav','Noida'union all
select 5,'deepakia','Laksar'union all
select 6,'Deep','Haridwar'

Table:



Creation of a simple view:
 
create view v1
as
select * from emp

Operation on view:

See all the data of the view:
 
select * from v1

Output:



See the specific data of the view:
 
select * from v1 where empId=

Output:

Insertion:
 
insert into v1 values(7,'raj','canada'); 

Output:




Updating:
 
update v1 set empAdd='usa'where empId=

Output:


deletion:
 
delete from v1 where empId=7

Output:





Renaming:
 
exec sp_rename 'v1','v11' 

Logic of the View:
exec sp_helptext v1

Output:



Dropping the View:
 
drop view v1 

Encrypted View:
 
create view v1
with encryption
as
select * from emp

Complex view:

Views created on more than one table are called Complex View. We cannot perform all operations of a table on a Complex View.

First of all we create a table and insert some data :
create table empStatus(empId int,empStatus varchar(10))
 
insert into empStatus
select 1,'active'union all
select 2,'inactive'union all
select 4,'active'union all
select 5,'inactive'union all
select 6,'active'

Table:
select * from empStatus

Output:
           


Creation of complex view:
 
create View VComplex
as
select e.empId,e.empName,e1.empStatus from emp e inner join empStatus e1 on e.empId=e1.empId  

See all the records:
 
select * from VComplex

Output:


See specific record:
 
select * from VComplex where empId=4

Output:



If we try insert, update or delete in a complex view then it shows an error as in the following:
 
insert into vcomplex values(11,'d','inactive')

Output:


Encryption of the Complex View:
 
create View VComplex
With encryption
as
select e.empId,e.empName,e1.empStatus from emp e inner join empStatus e1 on e.empId=e1.empId
 
Summary

In this app I described Views in SQL Server. I hope this article has helped you to understand this topic. Please share if you know more about this. Your feedback and constructive contributions are welcome.
 

C# LINQ Joins With SQL

There are  Different Types of SQL Joins  which are used to query data from more than one database tables. In this article, you will learn a...