SlideShare une entreprise Scribd logo
1  sur  17
7 SQL SERVER: CUSTOMIZINGTHE DATABASE DESIGN
Customizing a database The Power of a DBMS lies in the control that it offers the user over the data lying underneath. By customizing the structure of the data, a programmer can optimize the efficiency of the system in a specific implementation. A Basic customization feature is controlling the type of data that is stored in a database table. Some of the such basic customizations are: ,[object Object]
  Adding a foreign key
  Adding Constraints
  Unique Constraint
  Not Null Constraint
  Check Constraint,[object Object]
Primary Keys What is a Primary Key: A Primary key is a field/attribute in a table which is used to uniquely identify a record Eg: Consider a dream database Here, a particular record can be uniquely located using the DreamNumber and hence, it is taken as the Primary key. If there are more than fields, eligible of being the primary key, the decision of choosing one among them lies with the DB designer
Primary Key Adding a Primary Key: A Table must have only one primary key. The Primary key must be defined during the creation of the table.  Syntax: Create table <tableName> ( <fieldName1><field1Type>  primary key, ..); Example: Consider the creation of the following table. The field ‘Dream Number’ is  to be designated as the primary key Create table dreamtable( dreamnumberintprimary key, dream varchar(10), dreamdate date, dreamtime time, dreamtypevarchar(10)) ;
Redefining primary key Now, let us take a step back and redefine the primary key that we have learnt already. The definition that we learnt was: A Primary key is a field which lets us to uniquely identify a record in a table. This definition may sound intuitive, but in real word cases, a single field may not be enough to identify a record in a table. In such cases, a collection (two or more) of fields are used as a primary key. Consider the following example of a hospital’s patient table:
Redefining primary key In this case, it would be possible to locate a record uniquely only with information of more than one field values. Example: PatientID, Date of Admisssion and Time of Admission can be combined to form a primary key. The SQL Command to do this is via a constraint: create table <tableName> (<field names>,…, constraint <constraintName> primarykey(<filedName1>,<fieldName2>,..) ); Example: create table Patients(patientidvarchar(10), patientnamevarchar(20), dateofadmission date, timeofadmission time, issue varchar(20),constraint patientpkeysprimary key(patientid, dateofadmission, timeofadmission) );
Adding primary keys to existing tables The SQL Server allows primary keys to be added to an existing table.  Syntax: ALTER TABLE <tableName>     ADD CONSTRAINT <constraintName>      PRIMARY KEY (<FieldName>); Example: Consider the patient database. The command to define the primary key after creating the table is: Alter table Patients add constraint patientpkeysprimary key(patientid, dateofadmission, timeofadmission) );
Foreign Keys Foreign Key: A Foreign key is a field/attribute in one table which is used as a primary key in another table Eg: Consider a dream database Every foreign key value must be present as a primary key in the referenced table. Eg: A dream number ‘3’ isn’t possible in ‘Luck Table’ unless such a dream number exists in the ‘Dream Table’ Dream Table Notice that foreign key entries can repeat (where-as primary key entries can’t!) Foreign Key Primary Key Luck Table Refer-ences
Foreign Keys In SQL Server, a foreign key is created as follows: Create table <Table2_Name> (<filedName1> foreign key references <Table1_Name> (Table1FieldName)); In the example that we just considered, the dreamNumberof the Luck Table is using the value of the primary Key dreamNumberfrom Dream Table. Hence, it is a foreign Key. The SQL statement to effect this is: Create table lucktable (dreamnumberintforeign key references dream(dreamnumber), luck varchar(15), predictor varchar(20)); NOTE: It is essential to create the table which is being referenced by the foreign key before creating the foreign key itself.
Adding foreign keys to existing tables The SQL Server allows foreign keys to be added to an existing table.  Syntax: ALTER TABLE <tableName>  ADD FOREIGN KEY (<fieldName>)       REFERENCES <referencedTable>(<referencedFieldName>); Example: Table B has an attribute B1.  B1 references to the primary key A1 of table A. Now, the command to add B1 as a foreign key of B is as follows: Table A Primary Key of A Table B Field A1 Foreign Key of B Field B1 << B1 references A1  Alter table B add foreign key(B1) references A(A1) ;
Not Null Constraint In feeding data into a database, it lies with the user to feed data for a field or assign a null value. But sometimes, the value of the field may be highly valuable for data processing. In such places, we may prevent a ‘null’ from being assigned to a field by using the not null constraint.  Eg: Consider  a customer table. Here, the name of the customer is very important. So, it can be made to be not null. Note: CutomerID being a primary key, inherently, can never be null. Create table customer(customeridint primary key, name varchar(10) not null, address varchar(30)); An attempt to insert a null value into a not-null field, will be flagged as an error.
Unique Constraint In SQL Server, it is possible to designate a field to be unique, .i.e., the field will not accept duplicate values.  Primary keys are inherently unique in nature. Eg: Consider  a customer table. Here, the credit card number of the customers will be unique. Create table customer(customeridint primary key, name varchar(10) not null, creditcardnumbervarchar(20) unique); An attempt to insert a credit card number that already exists in the table will be flagged as an error.

Contenu connexe

Tendances

Sql basics
Sql basicsSql basics
Sql basics
Kumar
 
Sql create table statement
Sql create table statementSql create table statement
Sql create table statement
Vivek Singh
 
Creating a database
Creating a databaseCreating a database
Creating a database
Rahul Gupta
 

Tendances (16)

Oracle: DML
Oracle: DMLOracle: DML
Oracle: DML
 
Bootcamp sql fundamentals crud_part3
Bootcamp   sql fundamentals   crud_part3Bootcamp   sql fundamentals   crud_part3
Bootcamp sql fundamentals crud_part3
 
SQL Quick Reference Card
SQL Quick Reference CardSQL Quick Reference Card
SQL Quick Reference Card
 
SQL
SQLSQL
SQL
 
Learn plsql
Learn plsqlLearn plsql
Learn plsql
 
Sql basics
Sql basicsSql basics
Sql basics
 
Bootcamp sql fundamentals bootcamp_part1
Bootcamp   sql fundamentals  bootcamp_part1Bootcamp   sql fundamentals  bootcamp_part1
Bootcamp sql fundamentals bootcamp_part1
 
Oracle: PLSQL Commands
Oracle: PLSQL CommandsOracle: PLSQL Commands
Oracle: PLSQL Commands
 
Database Management - Lecture 2 - SQL select, insert, update and delete
Database Management - Lecture 2 - SQL select, insert, update and deleteDatabase Management - Lecture 2 - SQL select, insert, update and delete
Database Management - Lecture 2 - SQL select, insert, update and delete
 
How sqlite works
How sqlite worksHow sqlite works
How sqlite works
 
Bootcamp sql fundamental
Bootcamp sql fundamentalBootcamp sql fundamental
Bootcamp sql fundamental
 
Null values, insert, delete and update in database
Null values, insert, delete and update in databaseNull values, insert, delete and update in database
Null values, insert, delete and update in database
 
Sql create table statement
Sql create table statementSql create table statement
Sql create table statement
 
Creating a database
Creating a databaseCreating a database
Creating a database
 
Chapter08
Chapter08Chapter08
Chapter08
 
MY SQL
MY SQLMY SQL
MY SQL
 

En vedette (6)

MS SQL SERVER: Decision trees algorithm
MS SQL SERVER: Decision trees algorithmMS SQL SERVER: Decision trees algorithm
MS SQL SERVER: Decision trees algorithm
 
MS Sql Server: Reporting manipulating data
MS Sql Server: Reporting manipulating dataMS Sql Server: Reporting manipulating data
MS Sql Server: Reporting manipulating data
 
MS Sql Server: Business Intelligence
MS Sql Server: Business IntelligenceMS Sql Server: Business Intelligence
MS Sql Server: Business Intelligence
 
MS SQL SERVER: Customizing Your D Base Design
MS SQL SERVER: Customizing Your D Base DesignMS SQL SERVER: Customizing Your D Base Design
MS SQL SERVER: Customizing Your D Base Design
 
Us8595132 system and methods for servicing electronic transactions
Us8595132 system and methods for servicing electronic transactionsUs8595132 system and methods for servicing electronic transactions
Us8595132 system and methods for servicing electronic transactions
 
MS Sql Server: Datamining Introduction
MS Sql Server: Datamining IntroductionMS Sql Server: Datamining Introduction
MS Sql Server: Datamining Introduction
 

Similaire à MS SQLSERVER:Customizing Your D Base Design

Sql ch 12 - creating database
Sql ch 12 - creating databaseSql ch 12 - creating database
Sql ch 12 - creating database
Mukesh Tekwani
 
Creating database using sql commands
Creating database using sql commandsCreating database using sql commands
Creating database using sql commands
Belle Wx
 
Physical elements of data
Physical elements of dataPhysical elements of data
Physical elements of data
Dimara Hakim
 
2. DBMS Experiment - Lab 2 Made in SQL Used
2. DBMS Experiment - Lab 2 Made in SQL Used2. DBMS Experiment - Lab 2 Made in SQL Used
2. DBMS Experiment - Lab 2 Made in SQL Used
TheVerse1
 
Ms sql server ii
Ms sql server  iiMs sql server  ii
Ms sql server ii
Iblesoft
 
Unit 2 Chap 4 SQL DDL.pptx
Unit 2 Chap 4 SQL DDL.pptxUnit 2 Chap 4 SQL DDL.pptx
Unit 2 Chap 4 SQL DDL.pptx
PetroJoe
 
Sql server ___________session_15(data integrity)
Sql server  ___________session_15(data integrity)Sql server  ___________session_15(data integrity)
Sql server ___________session_15(data integrity)
Ehtisham Ali
 

Similaire à MS SQLSERVER:Customizing Your D Base Design (20)

Sql ch 12 - creating database
Sql ch 12 - creating databaseSql ch 12 - creating database
Sql ch 12 - creating database
 
Integrity and security
Integrity and securityIntegrity and security
Integrity and security
 
Steps towards of sql server developer
Steps towards of sql server developerSteps towards of sql server developer
Steps towards of sql server developer
 
Creating database using sql commands
Creating database using sql commandsCreating database using sql commands
Creating database using sql commands
 
Introduction to sql
Introduction to sqlIntroduction to sql
Introduction to sql
 
Sql wksht-2
Sql wksht-2Sql wksht-2
Sql wksht-2
 
Physical elements of data
Physical elements of dataPhysical elements of data
Physical elements of data
 
2. DBMS Experiment - Lab 2 Made in SQL Used
2. DBMS Experiment - Lab 2 Made in SQL Used2. DBMS Experiment - Lab 2 Made in SQL Used
2. DBMS Experiment - Lab 2 Made in SQL Used
 
Sql 2006
Sql 2006Sql 2006
Sql 2006
 
Ankit
AnkitAnkit
Ankit
 
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
 
Sql commands
Sql commandsSql commands
Sql commands
 
BIS06 Physical Database Models
BIS06 Physical Database ModelsBIS06 Physical Database Models
BIS06 Physical Database Models
 
BIS06 Physical Database Models
BIS06 Physical Database ModelsBIS06 Physical Database Models
BIS06 Physical Database Models
 
Ms sql server ii
Ms sql server  iiMs sql server  ii
Ms sql server ii
 
Unit 2 Chap 4 SQL DDL.pptx
Unit 2 Chap 4 SQL DDL.pptxUnit 2 Chap 4 SQL DDL.pptx
Unit 2 Chap 4 SQL DDL.pptx
 
Assignment#07
Assignment#07Assignment#07
Assignment#07
 
Sql intro & ddl 1
Sql intro & ddl 1Sql intro & ddl 1
Sql intro & ddl 1
 
Sql intro & ddl 1
Sql intro & ddl 1Sql intro & ddl 1
Sql intro & ddl 1
 
Sql server ___________session_15(data integrity)
Sql server  ___________session_15(data integrity)Sql server  ___________session_15(data integrity)
Sql server ___________session_15(data integrity)
 

Plus de sqlserver content

MS SQL SERVER: Microsoft naive bayes algorithm
MS SQL SERVER: Microsoft naive bayes algorithmMS SQL SERVER: Microsoft naive bayes algorithm
MS SQL SERVER: Microsoft naive bayes algorithm
sqlserver content
 

Plus de sqlserver content (20)

MS SQL SERVER: Using the data mining tools
MS SQL SERVER: Using the data mining toolsMS SQL SERVER: Using the data mining tools
MS SQL SERVER: Using the data mining tools
 
MS SQL SERVER: SSIS and data mining
MS SQL SERVER: SSIS and data miningMS SQL SERVER: SSIS and data mining
MS SQL SERVER: SSIS and data mining
 
MS SQL SERVER: Programming sql server data mining
MS SQL SERVER:  Programming sql server data miningMS SQL SERVER:  Programming sql server data mining
MS SQL SERVER: Programming sql server data mining
 
MS SQL SERVER: Olap cubes and data mining
MS SQL SERVER:  Olap cubes and data miningMS SQL SERVER:  Olap cubes and data mining
MS SQL SERVER: Olap cubes and data mining
 
MS SQL SERVER: Microsoft time series algorithm
MS SQL SERVER: Microsoft time series algorithmMS SQL SERVER: Microsoft time series algorithm
MS SQL SERVER: Microsoft time series algorithm
 
MS SQL SERVER: Microsoft sequence clustering and association rules
MS SQL SERVER: Microsoft sequence clustering and association rulesMS SQL SERVER: Microsoft sequence clustering and association rules
MS SQL SERVER: Microsoft sequence clustering and association rules
 
MS SQL SERVER: Neural network and logistic regression
MS SQL SERVER: Neural network and logistic regressionMS SQL SERVER: Neural network and logistic regression
MS SQL SERVER: Neural network and logistic regression
 
MS SQL SERVER: Microsoft naive bayes algorithm
MS SQL SERVER: Microsoft naive bayes algorithmMS SQL SERVER: Microsoft naive bayes algorithm
MS SQL SERVER: Microsoft naive bayes algorithm
 
MS SQL Server: Data mining concepts and dmx
MS SQL Server: Data mining concepts and dmxMS SQL Server: Data mining concepts and dmx
MS SQL Server: Data mining concepts and dmx
 
MS Sql Server: Reporting models
MS Sql Server: Reporting modelsMS Sql Server: Reporting models
MS Sql Server: Reporting models
 
MS Sql Server: Reporting introduction
MS Sql Server: Reporting introductionMS Sql Server: Reporting introduction
MS Sql Server: Reporting introduction
 
MS Sql Server: Reporting basics
MS Sql  Server: Reporting basicsMS Sql  Server: Reporting basics
MS Sql Server: Reporting basics
 
MS SQLSERVER:Feeding Data Into Database
MS SQLSERVER:Feeding Data Into DatabaseMS SQLSERVER:Feeding Data Into Database
MS SQLSERVER:Feeding Data Into Database
 
MS SQLSERVER:Doing Calculations With Functions
MS SQLSERVER:Doing Calculations With FunctionsMS SQLSERVER:Doing Calculations With Functions
MS SQLSERVER:Doing Calculations With Functions
 
MS SQLSERVER:Deleting A Database
MS SQLSERVER:Deleting A DatabaseMS SQLSERVER:Deleting A Database
MS SQLSERVER:Deleting A Database
 
MS SQLSERVER:Creating Views
MS SQLSERVER:Creating ViewsMS SQLSERVER:Creating Views
MS SQLSERVER:Creating Views
 
MS SQLSERVER:Creating A Database
MS SQLSERVER:Creating A DatabaseMS SQLSERVER:Creating A Database
MS SQLSERVER:Creating A Database
 
MS SQLSERVER:Advanced Query Concepts Copy
MS SQLSERVER:Advanced Query Concepts   CopyMS SQLSERVER:Advanced Query Concepts   Copy
MS SQLSERVER:Advanced Query Concepts Copy
 
MS SQLSERVER:Joining Databases
MS SQLSERVER:Joining DatabasesMS SQLSERVER:Joining Databases
MS SQLSERVER:Joining Databases
 
MS SQLSERVER:Manipulating Database
MS SQLSERVER:Manipulating DatabaseMS SQLSERVER:Manipulating Database
MS SQLSERVER:Manipulating Database
 

Dernier

Dernier (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 

MS SQLSERVER:Customizing Your D Base Design

  • 1. 7 SQL SERVER: CUSTOMIZINGTHE DATABASE DESIGN
  • 2.
  • 3. Adding a foreign key
  • 4. Adding Constraints
  • 5. Unique Constraint
  • 6. Not Null Constraint
  • 7.
  • 8. Primary Keys What is a Primary Key: A Primary key is a field/attribute in a table which is used to uniquely identify a record Eg: Consider a dream database Here, a particular record can be uniquely located using the DreamNumber and hence, it is taken as the Primary key. If there are more than fields, eligible of being the primary key, the decision of choosing one among them lies with the DB designer
  • 9. Primary Key Adding a Primary Key: A Table must have only one primary key. The Primary key must be defined during the creation of the table. Syntax: Create table <tableName> ( <fieldName1><field1Type> primary key, ..); Example: Consider the creation of the following table. The field ‘Dream Number’ is to be designated as the primary key Create table dreamtable( dreamnumberintprimary key, dream varchar(10), dreamdate date, dreamtime time, dreamtypevarchar(10)) ;
  • 10. Redefining primary key Now, let us take a step back and redefine the primary key that we have learnt already. The definition that we learnt was: A Primary key is a field which lets us to uniquely identify a record in a table. This definition may sound intuitive, but in real word cases, a single field may not be enough to identify a record in a table. In such cases, a collection (two or more) of fields are used as a primary key. Consider the following example of a hospital’s patient table:
  • 11. Redefining primary key In this case, it would be possible to locate a record uniquely only with information of more than one field values. Example: PatientID, Date of Admisssion and Time of Admission can be combined to form a primary key. The SQL Command to do this is via a constraint: create table <tableName> (<field names>,…, constraint <constraintName> primarykey(<filedName1>,<fieldName2>,..) ); Example: create table Patients(patientidvarchar(10), patientnamevarchar(20), dateofadmission date, timeofadmission time, issue varchar(20),constraint patientpkeysprimary key(patientid, dateofadmission, timeofadmission) );
  • 12. Adding primary keys to existing tables The SQL Server allows primary keys to be added to an existing table. Syntax: ALTER TABLE <tableName> ADD CONSTRAINT <constraintName> PRIMARY KEY (<FieldName>); Example: Consider the patient database. The command to define the primary key after creating the table is: Alter table Patients add constraint patientpkeysprimary key(patientid, dateofadmission, timeofadmission) );
  • 13. Foreign Keys Foreign Key: A Foreign key is a field/attribute in one table which is used as a primary key in another table Eg: Consider a dream database Every foreign key value must be present as a primary key in the referenced table. Eg: A dream number ‘3’ isn’t possible in ‘Luck Table’ unless such a dream number exists in the ‘Dream Table’ Dream Table Notice that foreign key entries can repeat (where-as primary key entries can’t!) Foreign Key Primary Key Luck Table Refer-ences
  • 14. Foreign Keys In SQL Server, a foreign key is created as follows: Create table <Table2_Name> (<filedName1> foreign key references <Table1_Name> (Table1FieldName)); In the example that we just considered, the dreamNumberof the Luck Table is using the value of the primary Key dreamNumberfrom Dream Table. Hence, it is a foreign Key. The SQL statement to effect this is: Create table lucktable (dreamnumberintforeign key references dream(dreamnumber), luck varchar(15), predictor varchar(20)); NOTE: It is essential to create the table which is being referenced by the foreign key before creating the foreign key itself.
  • 15. Adding foreign keys to existing tables The SQL Server allows foreign keys to be added to an existing table. Syntax: ALTER TABLE <tableName> ADD FOREIGN KEY (<fieldName>) REFERENCES <referencedTable>(<referencedFieldName>); Example: Table B has an attribute B1. B1 references to the primary key A1 of table A. Now, the command to add B1 as a foreign key of B is as follows: Table A Primary Key of A Table B Field A1 Foreign Key of B Field B1 << B1 references A1 Alter table B add foreign key(B1) references A(A1) ;
  • 16. Not Null Constraint In feeding data into a database, it lies with the user to feed data for a field or assign a null value. But sometimes, the value of the field may be highly valuable for data processing. In such places, we may prevent a ‘null’ from being assigned to a field by using the not null constraint. Eg: Consider a customer table. Here, the name of the customer is very important. So, it can be made to be not null. Note: CutomerID being a primary key, inherently, can never be null. Create table customer(customeridint primary key, name varchar(10) not null, address varchar(30)); An attempt to insert a null value into a not-null field, will be flagged as an error.
  • 17. Unique Constraint In SQL Server, it is possible to designate a field to be unique, .i.e., the field will not accept duplicate values. Primary keys are inherently unique in nature. Eg: Consider a customer table. Here, the credit card number of the customers will be unique. Create table customer(customeridint primary key, name varchar(10) not null, creditcardnumbervarchar(20) unique); An attempt to insert a credit card number that already exists in the table will be flagged as an error.
  • 18. Check Constraint A Check constraint is used to specify some rules for the data that can be stored for a field. A Check constraint can be defined while creating a table (with create table) or can be added to an existing table. While adding a check constraint to an existing table, the data that the table holds is checked against the constraint being defined. To prevent this checking, the nocheck command can be used. A Check constraint can be defined on a single column(field) or across multiple columns of the same table. fieldname can take values between 1 and 100. eg: 1,2,3,…,99,100 SQL Syntax: Create table <tableName> (<fieldname> check (fieldname > 100) ); Create table <tableName> (<fieldname> check (fieldname between 1 and 100) ); Create table <tableName> (<fieldname> check (fieldname like ‘[0-9][0-9][a-z][A-Z]’) ); [0-9]: Denotes a single value in the range specified
  • 19. Adding Check Constraint to an existing table It is possible to add check constraints to existing tables using the alter table command: Syntax: ALTER TABLE <tableName> ADD CHECK (<fieldName> <condition>); Example: ALTER TABLE student ADD CHECK (cgpa Between 0 and 10 );
  • 20.
  • 23. Adding primary key while creating table
  • 24. Adding primary key to existing tables
  • 25. Multiple field – primary key
  • 28. Adding foreign key while creating table
  • 29. Adding foreign key to existing table
  • 32.