Home
Search results “Oracle delete all foreign keys”
Example on foreign key constraint and delete cascade
 
05:55
Join discussion on http://www.techtud.com/video-illustration/following-table-has-two-attributes-and-c-where-primary-key-and-c-foreign-gate
Views: 6372 Techtud
Oracle SQL Tutorial 18 - How to Create Foreign Keys
 
07:09
In this video we are going to be creating foreign keys. I highly recommend watching the previous video before you watch this one. Essentially, we are creating a very simple database for a system where we can create projects and add people to those projects. We started with the users table: --Delete the table if needed: --DROP TABLE users; CREATE TABLE users( user_id NUMBER, username VARCHAR2(50 CHAR) UNIQUE, CONSTRAINT users_pk PRIMARY KEY (user_id) ); Now we are going to create a table for projects with a column that is a foreign key to the username. We're going to want to make this match data types: CREATE TABLE projects( project_id NUMBER, project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) ) Next, we need to add the column attributes we decided on last video: CREATE TABLE projects( project_id NUMBER, project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) NOT NULL ) NOT NULL because we want every project to have a creator, but we are not labeling UNIQUE because that means we could only have a specific username once in the table. We want to allow a user to create multiple projects. We also need to add a primary key: CREATE TABLE projects( project_id NUMBER, project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) NOT NULL, CONSTRAINT projects_pk PRIMARY KEY (username) ) Now, the question that remains is, how can I tell Oracle that I want the username to reference the username column of the other table? We have to make a foreign key constraint. As you've learned from the previous videos, there are about three ways to create constraints. You can do it inline at the column level, unnamed. You can do it at the column level, named, and you can do it at the Table level, named. Usually the table-level is preferred, but I will quickly remind you how to do all three again. CREATE TABLE projects( project_id NUMBER, project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) NOT NULL REFERENCES users (username), CONSTRAINT projects_pk PRIMARY KEY (project_id) ) This works, but if we want to name it, we should do this: CREATE TABLE projects( project_id NUMBER, project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) NOT NULL CONSTRAINT projects_users_fk REFERENCES users (username), CONSTRAINT projects_pk PRIMARY KEY (project_id) ) This works, but the preferred method is to do it at the table level: CREATE TABLE projects( project_id NUMBER, project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) NOT NULL, CONSTRAINT projects_pk PRIMARY KEY (project_id), CONSTRAINT projects_users_fk FOREIGN KEY (creator) REFERENCES users (username) ) Great! So you've learned how to create a foreign key, now we can see it inside of Oracle SQL Developer. One important thing when it comes to foreign keys is what happens when have data in your database and you try to delete the parent row that a row in the child table references? In the next video we are going to configure that using ON DELETE. See you all then and if you enjoy this series, please do me a huge favor by liking the video and subscribing to my YouTube channel. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ HELP ME! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 15170 Caleb Curry
Oracle SQL Tutorial 19 - ON DELETE (SET NULL and CASCADE)
 
05:59
Welcome everyone! Something you need to consider when you are creating foreign keys is what happens if you delete the parent? As a reminder, the parent is the row that has the value you are referencing in the row that has a foreign key. Why is this something important to consider? It's important because foreign keys need to protect us from two primary things, unacceptable INSERT statements, and unacceptable DELETE statements. Let's see what happens when we try to insert incorrect data into the table with the foreign key: INSERT INTO projects VALUES (1, 'Update website homepage', 'CalebCurry') The response tells us plainly that there is no such user in the users table. So this works correctly. Deleting data on the other hand works a bit differently because the database does not know what you want to do with the child row when you delete the parent from the parent table. By default, we will get an error message that prevents the parent from being deleted, but there are some other options. How do we configure this? This is where the ON DELETE statement comes in. We add the keywords ON DELETE right after the foreign key and then we can give it the option of CASCADE or SET NULL. CASCADE means that if we delete the parent, we are also going to delete the child. In our situation what that means is that if somebody creates a project in our project table and then that persons account gets deleted, all of the projects he owns will also be deleted. CASCADE: CREATE TABLE projects( project_id NUMBER, Project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) NOT NULL, CONSTRAINT projects_pk PRIMARY KEY (project_id), CONSTRAINT projects_users_fk FOREIGN KEY (creator) REFERENCES users (username) ON DELETE CASCADE ) SET NULL will take the value in the child table and get rid of it. What you are left with is NULL. This means that we have an orphaned child. The first thought you might have is that it is a bad thing to have an orphaned child, but in databases that is not always so. In our application if we had it set to SET NULL, when a user account gets deleted the projects would remain in existence they would just lack a creator. This might be a good thing if you are concerned about the long term survival of a project, this might be the route you want to go. It ultimately depends on the application purpose. If you don't like CASCADE or SET NULL, you can leave the entire ON DELETE statement and just have Oracle throw an error when a parent is deleted. As for us, we are going to use ON DELETE CASCADE. We need to use this with extreme caution. If you are not careful, someday you will run a delete a row and that will cascade through you database deleting a bunch of stuff you didn't want to delete. Stuff happens, so make sure you back up your database every once in eternity. Now, in the last video we started with a database design that had three tables. We've only created two in this video. In the next video we are going to create the next one, which is a little special. Then we'll finish things up by adding some indexes. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Support me on Patreon! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 10811 Caleb Curry
SQL tutorials 17: SQL Primary Key constraint,  Drop primary Key
 
09:22
Blog link: http://www.rebellionrider.com/sql-primary-key.htm SQL tutorial on Primary key / SQL Primary key, In this tutorial you will learn about simple primary key, composute primary key, how to drop primary key. defining primary key using create table and alter table along with many other things. Tool used in this tutorial is SQL Developer. This tutorial series is part of SQL expert exam certification training. if you are preparing for SQL certification you can use my tutorials. This SQL Tutorial is a part of free training. Copy Cloud referral link || Use this link to join copy cloud and get 20GB of free storage https://copy.com?r=j7eYO7 Contacts E-Mail [email protected] Twitter https://twitter.com/rebellionrider Instagram http://instagram.com/rebellionrider Facebook. https://www.facebook.com/imthebhardwaj Linkedin. http://in.linkedin.com/in/mannbhardwaj/ Thanks for linking, commenting, sharing and watching more of our videos This is Manish from RebellionRider.com So Primary Key There are two types of Primary keys First is Simple primary Key: Primary key which Involves only one column and Second is Composite Primary Key: Primary Key which involves more than one column. We will start with Simple primary key. You can create Primary key either with Create Table statement of by using Alter table Statement. Let's define simple primary key using create table statements. With create table statement we can either define primary key at column level or at table level. We will start with defining Primary key at column level using create table statement. You just have to put keyword Primary key after data type and size of column while defining a column of a table. Here oracle server will create a primary key on product id with default constraint name which will be slightly difficult to understand. You can give your own name to your constraint which is also a good practice.
Views: 92511 Manish Sharma
SQL tutorials 20: On Delete Cascade Foreign Key By Manish Sharma (RebellionRider)
 
05:55
Oracle Database 11g Tutorial 20: On delete cascade This tutorial will show you how to define foreign key with on delete cascade clause. Links Blog: http://www.rebellionrider.com/on-delete-cascade.htm SQL Tutorial 19 On delete set Null: http://www.rebellionrider.com/on-delete-cascade.htm SQL Tutorial 19 Foreign Key: http://youtu.be/0nbkBI5r3Gw Copy Cloud referral link || Use this link to join copy cloud and get 20GB of free storage https://copy.com?r=j7eYO7 Tool used in this tutorial is SQL Developer. This tutorial series is part of SQL expert exam certification training. if you are preparing for SQL certification you can use my tutorials. This SQL Tutorial is a part of free training. Contacts E-Mail [email protected] Twitter https://twitter.com/rebellionrider Instagram http://instagram.com/rebellionrider Facebook. https://www.facebook.com/imthebhardwaj Linkedin. http://in.linkedin.com/in/mannbhardwaj/ Thanks for liking, commenting, sharing and watching more of our videos This is Manish from RebellionRider.com
Views: 42093 Manish Sharma
SQL tutorials 18: SQL Foreign Key Constraint
 
10:23
SQL Tutorial 18: SQL foreign key constraint. Topic covered in this tutorial 1. Defining SQL foreign key using create table at column level 2. Defining SQL foreign key using create table at table level 1. Defining SQL foreign key using Alter Table statement Links Website article: http://www.rebellionrider.com/sql-foreign-key.htm Primary key tutorial: http://www.rebellionrider.com/sql-foreign-key.htm Create Table Tutorial: http://www.rebellionrider.com/sql-create-table.html Tool used in this tutorial is SQL Developer. This tutorial series is part of SQL expert exam certification training. if you are preparing for SQL certification you can use my tutorials. This SQL Tutorial is a part of free training. Copy Cloud referral link || Use this link to join copy cloud and get 20GB of free storage https://copy.com?r=j7eYO7 Contacts E-Mail [email protected] Twitter https://twitter.com/rebellionrider Instagram http://instagram.com/rebellionrider Facebook. https://www.facebook.com/imthebhardwaj Linkedin. http://in.linkedin.com/in/mannbhardwaj/ Thanks for linking, commenting, sharing and watching more of our videos This is Manish from RebellionRider.com Foreign key is an Input/output data constraint which is also known as referential integrity constraint. Foreign key represent a link or say a relationship between columns of tables. Similar to primary key constraint Foreign Key constraint is also of two types. Simple Foreign key constraint and Composite Foreign key constraint. Constraint which involves only one column in foreign key in child table and one column in reference key in parent table is called Simple Foreign Key. While the constraint which involves more than one column in foreign key in child table and more than one column in reference key in the parent table is called Composite Foreign Key.
Views: 94964 Manish Sharma
Oracle Drop, Disable and Enable Constraints تعليم اوراكل
 
09:35
by Mohamed El Desouki - محمد الدسوقى [email protected] Tel :00966 553450836 جامعة سلمان بن عبد العزيز - السعودية - الخرج How to Drop , Disable and Enable Constraints. كيف حذف و تعطيل و إعادة تشغيل القيود Text Book: Fundamentals of Database Systems, 5th Edition, by Elmasri/Navathe, published by Addison-W oracle create table statement oracle drop table statement oracle constraints database constraints primary key constraint foreign key constraint check constraint null not null constraint unique constraint
SQL tutorial 19: ON DELETE SET NULL clause of Foreign Key By Manish Sharma (RebellionRider)
 
07:44
SQL Tutorial 19 : ON DELETE SET NULL foreign key Clause. Links used in the tutorial On delete set null website article [ download SQL script from same link] : http://www.rebellionrider.com/on-delete-set-null.htm Foreign Key Tutorial Video : http://youtu.be/0nbkBI5r3Gw Foreign Key Tutorial Blog : http://www.rebellionrider.com/sql-foreign-key.htm This video is the part of foreign key video In this sql tutorial you will learn the referential clause ON DELETE SET NULL of foreign key. On Delete Set null clause guarantee the relation integrity in foreign key/ Tool used in this tutorial is SQL Developer. This tutorial series is part of SQL expert exam certification training. if you are preparing for SQL certification you can use my tutorials. This SQL Tutorial is a part of free training. Copy Cloud referral link || Use this link to join copy cloud and get 20GB of free storage https://copy.com?r=j7eYO7 Contacts E-Mail [email protected] Twitter https://twitter.com/rebellionrider Instagram http://instagram.com/rebellionrider Facebook. https://www.facebook.com/imthebhardwaj Linkedin. http://in.linkedin.com/in/mannbhardwaj/ Thanks for liking, commenting, sharing and watching more of our videos This is Manish from RebellionRider.com
Views: 45238 Manish Sharma
Working with Primary & Foreign key Constraint in SQL Server | SQL Server Tutorial
 
24:13
** For Online Training Registration: https://goo.gl/r6kJbB ? Call: +91-8179191999 ? Visit Our Website for Classroom Training: https://nareshit.in/sql-server-training/ ? For Online Training: https://nareshit.com/course/sql-server-online-training/ #sqlserver #server #programming #course #Tutorials #Training #Videos -------------------------- ? About NareshIT: "Naresh IT is having 14+ years of experience in software training industry and the best Software Training Institute for online training, classroom training, weekend training, corporate training of Hadoop, Salesforce, AWS, DevOps, Spark, Data Science, Python, Tableau, RPA ,Java, C#.NET, ASP.NET, Oracle, Testing Tools, Silver light, Linq, SQL Server, Selenium, Android, iPhone, C Language, C++, PHP and Digital Marketing in USA,Hyderabad, Chennai and Vijayawada,Bangalore India which provides online training across all the locations -------------------------- ? Our Online Training Features: 1.Training with Real-Time Experts 2.Industry Specific Scenario’s 3.Flexible Timings 4.Soft Copy of Material 5. Share Videos of each and every session. -------------------------- Please write back to us at [email protected]/[email protected] or Call us at USA: +1404-232-9879 or India: +918179191999 ** Check The Below Links** ? For Course Reg: https://goo.gl/r6kJbB ? Subscribe to Our Channel: https://goo.gl/q9ozyG ? Circle us on G+: https://plus.google.com/NareshIT ? Like us on Facebook: https://www.facebook.com/NareshIT ? Follow us on Twitter: https://twitter.com/nareshitech ? Follow us on Linkedin: https://in.linkedin.com/company/naresh-i-technologies ? Follow us on Instagram: https://www.instagram.com/nareshitech/
Views: 39934 Naresh i Technologies
SQL in Oracle 11g Tutorial #7: Alter table( Add, Delete , Enable and Disable Primary Key)
 
08:22
SQL in Oracle 11g Tutorial #7: Alter table( Add, Delete , Enable and Disable Primary Key). This video will explain you the following: 1. How to Add the Primary Key 2. How to delete the primary Key 3. How to Enable the Primary Key 4. How to disable the primary key Thanks for Watching my Channel “Learn TechToTech”. Please subscribe my channel for getting first updates after uploading video.Social Media pages of Channel are: 1. My Website : www.learnfromrakesh.com 2. My Twitter: https://twitter.com/LearnTechtotech 3. Facebook Page: https://www.facebook.com/LearnTechToTech 4. Blogger : https://learntechtotech.blogspot.in/ 5. Google+ : https://learntechtotech.blogspot.in/ 6. Pinterest : https://in.pinterest.com/LearnTechToTech/ 7. LinkedIn: https://www.linkedin.com/in/Learntechtotech/ Playlist of Different Technology: 1. Operating System : https://goo.gl/q6SfrW 2. Python Programming Language : https://goo.gl/L8b5dc 3. C Language : https://goo.gl/SwvDu9 4. C language for Placement: https://goo.gl/AaQBa4 5. Java: https://goo.gl/M8F2uy 6. MySql : https://goo.gl/vdJbHQ 7. Android Mobile Application Development: https://goo.gl/M6woaT 8. Kotlin Programming Language : https://goo.gl/GXE5cd 9. Go Programming: https://goo.gl/Ua3xYW 10. Internet of Things(IoT): https://goo.gl/f2afkY 11. Oracle 11g : https://goo.gl/zds8r2 12. C++ : https://goo.gl/C1psMT
Views: 161 Learn TechToTech
Database - Foreign Keys Part 2 - Adding and Deleting Data
 
10:42
This is part 2 of the video's on foreign keys. It shows how data must be added or deleted when considering foreign key constraints in a database.
How to disable all Foreign Key Constraint in SQL Server Database-SQL Server / TSQL Tutorial Part 77
 
04:53
SQL Server / T-SQL Tutorial Scenario: You are working as SQL Server developer, You need to provide the scripts to disable all the Foreign Key Constraint in SQL Server database. This might be scenario where you need to load one time data and you are ok if data violate referential integrity. Link to scripts used in SQL Server / T-SQL Tutorial Video http://www.techbrothersit.com/2016/04/how-to-disable-all-foreign-key.html Check out our website for Different SQL Server, MSBI tutorials and interview questions such as SQL Server Reporting Services(SSRS) Tutorial SQL Server Integration Services(SSIS) Tutorial SQL Server DBA Tutorial SQL Server / TSQL Tutorial ( Beginner to Advance) http://www.techbrothersit.com/
Views: 1167 TechBrothersIT
MySQL 17 - ON DELETE and ON UPDATE
 
04:32
Now, what happens when you have successfully created a reference, and now you try deleting the parent? This is where the ON DELETE clause come in. This is essentially how we configure how strict a foreign key is. There are 3 options you can give for an ON DELETE: RESTRICT / NO ACTION Yes - In MySQL they are the same, but not all DBMS. CASCADE Yes SET NULL Yes Now the default is RESTRICT. This means that when you try to delete a parent row, MySQL is going to throw an error and not let you. Cascade means that if you delete the parent row, any rows that reference that parent will also be deleted. This is pretty dangerous and not often recommended. SET NULL will set the foreign key to be NULL. Now obviously, this is going to require that the foreign key is not labelled NOT NULL. In addition to the ON DELETE clause, there is the ON UPDATE clause. This one is a little less common because it configures what happens when a parent value changes. Obviously, when you are referencing a primary key, the ON UPDATE clause is nearly useless. That's because the primary key value is never supposed to change. If, on the other hand, we have a foreign key referencing a UNIQUE column that is not a primary key, it may change occasionally. So the only times you have to worry about the ON UPDATE clause is with foreign keys referencing UNIQUE columns that are not a primary key, and when you have natural keys that break the rules and actually do change at some point in time. The ON UPDATE clause has the same options as the ON DELETE clause and they all work the same way. Now, the last thing you need to know about foreign keys is that they must match the data type of the column you are referencing. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Support me! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 10385 Caleb Curry
[Applying Constraints]  3 -  Modifying and deleting a FOREIGN KEY constraint
 
04:05
Given a SQL Server table named Customer_Details in the ABC_Bank database,you will view and practice how to create ,verify,modify and delete a FOREIGN KEY Constraint in a table using Transact -SQL commands 1 - Creating a FOREIGN KEY constraint 2 - Verifying the FOREIGN KEY constraint 3 - Modifying and deleting a FOREIGN KEY constraint More info and source code at : http://www.tutorialspoint.edu.vn/sql-server/160-introduction-to-data-integrity/12598-workshop-introduction-to-data-integrity.html
Views: 86 little fire
How to Generate Script To Enable All Foreign Key Constraints in SQL Server Database - SQL Server P78
 
05:02
SQL Server / T-SQL Tutorial Scenario: You are working as SQL Server developer, You need to prepare scripts to enable all the Foreign Key Constraint in a database which are disabled. This could happen, maybe somebody has disabled Foreign Key Constraints for a data load where they don't care about violation of referential integrity and forgot to enable them later. Link to scripts used in SQL Server / TSQL Tutorial Video http://www.techbrothersit.com/2016/04/how-to-generate-script-to-enable-all.html Check out our website for Different SQL Server, MSBI tutorials and interview questions such as SQL Server Reporting Services(SSRS) Tutorial SQL Server Integration Services(SSIS) Tutorial SQL Server DBA Tutorial SQL Server / TSQL Tutorial ( Beginner to Advance) http://www.techbrothersit.com/
Views: 585 TechBrothersIT
How to drop Foreign Key Constraints in SQL Server Database for all the tables -  SQL Server  Part 72
 
04:08
SQL Server / T-SQL Tutorial Scenario: You are working as SQL Server developer, you are asked to provide the scripts those can be used to drop Foreign Key Constraints on all the tables in a database if exists. Link to scripts used in SQL Server / TSQL Tutorial Video http://www.techbrothersit.com/2016/04/how-to-drop-foreign-key-constraints-in.html Check out our website for Different SQL Server, MSBI tutorials and interview questions such as SQL Server Reporting Services(SSRS) Tutorial SQL Server Integration Services(SSIS) Tutorial SQL Server DBA Tutorial SQL Server / TSQL Tutorial ( Beginner to Advance) http://www.techbrothersit.com/
Views: 2117 TechBrothersIT
Oracle SQL Tutorial 6 - Relationships and Primary and Foreign Keys - Database Design Primer 3
 
29:40
HAPPY VALENTINES DAY!!! Let's talk relationships.. This is the 6th video in your Oracle Database series. We are discussing database relationships which are a key feature of relational database management systems. We first discussed entities and attributes. I talked about how each entity is assigned a table and each attribute is a column within a table. We moved on to the three kinds of relationships. The first was one-to-one. This describes an entity and an attribute. A piece of data that is exclusive to an entity is, by definition, an attribute of that entity. This is stored in one table with the attribute being a column within this table. The second relationship is one-to-many. This relationship is between two entities. The way we properly store this in a database is using a foreign key in the child table. Remember, the child table is the entity on the many side of the one-to-many relationship. Every row within the child table will have a value for the foreign key that references a primary key in the parent table. This assumes that the foreign key field is not optional (NOT NULL). If the foreign key is optional, than a reference is not required but any reference must be valid. The third kind of relationship is a many-to-many relationship. In this situation, we need 3 tables. The many-to-many relationship is broken up into two one-to-many relationships. The intermediary table will associate each entity from one table with the appropriate entities in the other table. There is debate as to whether this table needs a primary key. This is because you can intact use the combination of two foreign keys as a primary key. This works because we will never have two duplicate rows within the intermediary table and the two foreign keys work as a compound key because of this. We finally discussed primary keys and foreign keys. Primary keys are used to keep each row inside of a table unique. If this key is a computer generated number it is known as a surrogate key, otherwise it is known as a natural key. Natural keys have real world meaning. For example, a social security number may work, or an email address (in some situations), etc. Whichever type of key you choose is solely up to you and/or the company you may be working for. HELP ME! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://Twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 36218 Caleb Curry
Oracle SQL Tutorial 20 - How to Create Composite Primary Keys
 
07:02
This video is going to be a tutorial on how to create composite and compound keys. The difference between a composite and compound key is that a composite key can consist of any columns while a compound key has to consist of columns that are all keys themselves. We will be working with a compound key because we are going to be using the an intermediary table that has two foreign keys. The combination of both of the keys have to be unique. First, if we have any other CREATE TABLE commands, we are going to comment those out. We will space out the CREATE TABLE to have each column on a line, then we will add constraints as needed. CREATE TABLE project_users( project_id, user_id ) Now, let's add the data types: CREATE TABLE project_users( project_id NUMBER, user_id NUMBER } Now, what about some column attributes? I'm going to make both of the columns NOT NULL because we always want the rows to have a user and a project: CREATE TABLE project_users( project_id NUMBER NOT NULL, user_id NUMBER NOT NULL } Now, let's add the foreign key constraints. Now, what do we name these? We are going to add a primary key that covers both of these columns, so I'm going to be a sinner and not give these constraints names: CREATE TABLE project_users( project_id NUMBER NOT NULL REFERENCES projects (project_id), user_id NUMBER NOT NULL REFFERENCES users (user_id) ) Now, the way we have it now is that if we delete a project in the project table, and there are any rows in the project_users table, it will throw an error and prevent deletion. I would prefer for it to also delete any project members. That would make sense because if you delete a project we want it to delete the associate between that project and certain users. The same goes for if we delete a user, we want their association with a certain project to be deleted. To do this, we need to add the ON DELETE command: CREATE TABLE project_users( project_id NUMBER NOT NULL REFERENCES projects (project_id) ON DELETE CASCADE, user_id NUMBER NOT NULL REFERENCES users (user_id) ON DELETE CASCADE, ) Finally, let's learn how to create a compound or composite key. literally, the only difference is that you put a comma and add the second table inside of the parenthesis. CREATE TABLE project_users( project_id NUMBER NOT NULL REFERENCES projects (project_id) ON DELETE CASCADE, user_id NUMBER NOT NULL REFERENCES users (user_id) ON DELETE CASCADE, CONSTRAINT project_users_pk PRIMARY KEY (project_id, user_id) ) Now, the combination of project_id and user_id cannot be null, is always unique, and has an index. The only thing we should do now is add a few indexes. We aren't done yet...In the next video we are going to figure out what columns would benefit from indexes and we'll add them to it. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ HELP ME! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 7885 Caleb Curry
24. Referential Integrity in Oracle
 
09:43
In this video you will learn about Referential Integrity in Oracle. You will learn how to create Primary Key and Foreign Key. There will be Foreign Key in the child table that will reference Primary Key in master/parent table. You will also learn how to delete all the records from child table when related record is parent/master table is deleted. If you try to insert any record which is not available in master/parent table child table will ignore insert command. For Support =========== Email: [email protected] Contact Form: http://www.learninhindi.com/home/contact Our Social Media ================ Facebook: https://www.facebook.com/LearnInHindi Twitter: https://twitter.com/LearnInHindi For Training & Videos ===================== For more videos and articles visit: http://www.learninhindi.com Free Java Programming In Hindi Course ===================================== https://www.youtube.com/playlist?list=PLOZ3jentlCDAwwhMyoLISrxkXTADGp7PH Free Oracle PL/SQL Programming In Hindi Course ============================================== https://www.youtube.com/playlist?list=PLB5DA82419C2D99B6 Free C Programming In Hindi Course ================================== https://www.youtube.com/playlist?list=PLOZ3jentlCDAxKpBLMWogxSdy6BZcsAJq Trips & Tricks Channel ====================== https://www.youtube.com/channel/UCGmLfkuCo-3lHHJXRJ9HUMw Programming in Hindi Channel ============================ https://www.youtube.com/channel/UCudElIDgwNrybeAvXIy1HZQ
Views: 24523 ITORIAN
Database Tables, Primary Keys, Foreign Keys, and Relationships
 
14:37
Explaining the basic constructs of a relational database: Tables, Primary Keys, Foreign Keys, and Relationships. The database is normalized.
Views: 345565 minderchen
Foreign Key (FK) Constraint in SQL Server (Referential Integrity)
 
15:12
Foreign Key (FK) Constraint in SQL Server Check my blog for more on Constraints and related sample SQL Queries: http://sqlwithmanoj.com/2009/12/27/sql-basics-working-with-foreign-key-fk-constraints/ For more updates like my page in FB: https://www.facebook.com/sqlwithmanoj
Views: 11335 SQL with Manoj
How to create Foreign Key Constraint with ON DELETE CASCADE in SQL Server - SQL Server Tutorial 80
 
03:40
SQL Server / T-SQL Tutorial Scenario: You are working as SQL Server developer, you need to create two tables with Primary -Foreign Key Relationship. You want to create Foreign Key Constraint with setting if record will be deleted from Referenced Table (Primary Key Column Table), it should be deleted from Parent Table ( Foreign Key Constraint Table) as well. Link to scripts used in SQL Server / TSQL Tutorial Video http://www.techbrothersit.com/2016/04/how-to-create-foreign-key-constraint_29.html Check out our website for Different SQL Server, MSBI tutorials and interview questions such as SQL Server Reporting Services(SSRS) Tutorial SQL Server Integration Services(SSIS) Tutorial SQL Server DBA Tutorial SQL Server / TSQL Tutorial ( Beginner to Advance) http://www.techbrothersit.com/
Views: 2518 TechBrothersIT
mysql tutorial for beginners (7/8) : Foreign Keys (FK) & Joins
 
08:00
mysql tutorial for beginners (7/8) : Foreign Keys (FK) & Join Foreign key relationships involve a parent table that holds the central data values, and a child table with identical values pointing back to its parent. The FOREIGN KEY clause is specified in the child table. The parent and child tables must use the same storage engine. Corresponding columns in the foreign key and the referenced key must have similar data types. The size and sign of integer types must be the same. Now, we can say: MySQL supports foreign keys, which let you cross-reference related data across tables, and foreign key constraints, which help keep this spread-out data consistent. How Foreign keys help guarantee referential integrity? For storage engines supporting foreign keys, MySQL rejects any INSERTor UPDATE operation that attempts to create a foreign key value in a child table if there is no a matching candidate key value in the parent table. When an UPDATE or DELETE operation affects a key value in the parent table that has matching rows in the child table, The result depends on the referential action specified using ON UPDATE and ON DELETE subclauses of the FOREIGN KEY clause. MySQL supports 4 options regarding the action to be taken: CASCADE: Delete or update the row from the parent table, and automatically delete or update the matching rows in the child table. SET NULL: Delete or update the row from the parent table, and set the foreign key column or columns in the child table to NULL. If you specify a SET NULL action, make sure that you have not declared the columns in the child table as NOT NULL. RESTRICT: Rejects the delete or update operation for the parent table. NO ACTION: A keyword from standard SQL. In MySQL, equivalent to RESTRICT. The MySQL Server rejects the delete or update operation for the parent table if there is a related foreign key value in the referenced table. For an ON DELETE or ON UPDATE that is not specified, the default action is always RESTRICT. FK constraint can be added using CREATE TABLE or ALTER TABLE statement First off let’s create the parent tables, I’ll begin with Tests table: CREATE TABLE Tests ( id_test INT NOT NULL AUTO_INCREMENT, title VARCHAR(25) NOT NULL, date DATE NOT NULL, PRIMARY KEY(id_test) ); And Questions table: CREATE TABLE Questions ( id_question INT NOT NULL AUTO_INCREMENT, question TEXT NOT NULL, answer TEXT NOT NULL, PRIMARY KEY(id_question) ); Now, let’s create the child table, Question_in_test: Id_test column will be FK reference to the id_test in Tests table, don’t forget both columns should be the same data types, and same size, id_question column will be FK reference to the id_question in Questions table, CREATE TABLE Question_in_test ( id_qt INT NOT NULL AUTO_INCREMENT, number TINYINT NOT NULL, value TINYINT NOT NULL, id_test INT, id_question INT, FOREIGN KEY(id_test) REFERENCES Tests(id_test) ON DELETE RESTRICT ON UPDATE CASCADE, FOREIGN KEY(id_question) REFERENCES Questions(id_question) ON DELETE NO ACTION ON UPDATE CASCADE, PRIMARY KEY(id_qt) ); The last child table is the Grade_per_question This table contains 2 FKs Id_student FK reference to the id_student in Students table, And id_question per test reference to the id question per test in Question_in_test table, ALTER TABLE grade_per_question ADD FOREIGN KEY(id_qt) REFERENCES Question_in_test(id_qt) ON DELETE NO ACTION ON UPDATE CASCADE, FOREIGN KEY(id_student) REFERENCES Students(id_student) ON DELETE RESTRICT ON UPDATE CASCADE, If you wish to specify the column on which to join two tables, use the JOIN ON construct: Students table joined with grade_per_question on id_student And grade_per_question joined with question_in_test on id_qt Question_in_test joined with tests on id_test: SELECT name,title,date,sum(grade) FROM students join grade_per_question on students.id_student = grade_per_question.id_student join question_in_test on question_in_test.id_qt = grade_per_question.id_qt join tests on tests.id_test = question_in_test.id_test Whatever kind of data you are storing in your database, it must have some value to you, therefore, it’s important that you keep backups, to protect your investment also, there will be times when you have to migrate your database over to a new server, in the next tutorial we will learn how to make backing up and restoring data in mysql. Subscribe for more: ---------------------------------------------------------------------------- https://www.youtube.com/subscription_center?add_user=saf3al2a SWE.Safaa Al-Hayali - saf3al2a
Views: 23833 Safaa Al-Hayali
Oracle SQL Tutorial 12 - Intro to Constraints
 
06:13
As I believe I've mentioned in an earlier video, a constraint is basically a rule we can put in our database that prevents someone from putting the wrong data in. It protects our relationships and data integrity. Because the goal of these constraints are to protect our data integrity, you may hear them called integrity constraints. There are many integrity constraints we are going to talk about: NOT NULL UNIQUE PRIMARY KEY FOREIGN KRY CHECK There is also the DEFAULT attribute. These are all keywords we can add to our columns that will change the way the database works with our data and also prevents incorrect data. NOT NULL is a constraint you can put on a column that prevents nulls. A null is the absence of a value. When we say null, we are saying that every single row has to have a value for this column. UNIQUE is a constraint that makes every row have a unique value for this column. Now note, this does not require values to be put it, and it will allow multiple rows to be null. Next, we are going to talk about primary keys. What qualifies a column as a candidate key? First, not a single row should have a null for that column. Second, every row must be unique. The primary key constraint is essentially a combination of the NOT NULL constraint and the UNIQUE constraint. The foreign key constraint sets the requirement that any value in this column for any row must match a row in another column. Check constraints allow us to be more strict with what data is allowed in our database. NOT NULL and UNIQUE give some level of restriction, but what if we want something more specific? For example, what if we only want values between 0 and 100? That is where check constraints come in. When using check constraints, you give a boolean expression. A boolean expression is something that can be evaluated to true or false. It will only insert the row if the value you try to put into the row makes the expression evaluate to true. So if you put in a value too great or small, the expression will be false and the data is not allowed to be entered. The default constraint is a value you can give a column, and if for any reason when the row is created in the table a value is not provided, the default value will be given. So for example, we could have a bank account table where the balance defaults to 0. How do you actually implement these constraints when you are creating a table? In the next video we are going to be adding these to our users table. Please be sure to subscribe! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Support me on Patreon: http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 14405 Caleb Curry
106. Create Table with Foreign Key in SQL Practical (Hindi)
 
06:26
Please Subscribe Channel Like, Share and Comment Visit : www.geekyshows.com
Views: 14270 Geeky Shows
Could not drop object because it is referenced by a FOREIGN KEY constraint - SQL Server P74
 
07:06
SQL Server / T-SQL Tutorial Scenario: You are working as SQL Server DBA or Developer, You need to drop a table from a database. When you execute drop table SchemaName.TableName statement, you get below error. Msg 3726, Level 16, State 1, Line 12 Could not drop object 'SchemaName.TableName' because it is referenced by a FOREIGN KEY constraint. Now we know that the table is referenced by Foreign Key Constraint. The problem is how to find which table has that Foreign Key Constraint that is referencing to this table. Link to scripts used in SQL Server / TSQL Tutorial Video http://www.techbrothersit.com/2016/04/could-not-drop-object-because-it-is.html Check out our website for Different SQL Server, MSBI tutorials and interview questions such as SQL Server Reporting Services(SSRS) Tutorial SQL Server Integration Services(SSIS) Tutorial SQL Server DBA Tutorial SQL Server / TSQL Tutorial ( Beginner to Advance) http://www.techbrothersit.com/
Views: 1925 TechBrothersIT
Oracle Tutorials : 5 - CREATE / DROP TABLE
 
07:00
Oracle Tutorials : 5 - CREATE / DROP TABLE
Views: 750 Meganadha Reddy
Part 12   Can we join two tables without primary foreign key relation
 
10:38
Link for all dot net and sql server video tutorial playlists http://www.youtube.com/user/kudvenkat/playlists Link for slides, code samples and text version of the video http://csharp-video-tutorials.blogspot.com/2014/09/part-12-can-we-join-two-tables-without.html Can we join two tables without primary foreign key relation Yes, we can join two tables without primary foreign key relation as long as the column values involved in the join can be converted to one type. ID column in Departments table is not the primary Key and DepartmentId column in Employees table is not the foreign key. But we can still join these tables using ID column from Departments table and DepartmentId column from Employees table, as both the columns involved in the join have same data type i.e int. Select Employees.Name as EmployeeName, Departments.Name as DepartmentName from Employees join Departments on Departments.ID = Employees.DepartmentId The obious next question is, if primary foreign key relation is not mandatory for 2 tables to be joined then what is the use of these keys? Primary key enforces uniqueness of values over one or more columns. Since ID is not a primary key in Departments table, 2 or more departments may end up having same ID value, which makes it impossible to distinguish between them based on the ID column value. Foreign key enforces referential integrity. Without foreign key constraint on DepartmentId column in Employees table, it is possible to insert a row into Employees table with a value for DepartmentId column that does not exist in Departments table. The following insert statement, successfully inserts a new Employee into Employees table whose DepartmentId is 100. But we don't have a department with ID = 100 in Departments table. This means this employee row is an orphan row, and the referential integrity is lost as result Insert into Employees values (8, 'Mary', 'Female', 80000, 100) If we have had a foreign key constraint on DepartmentId column in Employees table, the following insert statement would have failed with the following error. Msg 547, Level 16, State 0, Line 1 The INSERT statement conflicted with the FOREIGN KEY constraint. The conflict occurred in database "Sample", table "dbo.Departments", column 'ID'.
Views: 101251 kudvenkat
Creating Primary and Foreign Keys in SQL Server 2012
 
18:22
Dr. Soper shows how to create simple and composite primary keys and foreign key relationships in a SQL Server database using SQL Server Management Studio. Several different methods of creating keys and establishing relationships between tables are demonstrated.
Views: 376396 Dr. Daniel Soper
How to get Parent Table, Reference Table, Foreign Key Constraint Name and Columns in SQL Server-P 71
 
09:07
SQL Server / T-SQL Tutorial Scenario: You are working as SQL Server Developer, you are asked to provide the query that should return all the parent tables, reference tables, Foreign Key Constraints and Columns used in Foreign Key Constraint definition. Link to scripts used in SQL Server / TSQL Tutorial Video http://www.techbrothersit.com/2016/04/how-to-get-parent-table-reference-table.html Check out our website for Different SQL Server, MSBI tutorials and interview questions such as SQL Server Reporting Services(SSRS) Tutorial SQL Server Integration Services(SSIS) Tutorial SQL Server DBA Tutorial SQL Server / TSQL Tutorial ( Beginner to Advance) http://www.techbrothersit.com/
Views: 2485 TechBrothersIT
Oracle SQL Tutorial 21 - How to Create / Drop Indexes
 
03:58
In the last video, we wrote up the SQL to create three tables: CREATE TABLE users( user_id NUMBER, username VARCHAR2(50 CHAR) UNIQUE, CONSTRAINT users_pk PRIMARY KEY (user_id) ); CREATE TABLE projects( project_id NUMBER, Project_name VARCHAR2(50 CHAR) UNIQUE, creator VARCHAR2(50 CHAR) NOT NULL, CONSTRAINT projects_pk PRIMARY KEY (project_id), CONSTRAINT projects_users_fk FOREIGN KEY (creator) REFERENCES users (username) ON DELETE CASCADE ); CREATE TABLE project_users( project_id NUMBER NOT NULL REFERENCES projects (project_id) ON DELETE CASCADE, user_id NUMBER NOT NULL REFERENCES users (user_id) ON DELETE CASCADE, CONSTRAINT project_users_pk PRIMARY KEY (project_id, user_id) ); I'm going to increase the size of the users table a bit by adding a first and last name column. CREATE TABLE users( user_id NUMBER, username VARCHAR2(50 CHAR) UNIQUE, first_name VARCHAR2(50 CHAR), last_name VARCHAR2 (50 CHAR), CONSTRAINT users_pk PRIMARY KEY (user_id) ); But before we finish this design, we should consider indexing certain columns. What columns should we index? Well, as a reminder, the columns that are indexed by default are columns with the UNIQUE constraint, and those that are labeled as primary keys. Columns that are not indexed but often should be are those labeled as a foreign key. The column that jumps out the most to me is the creator column of the project table. It's the only foreign key that is not part of some index. Let's fix this by creating our first index. The way we do that is with the CREATE INDEX command. CREATE INDEX projects_creator_ix ON projects (creator) What naming convention are we following for the index? We are naming it by the table name, followed by an underscore, followed by the column, followed by an underscore, followed by an ix (for index). In this situation it does not apply, but if our foreign key column is labeled as UNIQUE, we can add the UNIQUE keyword like this: CREATE UNIQUE INDEX projects_creator_ix ON projects (creator) Now if you want to get rid of an INDEX, you can use this command: DROP INDEX projects_creator_ix Now, if we want to select data from the user table and the project table we can do that much faster. That's because the foreign key and column it references are both indexed and those are the columns we would do the join on. We will discuss how to do joins in a future video. So what are some potential problems with this database design? Overall, it is pretty good. With this design though we need to make sure there is no way for someone to update a user's username. In the next video we are going to discuss why. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Support me on Patreon! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 6366 Caleb Curry
Oracle SQL Tutorial 13 - How to Add Column Constraints (Attributes)
 
05:55
So far, we have this table declaration: CREATE TABLE users( user_id NUMBER, username VARCHAR(50 CHAR) first_name VARCHAR2(50 CHAR), last_name VARCHAR2(50 CHAR) ) We can run this command see that it works. As we are learning though, we are going to want to be able to recreate our table with different settings and such, but if you try to run this command, it will complain that the table already exists. So we first need to delete this table before we start editing settings. When we get more experienced, we will learn about ways to edit the structure of a table that already exists. To fix this, we can get rid of the table using the DROP TABLE command: DROP TABLE users You can run this every time if you need to practice by adding a semicolon after it. This is how you can tell Oracle that you are putting in another command after it. This is known as a delimiter. When you run the script, it is going to run both commands. Now we can go through and reconsider our table structure. This is fine for starting out because we don't have any important data in our database, but once your database is in production you are not going to want to just drop tables. In the last video we discussed different constraints that you can apply to columns in a database table, but how do you actually apply these when you are creating a table? The first way you define constraints is to put them right after the column in your CREATE TABLE statement. CREATE TABLE users( username VARCHAR2(50 CHAR) NOT NULL ) When we define constraints this way, we usually say we are adding column attributes. If you have two constraints you want to add, you just put one after the other with spaces in between. There is no particular order that is required. CREATE TABLE users( username VARCHAR2(50 CHAR) NOT NULL UNIQUE ) In this situation we have already given the column the NOT NULL and UNIQUE attributes, so we should consider making this a primary key: CREATE TABLE users( username VARCHAR2(50 CHAR) PRIMARY KEY ) As you can see, adding column attributes is super easy. We can add a default like this: CREATE TABLE users( username VARCHAR2(50 CHAR) PRIMARY KEY, account_balance NUMBER DEFAULT 0 ) Note that now we need the comma after the first row. There are a few constraints we did not talk go through an example, specifically foreign keys and check constraints. We will be adding these constraints to our database in future videos. In the mean time, I have a thought for you… Many people prefer to name their column constraints. That way, we can refer to certain constraints by name. For example, we might have a primary key constraint that could be named users_pk. The way we are creating these constraints does not allow for this feature, so in the next video we are going to be discussing different ways to create constraints. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Support me on Patreon! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 14156 Caleb Curry
Oracle - Final Revision on All Basic SQL statements.
 
46:28
مراجعة شاملة على كل الأوامر الأساسية فى الــ SQL by Mohamed El Desouki - محمد الدسوقى [email protected] Tel :00966 553450836 جامعة سلمان بن عبد العزيز - السعودية - الخرج Final Revision. مراجعة شاملة لكل ما تم دراسته بالسلسلة Text Book: Fundamentals of Database Systems, 5th Edition, by Elmasri/Navathe, published by Addison-W oracle create table statement oracle drop table statement oracle constraints database constraints primary key constraint foreign key constraint check constraint null not null constraint unique constraint insert into statement update statement delete statement select statement basic query where clause select where Like '%' Like '_' select where Like aggregate functions summary functions group by group by with aggregate functions
SQL script to insert into many to many table
 
14:52
Text Article http://csharp-video-tutorials.blogspot.com/2017/02/sql-script-to-insert-into-many-to-many.html Slides http://csharp-video-tutorials.blogspot.com/2017/02/sql-script-to-insert-into-many-to-many_6.html SQL Server Interview Questions and Answers text articles & slides http://csharp-video-tutorials.blogspot.com/2014/05/sql-server-interview-questions-and.html SQL Server Interview Questions and Answers playlist https://www.youtube.com/playlist?list=PL6n9fhu94yhXcztdLO7i6mdyaegC8CJwR All Dot Net and SQL Server Tutorials in English https://www.youtube.com/user/kudvenkat/playlists?view=1&sort=dd All Dot Net and SQL Server Tutorials in Arabic https://www.youtube.com/c/KudvenkatArabic/playlists In this video we will discuss how to insert data into a table that has many-to-many relationship Create table Students ( Id int primary key identity, StudentName nvarchar(50) ) Go Create table Courses ( Id int primary key identity, CourseName nvarchar(50) ) Go Create table StudentCourses ( StudentId int not null foreign key references Students(Id), CourseId int not null foreign key references Courses(Id) ) Go Students - Id column is identity column Courses - Id column is identity column StudentCourses - StudentId and CourseId columns are foreign keys referencing Id column in Students and Courses tables As you can see, StudentCourses is a bridge table that has many to many relationship with Students and Courses tables. This means a given student can be enrolled into many courses and a given course can have many students enrolled. Below is the question asked in an interview for SQL Server Developer role. Write a SQL script to insert data into StudentCourses table. Here are the rules that your script should follow. 1. There will be 2 inputs for the script Student Name - The name of the student who wants to enroll into a course Course Name - The name of the course the student wants to enroll into 2. If the student is already in the Students table, then use that existing Student Id. If the student is not already in the Students table, then a row for that student must be inserted into the Students table, and use that new student id. 3. Along the same lines, if the course is already in the Courses table, then use that existing Course Id. If the course is not already in the Courses table, then a row for that course must be inserted into the Courses table, and use that new course id. 4. There should be no duplicate student course enrollments, i.e a given student must not be enrolled in the same course twice. For example, Tom must not be enrolled in C# course twice. Answer : To avoid duplicate student course enrollments create a composite primary key on StudentId and CourseId columns in StudentCourses table. With this composite primary key in place, if someone tries to enroll the same student in the same course again we get violation of primary key constraint error. Alter table StudentCourses Add Constraint PK_StudentCourses Primary Key Clustered (CourseId, StudentId) Here is the SQL script that inserts data into the 3 tables as expected Declare @StudentName nvarchar(50) = 'Sam' Declare @CourseName nvarchar(50) = 'SQL Server' Declare @StudentId int Declare @CourseId int -- If the student already exists, use the existing student ID Select @StudentId = Id from Students where StudentName = @StudentName -- If the course already exists, use the existing course ID Select @CourseId = Id from Courses where CourseName = @CourseName -- If the student does not exist in the Students table If (@StudentId is null) Begin -- Insert the student Insert into Students values(@StudentName) -- Get the Id of the student Select @StudentId = SCOPE_IDENTITY() End -- If the course does not exist in the Courses table If (@CourseId is null) Begin -- Insert the course Insert into Courses values(@CourseName) -- Get the Id of the course Select @CourseId = SCOPE_IDENTITY() End -- Insert StudentId & CourseId in StudentCourses table Insert into StudentCourses values(@StudentId, @CourseId) If required, we can very easily convert this into a stored procedure as shown below. Create procedure spInsertIntoStudentCourses @StudentName nvarchar(50), @CourseName nvarchar(50) as Begin Declare @StudentId int Declare @CourseId int Select @StudentId = Id from Students where StudentName = @StudentName Select @CourseId = Id from Courses where CourseName = @CourseName If (@StudentId is null) Begin Insert into Students values(@StudentName) Select @StudentId = SCOPE_IDENTITY() End If (@CourseId is null) Begin Insert into Courses values(@CourseName) Select @CourseId = SCOPE_IDENTITY() End Insert into StudentCourses values(@StudentId, @CourseId) End Use the following statement to execute the stored procedure Execute spInsertIntoStudentCourses 'Tom','C#'
Views: 63085 kudvenkat
How to drop all Default Constraints in SQL Server Database - SQL Server / TSQL Tutorial Part 94
 
06:30
SQL Server / TSQL Tutorial Scenario: You are working as SQL Server Developer, you need to generate scripts to drop all the Default Constraints in SQL Server Database. Link to scripts used in SQL Server / TSQL Tutorial Video http://www.techbrothersit.com/2016/05/how-to-drop-all-default-constraints-in.html Check out our website for Different SQL Server, MSBI tutorials and interview questions such as SQL Server Reporting Services(SSRS) Tutorial SQL Server Integration Services(SSIS) Tutorial SQL Server DBA Tutorial SQL Server / TSQL Tutorial ( Beginner to Advance) http://www.techbrothersit.com/
Views: 539 TechBrothersIT
Difference Between Delete and Truncate
 
03:41
Below is link for Useful Pl/SQL Books http://goo.gl/XMy0tt ---------------------------------------------------------- Difference Between Delete and Truncate in Detail On bigger picture they serve the same purpose but there are many Differences listed with examples Point Delete Truncate 1. Data Recovery Delete: Come under the DML Category, we need to commit or Rollback explicitly to make the changes permanent, so we can recover the data by Rollback command fully with in a session or up to a point if Save Points are used Fall In DDL Category (DDL Command issue the Auto commit implicitly) so no chances of Recovery even not using the Flashback table method. But Truncate operations are also logged , they didn’t generate redo SQL but they are logged , view for truncated data info V$LOGMNR_CONTENTS 2. Data Removal Delete Can remove all or selected data using the Where Clause predicates. Or we can say delete any subset of rows We can Truncate complete table or a partition or sub partition of a table. 3. Speed Delete is Slower because oracle maintain the redo logs for Read Consistency (so that every session connected can see a consistent data at a given point of time ) Delete is very time consuming activity especially when table have numerous indexes and Triggers associated with table Faster as no data logs are maintained no associated trigger firing. 4. DML Triggers Firing DML (Delete) triggers associated with table will fire. DML Trigger will not fire in case of truncate method. 5. Flashback Technology Data can be recovered even after commit operation using Flashback Table options Flashback_transaction_query table will give what to recover and up to which point. Data cannot be recovered in truncate method by Flashback table option. 6. Referential Integrity Constraint Behavior if we don’t have related data in child table then we can delete the data from the parent table or we have variants like On Delete Cascade & on Delete set Null. We can’t truncate a table with enable Referential Integrity Constraint, even there is no data in the child table, we have to disable or drop the constraint if we want to truncate the table. Exception: Truncate is possible if the FK is self-referential means primary key and foreign key are on the same table. 7. Space De allocation or Space Utilization No extent reset with delete when deleting rows from a table, extents are not de allocated, So if there were 50 extents in the table before the deletion, there will still be 50 after the deletion. Truncate: When a table is truncated it will free the space allocated except in case of reuse storage clause. This space can subsequently be used only by new data in the table or cluster resulting from insert or update operations .All extents are de allocated leaving only the extents specified when the table was originally created .Example So if the table was originally created with min extents 3, there will be 3 extents remaining when the tables is truncated. When you truncate a table, NEXT is automatically reset to the last extent deleted. 8. High Water Mark Delete will not reset the high water mark Truncate will reset the High Water mark which is very important for performance point of view as in case of full table scan and full index scan oracle will read all the block under high water mark this makes a lot of difference in terms of performance. 9. Cluster No as such restriction with delete. You cannot individually truncate a table that is part of a cluster. You must truncate the cluster, Delete all rows from the table, or drop and re-create the table. 10. Information Capturing Delete : we can capture the row information what we have deleted using Delete Method, f you are deleting multiple records then use composite data types (collections & records) Truncate Don’t have this feature of capturing the deleted records. 11. Function Based Index Impact DELETE You cannot delete rows from a table if a function-based index on the table has become invalid. You must first validate the function-based index. Truncate: No as such restriction 12. UNUSABLE Indexes Delete no as such feature. Truncate if table is not empty then truncate make all unusable indexes to useable. 13. Complex views You cannot delete data from a Complex view except through INSTEAD OF triggers. But we can delete data from simple Views and MV. We cannot truncate a view simple or complex but you can truncate MV with special Features like Preserve MV Logs and Purge MV Logs. 14. Privileges Delete You need to provide delete table privilege on object. Truncate you must have drop table privilege there is no truncate table privilege exists. 15. Domain Index No as such restriction You cannot truncate the object having domain index in invalid or In progress state
Views: 12060 Ram Gupta
Primary Key & Foreign Key Implementation: MySQL
 
06:13
http://technotip.com/2931/primary-key-foreign-key-implementation-mysql/ Implementation of Primary Key and Foreign Key, using MySQL Practical approach and the benefits of using Primary and Foreign key concept in a relational database design.
Views: 213670 Satish B
Truncate All Tables from a SQL Server Database - TSQL Tutorial
 
10:09
Let's think about a database that we use for our ETL process and we call that database staging. We want to truncate all the tables in morning so those can be used for the daily process. Once way is to write our Truncate statement for each of the table but tables can be dropped or new tables can be created as well. We want to write a query that we can be use to Truncate all the tables from a database and we don't have to rewrite our Truncate statements. If the tables do not have Primary Key -Foreign Key relationship, we can use Truncate. But we often have tables which are referenced by other tables. We can not use Truncate statement for those tables. The only way to Truncate those tables is to drop the Foreign Key Constraint before Truncating and then Truncate and Recreate Relationship after that. The below Code can be used to Truncate all the tables from the database. If Tables will have the Pk-Fk relationship, The script will drop the Foreign Key Constraints first and then Truncate those tables and finally recreate the Foreign Key constraints. Before you run below Script, Make sure you are pointing to correct Database and Server! All the best with Truncating all the tables from a SQL Server Database. Link to Blog for Script used in this video http://sqlage.blogspot.com/2015/02/truncate-all-tables-in-database-in-sql.html You can visit our blog http://sqlage.blogspot.com/ Twitter https://twitter.com/AamirSh48904922 Facebook https://www.facebook.com/SqlAge
Views: 31130 TechBrothersIT
Oracle SQL Tutorial 14 - Column-Level and Table-Level Constraints
 
04:15
In the previous video we talked about adding constraints at the column-level. We made it nice and simple by only requiring a few keywords, but the problem we were having is that we could not assign a name to the constraint, which many people like to do so we can reference easily if we need to at a later time. To do this, it requires a little bit more typing, but it will give us extra flexibility and many consider it to be the higher quality approach to adding constraints. Let's go though a simple example. Let's say we have a users table with a user_id column that we want to make a primary key. We will create the table like this: CREATE TABLE( user_ id NUMBER PRIMARY KEY ) Instead of adding the PRIMARY KEY keywords after the data type, we add: CONSTRAINT user_pk PRIMARY KEY Now, we have assigned the name user_pk to this constraint. You can do the same with other constraints, such as UNIQUE. The syntax would be CONSTRAINT username_un UNIQUE. The other way to create constraints requires to put all of our constraints at the bottom of our table creation rather than inline with the column. This type of constraint is known as a table-level constraints. To make a column a primary key using table-level constraints, we add it to the CREATE TABLE command as if it is another row and use the CONSTRAINT keyword to tell Oracle that what is coming is a constraint, not a column in our table. CREATE TABLE users( user_id NUMBER, username VARCHAR2(50 CHAR), CONSTRAINT username_un UNIQUE (username), CONSTRAINT users_pk PRIMARY KEY (user_id) ) The primary differences here is that you have to put the column you are talking about in parenthesis after the PRIMARY KEY keyword. That's because it's at the end of the table and you need a way to tell it what column you are talking about. The option of putting it at the end of the table has the added benefit in this situation because if we needed to have a primary key that is the combination of multiple columns, we can do that by just adding the other column in the PRIMARY KEY parenthesis right after a comma. In summary, there are three ways to make constraints. The first is at the column level, unnamed. The second is at the column level, named. The third is at the table level, also named. In the next video we are going to create a named constraint in Oracle SQL Developer, so stay tuned and be sure to subscribe! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Support me! http://www.patreon.com/calebcurry Subscribe to my newsletter: http://eepurl.com/-8qtH Donate!: http://bit.ly/DonateCTVM2. ~~~~~~~~~~~~~~~Additional Links~~~~~~~~~~~~~~~ More content: http://CalebCurry.com Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://twitter.com/calebCurry Amazing Web Hosting - https://www.dreamhost.com/r.cgi?1487063 (The best web hosting for a cheap price!)
Views: 10678 Caleb Curry
How To Insert Data Into Multiple Table Using Foreign Key
 
06:43
Normally we create table and insert data into the table.But,Here we learn about how to insert data into multiple table. Normally,For inserting data into multiple table using foreign key but without using foreign key we can also insert data into multiple table.
Views: 72228 J&T Channel
105. Create Table with Foreign Key in SQL Theory (Hindi)
 
08:58
Please Subscribe Channel Like, Share and Comment Visit : www.geekyshows.com
Views: 14186 Geeky Shows
Oracle SQL PLSQL 12C Tutorial 16 - RENAME & DROP Statement
 
04:44
This Video Tutorial Will Describe how to change the name of a table or how to delete the existing table. This command will also work on other versions of database like Oracle 11g Database, Oracle 10g Database, Oracle 9i Database, Oracle 8i Database, Oracle 8 Database and so on. RENAME command is used to change the name of the table to new name. DROP command is used to delete the existing table permanently along with all its data. Full Syntax will be given in this video tutorial about how to use the RENAME & DROP command. Along with the live example to RENAME AND DROP table command. All the keywords, format, mandatory clauses etc are described in this video.
Oracle Group by - Having تعليم أوراكل
 
07:13
by Mohamed El Desouki - محمد الدسوقى [email protected] Tel :00966 553450836 جامعة سلمان بن عبد العزيز - السعودية - الخرج How to apply conditions on groups using Having. كيف تطبق شروط على الجروب Text Book: Fundamentals of Database Systems, 5th Edition, by Elmasri/Navathe, published by Addison-W oracle create table statement oracle drop table statement oracle constraints database constraints primary key constraint foreign key constraint check constraint null not null constraint unique constraint insert into statement update statement delete statement select statement basic query where clause select where Like '%' Like '_' select where Like aggregate functions summary functions group by group by with aggregate functions group by having having
C# Edge 235   MC39  DROP TABLE and FOREIGN KEY
 
04:33
http://cyborgmaguscsharpedge.com/ has all my video tutorials usually with source code in an organized cyber-library. In this video we learn how to drop (delete) and create MySql Tables that are related to each other in a Parent-Child-Grand Child type relationship via primary keys and foreign keys. There is a safe order for such drops and creates which avoid the MySql Connector/Net C# program abending because if violates these relationship constaints. http://youtu.be/wPRnes7cPFc
Views: 265 cyborgmagus
Oracle Database SQL Tuning with Constraints - Lesson 1 of 5
 
00:54
Learn how to tune SQL - especially in Data Warehouse environments - with Constraints. Constraints provide critical information to the Cost Based Optimizer in the Oracle Database. Don't drop your constraints for query performance! In these 5 lessons, Oracle Certified Master DBA John Watson will demonstrate how constraints - unique, foreign key, not null - improve the execution plan and thus performance of SQL in an Oracle database. View all 5 lessons, free at http://www.skillbuilders.com/oracle-database-sql-tuning-with-constraints.
Views: 880 SkillBuilders
Using Alter command to drop constraints
 
02:52
This video describes how we can use alter command to drop constraints from table.
Difference between Truncate, Delete & Drop commands
 
01:25
In this tutorial i'm going to demonstrate you what is the difference between Truncate, Delete & Drop commands steps by steps.
Views: 6002 OCP Technology