SlideShare uma empresa Scribd logo
1 de 28
Disclaimer: This presentation is prepared by trainees of
baabtra as a part of mentoring program. This is not official
document of baabtra –Mentoring Partner
Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt .
Ltd
Views, Triggers, Functions- Calling a function, return type,
          Stored Procedures, Indexing and Joins
VIEWS

•    The view is a virtual table. It does not physically exist. Rather, it is created by a
    query joining one or more tables.
•    A view contains rows and columns, just like a real table
•   The fields in a view are fields from one or more real tables in the database

Creating an SQL VIEW
Syntax:
          CREATE VIEW view_name AS
          SELECT column_name(s)
          FROM table_name
          WHERE condition;
View Creation - Example

•   View Creation - Example
    CREATE VIEW sup_orders
    AS SELECT suppliers.supplier_id, orders.quantity, orders.price
    FROM suppliers, orders
    WHERE suppliers.supplier_id = orders.supplier_id and suppliers.supplier_name = 'IBM';

•   This View (Create statement) would create a virtual table based on the result set of the select
    statement. You can now query the view as follows

     SELECT * FROM sup_orders;
Updating VIEW

•   You can modify the definition of a VIEW without dropping it by using the following
    syntax
    CREATE OR REPLACE VIEW view_name
    AS SELECT columns
    FROM table
    WHERE predicates;

•    View Modify - Example
    CREATE or REPLACE VIEW sup_orders
    AS SELECT suppliers.supplier_id, orders.quantity, orders.price
    FROM suppliers, orders
    WHERE suppliers.supplier_id = orders.supplier_id
    and suppliers.supplier_name = 'Microsoft';
Dropping VIEW
•   The syntax for dropping a VIEW :

    DROP VIEW view_name;

•    View Drop - Example

    DROP VIEW sup_orders;

Question: Can you update the data in an view?
Answer : A view is created by joining one or more tables. When you update record(s) in a view, it
   updates the records in the underlying tables that make up the View.
   So, yes, you can update the data in View providing you have the proper privileges to the
   underlying tables.
Question: Does the SQL View exist if the table is dropped from the database?
Answer: Yes, View continues to exist even after one of the tables (that the SQL View is based on) is
   dropped from the database. However, if you try to query the View after the table has been
   dropped, you will receive a message indicating that the View has errors.
TRIGGER
•   What is a Trigger?

     A trigger is a block structure which is fired when a DML statements like Insert,
    Delete, Update is executed on a database table. A trigger is triggered automatically
    when an associated DML statement is executed.
•   Syntax of Triggers

    CREATE [OR REPLACE ] TRIGGER trigger_name
    {BEFORE | AFTER | INSTEAD OF }
    {INSERT [OR] | UPDATE [OR] | DELETE}
    [OF col_name]
    ON table_name
    [REFERENCING OLD AS o NEW AS n]
    [FOR EACH ROW]
    WHEN (condition) ;
TRIGGER


•   The syntax for a dropping a Trigger is:

                      DROP TRIGGER trigger_name ON tbl_name;

•   The syntax for a disabling a Trigger is:

                ALTER TRIGGER trigger_name DISABLE;

•   The syntax for a enabling a Trigger is:

                ALTER TRIGGER trigger_name ENABLE;
Example


•   Creating Trigger

    CREATE TRIGGER deleted_detailss
    BEFORE
    DELETE on tbl_customer
     FOR EACH ROW
    EXECUTE PROCEDURE customerss_delete();

•   Drop Trigger

    drop trigger delete_details on tbl_customer;
Functions

•  A function is a group of statements that executes upon request
•  Python provides many built-in functions and allows programmers to define their own
   functions
• A request to execute a function is known as a function call
• When a function is called, it may be passed arguments that specify data upon which
   the function performs its computation
• Functions defined within class statements are also called methods
The def Statement
• The def statement is the most common way to define a function
Syntax
                           def function-name(parameters):
                                statement(s)
Functions

The return keyword
• A function is created to do a specific task
• Often there is a result from such a task
• The return keyword is used to return values from a function
• A function may or may not return a value
• If a function does not have a return keyword, it will send a None value
Example
def showMessage(msg):
  print msg

def cube(x):
  return x * x * x
def main():
  x = cube(3)
  print x
  showMessage("Computation finished.")
  print showMessage("Ready.")
main()

output:
baabtra@baabtra-desktop:~$ python ppt.py
27
Computation finished.
Ready.
None
Calling Functions

•   A function call is an expression with the following syntax:
               function-object(arguments)
•    function-object It is most often the function's name.
•   The parentheses denote the function-call operation itself.
•   Arguments, in the simplest case, is a series of zero or more expressions separated by
    commas (,), giving values for the function's corresponding formal parameters
Calling Functions

total = 0;
# Function definition is here
def sum( arg1, arg2 ):
  # Add both the parameters and return them."
  total = arg1 + arg2;
  # Here total is local variable.
  print "Inside the function local total : ", total
  return total;

def main():
# Now you can call sum function
 sum( 10, 20 );
 print "Outside the function global total : ", total
main()


output:
baabtra@baabtra-desktop:~$ python ppt2.py
Inside the function local total : 30
Outside the function global total : 0
Advantage

The advantages of using functions are:
• Reducing duplication of code
• Improving clarity of the code
• Reuse of code
• Information hiding
INDEX

•   The CREATE INDEX statement is used to create indexes in tables

•   Indexes allow the database application to find data fast; without reading the whole
    table

•   An index can be created in a table to find data more quickly and efficiently

•   The users cannot see the indexes, they are just used to speed up searches/queries
INDEX

•   CREATE INDEX Syntax
    Creates an index on a table. Duplicate values are allowed:

    CREATE INDEX index_name
    ON table_name (column_name);

•   CREATE UNIQUE INDEX Syntax
    Creates a unique index on a table. Duplicate values are not allowed:

    CREATE UNIQUE INDEX index_name
    ON table_name (column_name);

•   UNIQUE indicates that the combination of values in the indexed columns must be
    unique
INDEX


•   Rename an Index
    The syntax for renaming an index is:

    ALTER INDEX index_name RENAME TO new_index_name;



•   Drop an Index
    The syntax for dropping an index is:



    DROP INDEX index_name;
JOINS
•   Joins are used to query data from two or more tables, based on a relationship
    between certain columns in these tables

•   Types of Joins

    LEFT JOIN: Return all rows from the left table, even if there are no matches in the
    right table
    RIGHT JOIN: Return all rows from the right table, even if there are no matches in
    the left table
    FULL JOIN: Return rows when there is a match in one of the tables
INNER JOIN
•   The INNER JOIN keyword returns rows when there is at least one match in both
    tables

•    INNER JOIN Syntax
    SELECT column_name(s)
     FROM table_name1
     INNER JOIN table_name2
     ON table_name1.column_name=table_name2.column_name;

•    If there are rows in “table_name1 " that do not have matches in " table_name2 ",
    those rows will NOT be listed
LEFT JOIN

•   The LEFT JOIN keyword returns all rows from the left table (table_name1), even if
    ther are no matches in the right table (table_name2)

•    LEFT JOIN Syntax
    SELECT column_name(s)
     FROM table_name1
     LEFT JOIN table_name2
     ON table_name1.column_name=table_name2.column_name;
RIGHT JOIN
•   The RIGHT JOIN keyword returns all the rows from the right table (table_name2),
    even if there are no matches in the left table (table_name1)

•   RIGHT JOIN Syntax
    SELECT column_name(s)
    FROM table_name1
    RIGHT JOIN table_name2
    ON table_name1.column_name=table_name2.column_name;
FULL JOIN

•   The FULL JOIN keyword return rows when there is a match in one of the tables

FULL JOIN Syntax
   SELECT column_name(s)
   FROM table_name1
   FULL JOIN table_name2
   ON table_name1.column_name=table_name2.column_name;

•   The FULL JOIN keyword returns all the rows from the left table (Table1), and all the rows
    from the right table (Table2). If there are rows in " Table1 " that do not have matches in "
    Table2", or if there are rows in " Table2" that do not have matches in " Table1 ", those rows
    will be listed as well.
stored procedure

•   In a database management system (DBMS), a stored procedure is a set of Structured Query
    Language (SQL) statements with an assigned name that's stored in the database in compiled
    form so that it can be shared by a number of programs.

•   preserving data integrity (information is entered in a consistent manner)

    Data integrity means the correctness and consistency of data
    Enforcing data integrity ensures the quality of the data in the database
    Consider following two examples of data integriry in a database

    1) If an employee is entered with an employee_id value of 123, the database should not allow
    another employee to have an ID with the same value

    2) If you have an employee_rating column intended to have values ranging from 1 to 5, the
    database should not accept a value of 6
Example

CREATE OR REPLACE FUNCTION insert_tbl_customer(int,text,date,text,int,boolean)
RETURNS void AS
$delimiter$
INSERT INTO tbl_customer (pk_int_cu_id, vchr_cname, dat_dob, vchr_email,bint_phone,bln_sex)
VALUES ($1,$2,$3,$4,$5,$6);
$delimiter$
LANGUAGE SQL;

select insert_tbl_customer(201,'john','1990-10-5','b@gmail',94,true);
If this presentation helped you, please visit our page
               facebook.com/baabtra and like it.
                  Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com
Contact Us

Mais conteúdo relacionado

Mais procurados

Types Of Keys in DBMS
Types Of Keys in DBMSTypes Of Keys in DBMS
Types Of Keys in DBMSPadamNepal1
 
PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts Bharat Kalia
 
Types Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql ServerTypes Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql Serverprogrammings guru
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity ConstraintsMegha yadav
 
Sql(structured query language)
Sql(structured query language)Sql(structured query language)
Sql(structured query language)Ishucs
 
Sql queries presentation
Sql queries presentationSql queries presentation
Sql queries presentationNITISH KUMAR
 
SQL - DML and DDL Commands
SQL - DML and DDL CommandsSQL - DML and DDL Commands
SQL - DML and DDL CommandsShrija Madhu
 

Mais procurados (20)

joins in database
 joins in database joins in database
joins in database
 
Types Of Keys in DBMS
Types Of Keys in DBMSTypes Of Keys in DBMS
Types Of Keys in DBMS
 
PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts
 
Sql commands
Sql commandsSql commands
Sql commands
 
Sql operators & functions 3
Sql operators & functions 3Sql operators & functions 3
Sql operators & functions 3
 
Types Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql ServerTypes Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql Server
 
SQL Overview
SQL OverviewSQL Overview
SQL Overview
 
Sql operator
Sql operatorSql operator
Sql operator
 
Ms sql-server
Ms sql-serverMs sql-server
Ms sql-server
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity Constraints
 
SQL Views
SQL ViewsSQL Views
SQL Views
 
SQL(DDL & DML)
SQL(DDL & DML)SQL(DDL & DML)
SQL(DDL & DML)
 
Chapter 4 Structured Query Language
Chapter 4 Structured Query LanguageChapter 4 Structured Query Language
Chapter 4 Structured Query Language
 
Sql(structured query language)
Sql(structured query language)Sql(structured query language)
Sql(structured query language)
 
Sql subquery
Sql  subquerySql  subquery
Sql subquery
 
Using the set operators
Using the set operatorsUsing the set operators
Using the set operators
 
Aggregate function
Aggregate functionAggregate function
Aggregate function
 
SQL
SQLSQL
SQL
 
Sql queries presentation
Sql queries presentationSql queries presentation
Sql queries presentation
 
SQL - DML and DDL Commands
SQL - DML and DDL CommandsSQL - DML and DDL Commands
SQL - DML and DDL Commands
 

Semelhante a SQL Views

Semelhante a SQL Views (20)

Views, Triggers, Functions, Stored Procedures, Indexing and Joins
Views, Triggers, Functions, Stored Procedures,  Indexing and JoinsViews, Triggers, Functions, Stored Procedures,  Indexing and Joins
Views, Triggers, Functions, Stored Procedures, Indexing and Joins
 
SQL.pptx for the begineers and good know
SQL.pptx for the begineers and good knowSQL.pptx for the begineers and good know
SQL.pptx for the begineers and good know
 
Java class 8
Java class 8Java class 8
Java class 8
 
Database Architecture and Basic Concepts
Database Architecture and Basic ConceptsDatabase Architecture and Basic Concepts
Database Architecture and Basic Concepts
 
Aggregate functions in SQL.pptx
Aggregate functions in SQL.pptxAggregate functions in SQL.pptx
Aggregate functions in SQL.pptx
 
MS SQL Server
MS SQL ServerMS SQL Server
MS SQL Server
 
Database COMPLETE
Database COMPLETEDatabase COMPLETE
Database COMPLETE
 
Creating other schema objects
Creating other schema objectsCreating other schema objects
Creating other schema objects
 
Aggregate functions in SQL.pptx
Aggregate functions in SQL.pptxAggregate functions in SQL.pptx
Aggregate functions in SQL.pptx
 
ms-sql-server-150223140402-conversion-gate02.pptx
ms-sql-server-150223140402-conversion-gate02.pptxms-sql-server-150223140402-conversion-gate02.pptx
ms-sql-server-150223140402-conversion-gate02.pptx
 
Module 3
Module 3Module 3
Module 3
 
Relational Database Language.pptx
Relational Database Language.pptxRelational Database Language.pptx
Relational Database Language.pptx
 
Database Overview
Database OverviewDatabase Overview
Database Overview
 
SQL -Beginner To Intermediate Level.pdf
SQL -Beginner To Intermediate Level.pdfSQL -Beginner To Intermediate Level.pdf
SQL -Beginner To Intermediate Level.pdf
 
Vertica-Database
Vertica-DatabaseVertica-Database
Vertica-Database
 
Dbms sql-final
Dbms  sql-finalDbms  sql-final
Dbms sql-final
 
Structured Query Language(SQL)
Structured Query Language(SQL)Structured Query Language(SQL)
Structured Query Language(SQL)
 
Mysqlppt
MysqlpptMysqlppt
Mysqlppt
 
Mysqlppt
MysqlpptMysqlppt
Mysqlppt
 
Getting Started with MySQL I
Getting Started with MySQL IGetting Started with MySQL I
Getting Started with MySQL I
 

Mais de baabtra.com - No. 1 supplier of quality freshers

Mais de baabtra.com - No. 1 supplier of quality freshers (20)

Agile methodology and scrum development
Agile methodology and scrum developmentAgile methodology and scrum development
Agile methodology and scrum development
 
Best coding practices
Best coding practicesBest coding practices
Best coding practices
 
Core java - baabtra
Core java - baabtraCore java - baabtra
Core java - baabtra
 
Acquiring new skills what you should know
Acquiring new skills   what you should knowAcquiring new skills   what you should know
Acquiring new skills what you should know
 
Baabtra.com programming at school
Baabtra.com programming at schoolBaabtra.com programming at school
Baabtra.com programming at school
 
99LMS for Enterprises - LMS that you will love
99LMS for Enterprises - LMS that you will love 99LMS for Enterprises - LMS that you will love
99LMS for Enterprises - LMS that you will love
 
Php sessions & cookies
Php sessions & cookiesPhp sessions & cookies
Php sessions & cookies
 
Php database connectivity
Php database connectivityPhp database connectivity
Php database connectivity
 
Chapter 6 database normalisation
Chapter 6  database normalisationChapter 6  database normalisation
Chapter 6 database normalisation
 
Chapter 5 transactions and dcl statements
Chapter 5  transactions and dcl statementsChapter 5  transactions and dcl statements
Chapter 5 transactions and dcl statements
 
Chapter 4 functions, views, indexing
Chapter 4  functions, views, indexingChapter 4  functions, views, indexing
Chapter 4 functions, views, indexing
 
Chapter 3 stored procedures
Chapter 3 stored proceduresChapter 3 stored procedures
Chapter 3 stored procedures
 
Chapter 2 grouping,scalar and aggergate functions,joins inner join,outer join
Chapter 2  grouping,scalar and aggergate functions,joins   inner join,outer joinChapter 2  grouping,scalar and aggergate functions,joins   inner join,outer join
Chapter 2 grouping,scalar and aggergate functions,joins inner join,outer join
 
Chapter 1 introduction to sql server
Chapter 1 introduction to sql serverChapter 1 introduction to sql server
Chapter 1 introduction to sql server
 
Chapter 1 introduction to sql server
Chapter 1 introduction to sql serverChapter 1 introduction to sql server
Chapter 1 introduction to sql server
 
Microsoft holo lens
Microsoft holo lensMicrosoft holo lens
Microsoft holo lens
 
Blue brain
Blue brainBlue brain
Blue brain
 
5g
5g5g
5g
 
Aptitude skills baabtra
Aptitude skills baabtraAptitude skills baabtra
Aptitude skills baabtra
 
Gd baabtra
Gd baabtraGd baabtra
Gd baabtra
 

Último

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Último (20)

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

SQL Views

  • 1.
  • 2. Disclaimer: This presentation is prepared by trainees of baabtra as a part of mentoring program. This is not official document of baabtra –Mentoring Partner Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt . Ltd
  • 3. Views, Triggers, Functions- Calling a function, return type, Stored Procedures, Indexing and Joins
  • 4. VIEWS • The view is a virtual table. It does not physically exist. Rather, it is created by a query joining one or more tables. • A view contains rows and columns, just like a real table • The fields in a view are fields from one or more real tables in the database Creating an SQL VIEW Syntax: CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition;
  • 5. View Creation - Example • View Creation - Example CREATE VIEW sup_orders AS SELECT suppliers.supplier_id, orders.quantity, orders.price FROM suppliers, orders WHERE suppliers.supplier_id = orders.supplier_id and suppliers.supplier_name = 'IBM'; • This View (Create statement) would create a virtual table based on the result set of the select statement. You can now query the view as follows SELECT * FROM sup_orders;
  • 6. Updating VIEW • You can modify the definition of a VIEW without dropping it by using the following syntax CREATE OR REPLACE VIEW view_name AS SELECT columns FROM table WHERE predicates; • View Modify - Example CREATE or REPLACE VIEW sup_orders AS SELECT suppliers.supplier_id, orders.quantity, orders.price FROM suppliers, orders WHERE suppliers.supplier_id = orders.supplier_id and suppliers.supplier_name = 'Microsoft';
  • 7. Dropping VIEW • The syntax for dropping a VIEW : DROP VIEW view_name; • View Drop - Example DROP VIEW sup_orders; Question: Can you update the data in an view? Answer : A view is created by joining one or more tables. When you update record(s) in a view, it updates the records in the underlying tables that make up the View. So, yes, you can update the data in View providing you have the proper privileges to the underlying tables. Question: Does the SQL View exist if the table is dropped from the database? Answer: Yes, View continues to exist even after one of the tables (that the SQL View is based on) is dropped from the database. However, if you try to query the View after the table has been dropped, you will receive a message indicating that the View has errors.
  • 8. TRIGGER • What is a Trigger? A trigger is a block structure which is fired when a DML statements like Insert, Delete, Update is executed on a database table. A trigger is triggered automatically when an associated DML statement is executed. • Syntax of Triggers CREATE [OR REPLACE ] TRIGGER trigger_name {BEFORE | AFTER | INSTEAD OF } {INSERT [OR] | UPDATE [OR] | DELETE} [OF col_name] ON table_name [REFERENCING OLD AS o NEW AS n] [FOR EACH ROW] WHEN (condition) ;
  • 9. TRIGGER • The syntax for a dropping a Trigger is: DROP TRIGGER trigger_name ON tbl_name; • The syntax for a disabling a Trigger is: ALTER TRIGGER trigger_name DISABLE; • The syntax for a enabling a Trigger is: ALTER TRIGGER trigger_name ENABLE;
  • 10. Example • Creating Trigger CREATE TRIGGER deleted_detailss BEFORE DELETE on tbl_customer FOR EACH ROW EXECUTE PROCEDURE customerss_delete(); • Drop Trigger drop trigger delete_details on tbl_customer;
  • 11. Functions • A function is a group of statements that executes upon request • Python provides many built-in functions and allows programmers to define their own functions • A request to execute a function is known as a function call • When a function is called, it may be passed arguments that specify data upon which the function performs its computation • Functions defined within class statements are also called methods The def Statement • The def statement is the most common way to define a function Syntax def function-name(parameters): statement(s)
  • 12. Functions The return keyword • A function is created to do a specific task • Often there is a result from such a task • The return keyword is used to return values from a function • A function may or may not return a value • If a function does not have a return keyword, it will send a None value
  • 13. Example def showMessage(msg): print msg def cube(x): return x * x * x def main(): x = cube(3) print x showMessage("Computation finished.") print showMessage("Ready.") main() output: baabtra@baabtra-desktop:~$ python ppt.py 27 Computation finished. Ready. None
  • 14. Calling Functions • A function call is an expression with the following syntax: function-object(arguments) • function-object It is most often the function's name. • The parentheses denote the function-call operation itself. • Arguments, in the simplest case, is a series of zero or more expressions separated by commas (,), giving values for the function's corresponding formal parameters
  • 15. Calling Functions total = 0; # Function definition is here def sum( arg1, arg2 ): # Add both the parameters and return them." total = arg1 + arg2; # Here total is local variable. print "Inside the function local total : ", total return total; def main(): # Now you can call sum function sum( 10, 20 ); print "Outside the function global total : ", total main() output: baabtra@baabtra-desktop:~$ python ppt2.py Inside the function local total : 30 Outside the function global total : 0
  • 16. Advantage The advantages of using functions are: • Reducing duplication of code • Improving clarity of the code • Reuse of code • Information hiding
  • 17. INDEX • The CREATE INDEX statement is used to create indexes in tables • Indexes allow the database application to find data fast; without reading the whole table • An index can be created in a table to find data more quickly and efficiently • The users cannot see the indexes, they are just used to speed up searches/queries
  • 18. INDEX • CREATE INDEX Syntax Creates an index on a table. Duplicate values are allowed: CREATE INDEX index_name ON table_name (column_name); • CREATE UNIQUE INDEX Syntax Creates a unique index on a table. Duplicate values are not allowed: CREATE UNIQUE INDEX index_name ON table_name (column_name); • UNIQUE indicates that the combination of values in the indexed columns must be unique
  • 19. INDEX • Rename an Index The syntax for renaming an index is: ALTER INDEX index_name RENAME TO new_index_name; • Drop an Index The syntax for dropping an index is: DROP INDEX index_name;
  • 20. JOINS • Joins are used to query data from two or more tables, based on a relationship between certain columns in these tables • Types of Joins LEFT JOIN: Return all rows from the left table, even if there are no matches in the right table RIGHT JOIN: Return all rows from the right table, even if there are no matches in the left table FULL JOIN: Return rows when there is a match in one of the tables
  • 21. INNER JOIN • The INNER JOIN keyword returns rows when there is at least one match in both tables • INNER JOIN Syntax SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2.column_name; • If there are rows in “table_name1 " that do not have matches in " table_name2 ", those rows will NOT be listed
  • 22. LEFT JOIN • The LEFT JOIN keyword returns all rows from the left table (table_name1), even if ther are no matches in the right table (table_name2) • LEFT JOIN Syntax SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2.column_name;
  • 23. RIGHT JOIN • The RIGHT JOIN keyword returns all the rows from the right table (table_name2), even if there are no matches in the left table (table_name1) • RIGHT JOIN Syntax SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON table_name1.column_name=table_name2.column_name;
  • 24. FULL JOIN • The FULL JOIN keyword return rows when there is a match in one of the tables FULL JOIN Syntax SELECT column_name(s) FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2.column_name; • The FULL JOIN keyword returns all the rows from the left table (Table1), and all the rows from the right table (Table2). If there are rows in " Table1 " that do not have matches in " Table2", or if there are rows in " Table2" that do not have matches in " Table1 ", those rows will be listed as well.
  • 25. stored procedure • In a database management system (DBMS), a stored procedure is a set of Structured Query Language (SQL) statements with an assigned name that's stored in the database in compiled form so that it can be shared by a number of programs. • preserving data integrity (information is entered in a consistent manner) Data integrity means the correctness and consistency of data Enforcing data integrity ensures the quality of the data in the database Consider following two examples of data integriry in a database 1) If an employee is entered with an employee_id value of 123, the database should not allow another employee to have an ID with the same value 2) If you have an employee_rating column intended to have values ranging from 1 to 5, the database should not accept a value of 6
  • 26. Example CREATE OR REPLACE FUNCTION insert_tbl_customer(int,text,date,text,int,boolean) RETURNS void AS $delimiter$ INSERT INTO tbl_customer (pk_int_cu_id, vchr_cname, dat_dob, vchr_email,bint_phone,bln_sex) VALUES ($1,$2,$3,$4,$5,$6); $delimiter$ LANGUAGE SQL; select insert_tbl_customer(201,'john','1990-10-5','b@gmail',94,true);
  • 27. If this presentation helped you, please visit our page facebook.com/baabtra and like it. Thanks in advance. www.baabtra.com | www.massbaab.com |www.baabte.com