From c1fb80e1a78493c8290099712bd5e5b2234bd010 Mon Sep 17 00:00:00 2001 From: deekshitha <karrideekshitha2002@gmail.com> Date: Fri, 29 Nov 2024 17:40:44 +0530 Subject: [PATCH] SqlAssignment1 --- .../Deekshitha_karri_1537_assignment1.sql | 200 ++++++++++++++++++ 1 file changed, 200 insertions(+) create mode 100644 deekshitha/SQLAssignment1/Deekshitha_karri_1537_assignment1.sql diff --git a/deekshitha/SQLAssignment1/Deekshitha_karri_1537_assignment1.sql b/deekshitha/SQLAssignment1/Deekshitha_karri_1537_assignment1.sql new file mode 100644 index 0000000..e855039 --- /dev/null +++ b/deekshitha/SQLAssignment1/Deekshitha_karri_1537_assignment1.sql @@ -0,0 +1,200 @@ +CREATE DATABASE Assignment1; + +USE Assignment1; +Go + +--Create table with constraints. + +CREATE TABLE Employe( + Id int not null, + Ename varchar(50), + Age int check(age>=18), + salary decimal, + Email varchar(40) default 'no email'); + +SELECT * FROM Employe; + +INSERT INTO Employe(Id,Ename,Age,salary) VALUES(1,'john',17,20000); --error + +INSERT INTO Employe(Id,Ename,Age,salary) VALUES(1,'john',18,20000); --takes default value for email + +INSERT INTO Employe VALUES (2,'jane',20,25000,'jane12@gamil.com'); + +--Create Table with all the datatypes + +CREATE TABLE DataTypeEmp( + Id int, + VName Varchar(20), + Cname Char(10), + Nname Nvarchar(30), + Ftype float(20), + Dtype float(53), + NumType numeric, + DateType date, + DTtype Datetime); + +INSERT INTO DataTypeEmp VALUES(1,'abc','jfghjkl','dfsjgfdlfg',21.456789456789456789,3.12345678909876543212345678,765432345676543,'2012-11-12','2012-11-20'); + +SELECT * FROM DataTypeEmp; + +INSERT INTO DataTypeEmp VALUES(2,'fdsfhgjhkjklkjhgf','jfghjkl','dfsjgfdlfg',21.456789456789456789345678987654345679,3.1234567890987654321234567845678786889,765432344567898678,'2012-11-12','2012-11-20 19:07:02'); + +--Create table with Identity + +CREATE TABLE Student( + Id int Identity(1,1), + Sname varchar(20), + Email varchar(20)); + +INSERT INTO Student VALUES('john','john@123'),('jane','jane@123'),('paul','paul@123'); + +SELECT * FROM Student; + +DELETE FROM Student where Id=3; + +INSERT INTO Student VALUES('john','john@123'),('jane','jane@123'),('paul','paul@123'); + +TRUNCATE TABLE Student; + +INSERT INTO Student VALUES('john','john@123'),('jane','jane@123'),('paul','paul@123'); + +SELECT SCOPE_IDENTITY() AS LastInsertedID; + +--Computed columns + +CREATE TABLE CustomerSale( + Id int, + Fname varchar(20), + Lname varchar(20), + FullName AS (Fname+' '+Lname) PERSISTED, + Quantity int, + UnitPrice decimal(10,2), + TotalPrice AS (Quantity*UnitPrice) + ); + +CREATE TABLE CustomerSale1( + Id int, + Fname varchar(20) NOT NULL, + Lname varchar(20) NULL, + FullName AS (Fname+' '+Lname) UNIQUE , + Quantity int NULL, + UnitPrice decimal(10,2) NULL, + TotalPrice AS (Quantity*UnitPrice) PERSISTED PRIMARY KEY + ); --Accepts only unique and primary key constraints + +INSERT INTO CustomerSale1(Id,Fname,Quantity,UnitPrice) VALUES(1,'paul',2,500); + +INSERT INTO CustomerSale1(Id,Fname,Quantity,UnitPrice) VALUES(2,'paul1',3,400); --ERROR (unique) + +INSERT INTO CustomerSale(Id,Fname) VALUES(1,'paul'); -- Full name null + +INSERT INTO CustomerSale VALUES(1,'john','paul',2,500); + +SELECT * FROM CustomerSale; + +SELECT * FROM CustomerSale1; + +UPDATE CustomerSale SET FullName='jane paul' WHERE Id=1; --cannot modify + +--Primary and Foreign key + +CREATE TABLE Users ( + ID int primary key, + Uname varchar(20), + Email varchar(20)); + + +CREATE TABLE Roles( + RoleId int primary key, + RName varchar(20), + UserID int foreign key(UserID) references Users(ID) + on delete cascade on update cascade) ; + + + +INSERT INTO Users VALUES(1,'user1','user1@123'),(2,'user2','user2@123'); + +INSERT INTO Roles VALUES(1,'Admin',1); + +INSERT INTO Roles VALUES(2,'Admin',3); --error The INSERT statement conflicted with the FOREIGN KEY constraint "FK__Roles__UserID__68487DD7". + +INSERT INTO Roles(RoleId,RName) VALUES(2,'Admin'); + +INSERT INTO Roles VALUES(4,'User',4); + +SELECT * FROM Roles; + +SELECT * FROM Users; + +DELETE FROM Users WHERE ID=1; --deletes in both tables + +DELETE FROM Roles WHERE RoleId=2; + +INSERT INTO Users VALUES(1,'user1','user1@123'); + + +UPDATE Users Set ID=3 WHERE ID=4; --Updates in both tables + +CREATE TABLE Users1 ( + ID int primary key, + Uname varchar(20), + Email varchar(20)); + +CREATE TABLE Roles1( + RoleId int primary key, + RName varchar(20), + UserID int foreign key(UserID) references Users1(ID) + on delete set null on update set null) ; + +INSERT INTO Users1 VALUES(1,'user1','user1@123'),(2,'user2','user2@123'); + +INSERT INTO Roles1 VALUES(1,'Admin',1); + +SELECT * FROM Roles1; + +SELECT * FROM Users1; + +DELETE FROM Users1 WHERE ID=1; + +INSERT INTO Users1 VALUES(3,'user1','user1@123'),(5,'user2','user2@123'); + +INSERT INTO Roles1 VALUES(1,'Admin',2); + +UPDATE Users1 Set ID=3 WHERE ID=2; + +--Alter Table + +CREATE TABLE Course(ID int,Cname varchar(20)); + +INSERT INTO Course VALUES(1,'cse'),(2,'ece'); + +SELECT * FROM Course; + +ALTER TABLE Course +ALTER COLUMN Cname Varchar(40); --length + +ALTER TABLE Course +ALTER COLUMN Cname char(40); --datatype + +EXEC sp_rename 'Course.Cname' ,'name','Column'; --rename + +ALTER TABLE Course ADD Ctype varchar(10) ; --addcolumn + +ALTER TABLE Course DROP column Ctype; --dropcolumn +ALTER TABLE Course drop column ID; + +ALTER TABLE Course ADD ID INT NOT NULL; +ALTER TABLE Course ADD CONSTRAINT pk_Course_id Primary Key (ID); + +ALTER TABLE Course DROP CONSTRAINT pk_Course_id; + + + + + + + + + + + -- GitLab