Database Architecture and Basic Concepts


Published on

Free Download

Published in: Education, Technology
1 Comment
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Database Architecture and Basic Concepts

  1. 1. Database Architecture and Basic Concepts What is Database? Structured Query Language Stored Procedures
  2. 2. What is Database?  A database is an object for storing complex, structured information.  What make database unique is the fact that databases are design to retrieve data quickly.  Database samples such as Access and SQL Server called database management systems (DBMS).  To access the data stored in the database and to update the database, you use a special language, Structure Query Language (SQL).
  3. 3. Continue…  Relational Databases
  4. 4. Continue…
  5. 5. Structure Query Language  SQL (Structured Query Language) is a universal language for manipulating tables, and every database management system (DBMS) supports it.  SQL is a nonprocedural language.  SQL statements are categorized into two major categories:  Data Manipulation Language (DML)  Data Definition Language (DDL)
  6. 6. Continue…  Executing SQL Statements.  Opening Microsoft SQL Server Management Studio  Using New Query Windows.
  7. 7. Continue…  Selection Queries  The simplest form of the SELECT statement is SELECT fields FROM tables where fields and tables are comma-separated lists of the fields you want to retrieve from the database and the tables they belong to.
  8. 8.  WHERE Clause To restrict the rows returned by the query, use the WHERE clause of the SELECT statement. The most common form of the SELECT statement is the following: SELECT fields FROM tables WHERE condition The fields and tables arguments are the same as before. Sample: SELECT ProductName, CategoryName FROM Products WHERE CategoryID In (2, 5,6,10)
  9. 9.  TOP Keyword  Some queries may retrieve a large number of rows, while you‟re interested in the top few rows only.  The TOP N keyword allows you to select the first N rows and ignore the remaining ones.  DISTINCT Keyword  The DISTINCT keyword eliminates any duplicates from the cursor retrieved by the SELECT statement. SELECT DISTINCT Country FROM Customers
  10. 10.  ORDER Keyword  The rows of a query are not in any particular order. To request that the rows be returned in a specific order, use the ORDER BY clause, whose syntax is ORDER BY col1, col2, . . . SELECT CompanyName, ContactName FROM Customers ORDER BY Country, City
  11. 11.  SQL Join  Joins specify how you connect multiple tables in a query, and there are four types of joins:  Left outer, or left join  Right outer, or right join  Full outer, or full join  Inner join  Left Joins This join displays all the records in the left table and only those records of the table on the right that match certain user-supplied criteria. This join has the following syntax: FROM (primary table) LEFT JOIN (secondary table) ON (primary table).(field) (comparison) (secondary table).(field) SELECT title, pub_name FROM titles LEFT JOIN publishers ON titles.pub_id = publishers.pub_id
  12. 12.  Right Joins This join is similar to the left outer join, except that all rows in the table on the right are displayed and only the matching rows from the left table are displayed. This join has the following syntax: FROM (secondary table) RIGHT JOIN (primary table) ON (secondary table).(field) (comparison) (primary table).(field) “SELECT title, pub_name FROM titles RIGHT JOIN publishers ON titles.pub_id = publishers.pub_id”  Full Joins The full join returns all the rows of the two tables, regardless of whether there are matching rows or not. In effect, it‟s a combination of left and right joins. “SELECT title, pub_name FROM titles FULL JOIN publishers ON titles.pub_id = publishers.pub_id”
  13. 13.  Inner Joins This join returns the matching rows of both tables, similar to the WHERE clause, and has the following syntax: FROM (primary table) INNER JOIN (secondary table) ON (primary table).(field) (comparison) (secondary table).(field) “SELECT titles.title, publishers.pub_name FROM titles, publishers WHERE titles.pub_id = publishers.pub_id” Or “SELECT titles.title, publishers.pub_name FROM titles INNER JOIN publishers ON titles.pub_id = publishers.pub_id”
  14. 14.  Grouping Rows  Sometimes you need to group the results of a query, so that you can calculate subtotals. SELECT ProductID, SUM(Quantity * UnitPrice *(1 - Discount)) AS [Total Revenues] FROM [Order Details] GROUP BY ProductID ORDER BY ProductID
  15. 15.  Action Queries  Execute queries that alter the data in the database‟s tables.  There are three types of actions you can perform against a database: 1. Insertions of new rows (INSERT) 2. Deletions of existing rows (DELETE) 3. Updates (edits) of existing rows (UPDATE)  Deleting Rows The DELETE statement deletes one or more rows from a table, and its syntax is: DELETE table_name WHERE criteria “DELETE Orders WHERE OrderDate < „1/1/1998‟ ”
  16. 16.  Inserting New Rows The syntax of the INSERT statement is: INSERT table_name (column_names) VALUES (values) column_names and values are comma-separated lists of columns and their respective values. “INSERT Customers (CustomerID, CompanyName) VALUES („FRYOG‟, „Fruit & Yogurt‟)” Or “INSERT INTO SelectedProducts SELECT * FROM Products WHERE CategoryID = 4”
  17. 17.  Editing Existing Rows The UPDATE statement edits a row‟s fields, and its syntax is UPDATE table_name SET field1 = value1, field2 = value2, … WHERE criteria “UPDATE Customers SET Country=‟United Kingdom‟ WHERE Country = „UK‟ “
  19. 19. Client/server architecture
  20. 20. Stored Procedures  Stored procedures are short programs that are executed on the server and perform very specific tasks.  Any action you perform against the database frequently should be coded as a stored procedure, so that you can call it from within any application or from different parts of the same application.  Benefit:  Stored procedures isolate programmers from the database and minimize the risk of impairing the database‟s integrity.  You don‟t risk implementing the same operation in two different ways.  Using stored procedures is that they‟re compiled by SQL Server and they‟re executed faster.  Stored procedures contain traditional programming statements that allow you to validate arguments, use default argument values, and so on.  The language you use to write stored procedure is called T-SQL, and it‟s a superset of SQL.
  21. 21. ALTER PROCEDURE dbo.SalesByCategory @CategoryName nvarchar(15), @OrdYear nvarchar(4) = „1998‟ AS IF @OrdYear != „1996‟ AND @OrdYear != „1997‟ AND @OrdYear != „1998‟ BEGIN SELECT @OrdYear = „1998‟ END SELECT ProductName, TotalPurchase = ROUND(SUM(CONVERT(decimal(14,2), OD.Quantity * (1-OD.Discount) * OD.UnitPrice)), 0) FROM [Order Details] OD, Orders O, Products P, Categories C WHERE OD.OrderID = O.OrderID AND OD.ProductID = P.ProductID AND P.CategoryID = C.CategoryID AND C.CategoryName = @CategoryName AND SUBSTRING(CONVERT(nvarchar(22), O.OrderDate, 111), 1, 4) = @OrdYear GROUP BY ProductName ORDER BY ProductName