Sunteți pe pagina 1din 30

1 DBMS & SQL queries

DBMS & SQL Queries


Session -10 Submitted by:
Name: Prabhat Kumar Class: BCA IInd Class Roll no. 06

2009

Submitted to:
Kanika Mahajan Concerned Lect. in DBMS Ashoka college of Computer Education
Ashoka College of Computer Education |

2 DBMS & SQL queries

Certificate
This is certified that the practical file belongs to Prabhat Kumar, Class roll no. 06 and Examination Roll noof session 2009-10 and has completed all the practical in the college computer lab under our guidance and his behavior in the college is good.
Ashoka College of Computer Education |

3 DBMS & SQL queries

Teacher Incharge Principal

Index

Ashoka College of Computer Education |

4 DBMS & SQL queries

S. no.
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.

Name of practical
Database, DBMS definition Introduction to SQL Components of SQL, Data types SQL Queries create, insertion Create a table Describe the table Insert the values To view the table Sorting the data To rename the table Delete a particular row Lower case Upper case Drop the table Maximum Minimum Average Like Between Primary key Unique key Count Sum Alter Update

Remarks

Ashoka College of Computer Education |

5 DBMS & SQL queries

Database
A database is an organized collection of facts. In other words, we can say that it is a collection of information arranged and presented to serve an assigned purpose. An example of a database is a dictionary

Database Management System


Database management system, or DBMS, is a computer software program that is designed as the means of managing all databases that are currently installed on a system hard drive or network. Different types of database management systems exist, with some of them designed for the oversight and proper control of databases that are configured for specific purposes. Here are
Ashoka College of Computer Education |

6 DBMS & SQL queries

some examples of the various incarnations of DBMS technology that are currently in use, and some of the basic elements that are part of DBMS software applications. As the tool that is employed in the broad practice of managing databases, the DBMS is marketed in many forms. Some of the more popular examples of DBMS solutions include Microsoft Access, FileMaker, DB2, and Oracle. All these products provide for the creation of a series of rights or privileges that can be associated with a specific user. This means that it is possible to designate one or more database administrators who may control each function, as well as provide other users with various levels of administration rights. This flexibility makes the task of using DBMS methods to oversee a system something that can be centrally controlled, or allocated to several different people.

Introduction to Structured Query Language (SQL)


Structured query language is a language that provides an interface to relational database systems. SQL was developed by IBM in the 1970s for use in system R, and is a de facto standard, as well as an ISO and ANSI standard. SQL is often pronounced SEQUEL. SQL has been a command language for communication with the oracle 9i server from any tool or application. Oracle SQL contains many extensions. When an SQL statement is entered, it is stored in a part of memory called the SQL buffer and remains there until a new SQL statement is entered.

Ashoka College of Computer Education |

7 DBMS & SQL queries

Features of Structured query language (SQL)


SQL can be used by a range of users, including those with little or no programming experience.
It is a nonprocedural language. It reduces the amount of time required for creating and

maintaining systems.
It is English like language.

Components of SQL
DDL (Data Definition Language):- It is a set of SQL commands
used to create, modify and delete database structures but not data. They are normally used by the DBA not by user to a limited extent, a database designer or application developer. These statements are immediate i.e. they are not susceptible to ROLLBACK commands. It should also be noted that if several DML statements for example UPDATES are executed then issuing any DDL command would COMMIT all the updates as every DDL command implicitly issues a COMMIT command to the database. Anybody using DDL must have the CREATE object privilege and a table space area in which to create objects. For example: - CREATE, ALTER, DROP, TRUNCATE, COMMENT etc.
2)

1)

DML (Data Manipulation Language):- It is the area of SQL


that allows changing data within the database. Examples:-INSERT, UPDATE, DELETE etc.

Ashoka College of Computer Education |

8 DBMS & SQL queries 3)

DCL (Data Control Language):- It is the component of SQL


statement that control access to data and to the database. Occasionally DCL statements are grouped with DML statements. Examples: - COMMIT, SAVEPOINT, ROLLBACK etc.

4)

DQL (Data Query Language):- It is the component of SQL


statement that allows getting data from the database and imposing ordering upon it. It includes the SELECT statement. This command is the heart of SQL. It allows getting the data out of the database perform operations with it. When a SELECT is fired against a table or tables the results is compiled into a further temporary table, which is displayed or perhaps received by the program i.e. a front-end. Examples: - SELECT retrieve data from the database.

Oracle data types


Data types come in several forms and sizes, allowing the programmer to create tables suited to the scope of the project. The decisions made in choosing proper data types greatly influence the performance of a database. The information in the database is maintained in the form of tables and each table consists of rows and columns, which store data and therefore this data must have some data type i.e. the type of data, which is stored in the table. The different types of data types in Oracle are:

CHAR VARCHAR (size) or VARChAR2 (size) NUMBER DATE LONG.

CHAR: - This data types is used to store character strings

values of fixed length. The size in brackets determines the number of characters the cell can hold. The maximum number of characters (i.e. the size) this data type can hold is 255
Ashoka College of Computer Education |

9 DBMS & SQL queries

characters. The data held is right- padded with spaces to whatever length specified.

VARCHAR or VARCHAR2:- This data type is used to store

variable length alphanumeric data. It is a more flexible form of the CHAR data type. The maximum this data type can hold up to 4000 characters. One difference between this data type and char data type is oracle compares varchar values using non padded comparison semantics i.e. the inserted values will not be padded with spaces. VARCHAR can hold 1 to 255 characters. Varchar is usually a wiser choice than char due to its variable length format characteristics but keep in mind that char is much faster than varchar sometimes up to 50%.
NUMBER: - The number data type is used to store numbers

(fixed or floating point).The precision (P) determines the length of the data while(s), the scale, determines the number of places after the decimal. The NUMBER data type that is used to store number data can be specified either to store integers or decimals with the addition of a parenthetical precision indicator. If we do not use then the default value is 0 and if we dont use precision then by default value stored can be of 38 digits.

DATE:- The DATE data type stores date and time information. Although date and time information can be represented in both character and number data types, the DATE data type has special associated properties. For each DATE value, Oracle stores the following information: century, year, month, date, hour, minute, and second.

LONG:- LONG columns store variable-length character strings containing up to 2 gigabytes, or 231-1 bytes. LONG columns have many of the characteristics of VARCHAR2 columns. You can use LONG columns to store long text strings. The length of LONG values may be limited by the memory available on your computer
Ashoka College of Computer Education |

10 DBMS & SQL queries The use of LONG values is subject to some restrictions:

A table can contain only one LONG column. You cannot create an object type with a LONG attribute. LONG columns cannot appear in WHERE clauses or in integrity constraints (except that they can appear in NULL and NOT NULL constraints). LONG columns cannot be indexed. A stored function cannot return a LONG value. You can declare a variable or argument of a PL/SQL program unit using the LONG datatype. However, you cannot then call the program unit from SQL. Within a single SQL statement, all LONG columns, updated tables, and locked tables must be located on the same database.

QUERY
A query is a concise memo submitted to an editor by a writer seeking publication. It is basically an in query to see whether the writers work is of interest to a particular publication. A query briefly details a writers experience and knowledge of the subject matter, and gives a summary or synopsis of the article the writer hopes to have published. An approximate word count for the proposed article or feature is also generally included.
1) THE CREATE TABLE COMMAND :- The CREATE TABLE command

defines each column of the table uniquely. Each column has a minimum of three attributes, a name, data type and size (i.e. column width). Syntax: - CREATE TABLE<table name>(<column Name 1> <data type>(<size>), <columnname2> <data type>(<size>)); Example:
SQL> create table student(name varchar(23),roll_no number(12),class varchar2(12),address varchar(23)); Table created. 2) THE INSERTION OF DATA INTO TABLE: - Once a table is created, the

most natural thing to do is load this with data to be manipulated later i.e. to insert the rows in a table. The data in a table can be inserted in three ways. Syntax:-INSERT INTO <table name >(<columnname1>,<columnname2>)
VALUES(<expression1>,<expression 2>); Ashoka College of Computer Education |

11 DBMS & SQL queries OR INSERT INTO <tablename>VALUES(<expression1 >,<expression2> ); OR INSERT INTO <tablename> VALUES(<&columnname1> ,<&columnname2>); Example:SQL> insert intostudent(name,roll_no,class,address)values('Prabhat',06,'BCA',Hat limore'); 1 row created. Or SQL> insert into student values('kishore',01,'BCA','Nagri'); 1 row created. Or SQL> insert into student values('&name','&roll_no','&class','&address'); Enter value for name: Amarjeet Enter value for roll_no: 30 Enter value for class: BCA Enter value for address: airwan old 1: insert into student values('&name','&roll_no','&class','&address') new 1: chack') insert into studen values('Atinder','04','BCA','Sawan

1 row created.

FOR inserting more values we use / slash after SQL> as below but after above syntax used: SQL> / Enter value for name: Vinay Ashoka College of Computer Education |

12 DBMS & SQL queries Enter value for roll_no: 08 Enter value for class: BCA Enter value for address: Barnoti old 1: insert into student values('&name','&roll_no','&class','&address') new 1: insert into studen values('Vinay','08','BCA','Barnoti')

1 row created. 3) FOR VIEWING DATA IN THE TABLE: - Once data has been inserted

into a table, the next most logical operation would be to view what has been inserted. The SELECT SQL verb is used to achieve this. The SELECT command is used to retrieve rows selected from one or more tables.
Syntax: - SELECT * FROM <table name>; If we want to see all the tables that are already exist in the database .we use SELECT * FROM TAB; Example:SQL> select * from student;

NAME

ROLL_NO CLASS

ADDRESS

----------------------- ---------- ------------ ---------Prabhat Kishore Amarjeet Vinay 06 BCA 01 BCA 30 BCA 08 BCA Hatlimore Nagri airwan barnoti

1 row created.

When we use the command SELECT* FRM TAB; the output is displayed as:Ashoka College of Computer Education |

13 DBMS & SQL queries SQL> select * from tab;

TNAME

TABTYPE

CLUSTERID

------------------------------ ------- ---------ABC ANKU BONUS DEPARTMENTS DEPT EMP EMPLOYEE EMPLOYEES STUDENT TABLE TABLE TABLE TABLE TABLE TABLE TABLE TABLE TABLE

9 rows selected.

4) ELIMINATION OF DUPLICATE ROWS :- A table could hold duplicate

rows in unique rows the distinct clause can be used.

such a case, only

Syntax: - SELECT DISTINCT <column name 1>,<column name2> FROM <table name> ; This syntax will give the unique values of column 1 and column 2. Example:SQL> select distinct name,roll_no from student;

NAME --------------------

ROLL_NO ----------

Ashoka College of Computer Education |

14 DBMS & SQL queries Prabhat 06

Syntax:- SELECT DISTINCT * from <tablename>; Example:SQL> Select DISTINCT * from student;

NAME -----------------Prabhat

ROLL_NO CLASS

ADDRESS

-------- ------------ ---------06 BCA Hatlimore

5) SORTING DATA IN A TABLE: - Oracle allows data from a table to be

viewed in sorted order. The rows retrieve from the table will be sorted either in ascending or descending order depending on the condition specified in the select sentence.
Syntax: - SELECT * FROM <tablename>ORDER BY<column name1>,<column name 2> <[sort order]>; Example:SQL> SELECT * FROM STUDENT ORDER BY name;

NAME

ROLL_NO CLASS

ADDRESS --------------airwan sawanchak jagatpur Nagri Hatlimore barnoti

----------------------- ---------- -----Amarjeet Atinder Dushyant Kishore Prabhat Vinay 30 04 34 01 06 08 BCA BCA BCA BCA BCA BCA

Ashoka College of Computer Education |

15 DBMS & SQL queries 6 rows selected

SQL> SELECT*FROM STUDENT ORDER BY name desc;

NAME

ROLL_NO CLASS

ADDRESS

----------------------- ---------- ------------ --------------

Vinay Prabhat Kishore Dushyant Atinder Amarjeet

08 06 01 34 04 30

BCA BCA BCA BCA BCA BCA

barnoti Hatlimore Nagri jagatpur sawanchak airwan

6 rows selected.

SQL> SELECT * FROM STUDEN ORDER BY roll_no desc;

NAME

ROLL_NO CLASS

ADDRESS

----------------------- ---------- ------------ ---------------

Kishore Atinder Prabhat

01 04 06

BCA BCA BCA

Nagri sawanchak Hatlimore

Ashoka College of Computer Education |

16 DBMS & SQL queries Vinay Amarjeet Dushyant 08 30 34 BCA BCA BCA barnoti airwan jagatpur

6 rows selected.

6) MODIFYING THE STRUCTURE OF TABLES: - The structure of a table

can be modified by using the ALTER TABLE command. ALTER TABLE allows changing the structure of an existing table. With ALTER TABLE it is possible to add or delete columns, create or destroy indexes, changes the data type of existing columns, or rename columns or the table itself.
(a) ADDING NEW COLUMNS Syntax: - ALTER TABLE <Table name> ADD(<New column Name> <data type> (<size>),<new column name><data type>(<size>).); Example:-

(b) DROPPING A COLUMN FROM A TABLE Syntax: - ALTER TABLE<TABLE NAME>DROP COLUMN<COLUMNNAME>; Example:- alter table prabhu drop column name;

(c) MODIFYING EXISTING COLUMNS Syntax: - ALTER TABLE<Table name>MODIFY(<COLUMN NAME> <NEW DATATYPE>(<NEW SIZE>)); Example:- alter table prabhat modify(name varchar(22));

Ashoka College of Computer Education |

17 DBMS & SQL queries 7) RENAMING TABLES: - Oracle allows renaming of tables. The rename

operation is done atomically, which means that no other thread can access any of the tables while the rename process is running.
Syntax: - RENAME <Table name> to <New Tablename> Example:SQL> rename student to candidates;

Table renamed.

8) DESTROYING TABLES: DROP COMMAND: - By using the DROP TABLE statement with the table name we can destroy a specific table . Syntax: - DROP TABLE <table name>; Example:--

SQL> Drop table student; Table dropped.

TRUNCATE COMMAND:- The truncate command is much faster in comparison to delete statement but similar to the drop command as to destroy a specific table. Syntax:- TRUNCATE table <tablename> Example:-

SQL> truncate table employees; Table truncated.

Ashoka College of Computer Education |

18 DBMS & SQL queries 9) DISPLAYING THE TABLE STRUCTURE:- To display information about the columns defined in a table use the following syntax. Syntax: - DESCRIBE <table name> This command displays the columns names, the data types and the special attributes connected to the table. Example: -

SQL> describe employees;

Name

Null?

Type

---------------------------------- -------- ----------EMP_ID EMP_NAME DEPT_ID DEPT_NAME SALARY NUMBER(5) VARCHAR2(20) NUMBER(10) NAME(12) NUMBER(21)

10) UPDATING THE CONTENTS OF A TABLE: - The update command is used to change or modify data values in a table. The verb UPDATE in SQL is used to either all the rows from a table or a select set of rows from a table. UPDATING ALL ROWS:- The update statement updates columns in the existing tables rows with new values .The SET clause indicates which column data should be modifying and the new values that they should hold. The WHERE CLAUSE specifies which rows should be updated. Otherwise all table rows are updated. Syntax: - UPDATE < Table name> SET <column name1>=<expression1> , <column name2>=<expression2>; Ashoka College of Computer Education |

19 DBMS & SQL queries

UPDATES RECORDS CONDITIONALLY:Syntax :- UPDATE <table name> SET <columnname1> = <expression1>, <columnname2> = <expression2> WHERE <condition>;

CONSTRAINTS 11) NOT NULL:- The NOT NULL column constraint ensures that a table column cannot be left empty. When a column is defined as not null, then that column becomes a mandatory column. It implies that a value must be entered into the column if the record is to be accepted for storage in the table. Syntax:- <Column Name> <data type>(<size>) NOT NULL ; Example:-name varchar(22) not null;

THE PRIMARY KEY CONSTRAINT: - A primary is one or more column in a table used to identify each row in a table. None of the fields that are part of the primary key can contain a null value. A table can have only one primary Syntax:- <Column name> <data type>(<size>) PRIMARY KEY Example:-

SQL> create table student name varchar2(12), roll_no number(12) primary key, class varchar2(21) NOT NULL, dob date); or

Ashoka College of Computer Education |

20 DBMS & SQL queries SQL> create table student(name varchar2(12), roll_no number(12) constraint pk_roll primary key ,class varchar2(21) not null, dob date);

12) THE FOREIGN KEY (SELF REFERENCE) CONSTRAINT:-Foreign key represent relatio nships between tables. A foreign key is a column (or a group of columns) whose values are derived from the primary key or unique key of some other table. The table in which the foreign key is defined is called a FOREIGN TABLE or DETAIL TABLE. The table that defines the primary or unique key and is referenced by the foreign key is called the PRIMARY KEY or MASTER KEY. Syntax: - Foreign key (<column name>) REFERENCES <table name>(column name); Example:-

SQL> create table department(dept_no number(10) primary key,dept_name varchar2(25),dept_loc char(5,e_no number(11), foreign key(e_no) references employee (e_no);

Table created

SQL> describe department; Name -------------------------DEPT_NO DEPT_NAME DEPT_LOC E_NO Null? -------NOT NULL Type ------NUMBER(10) VARCHAR2(25) CHAR(5) NUMBER(11).

Ashoka College of Computer Education |

21 DBMS & SQL queries

13) THE UNIQUE KEY CONSTRAINT:- The unique key constraint permits multiple entries of NULL into the column. These NULL values are clubbed at the top of the column in the order in which they were entered into the table. This is the essential difference between the primary key and the unique constraints when applied to table column(s). Key point about UNIQUE constraint: Unique key will not allow duplicate values. Unique index is created automatically. A table can have more than one unique key which is not possible in primary key.

Syntax:- CREATE TABLE Table name (<columnName1> <datatype>(<size>), <columnName2> <data type>(<size>),UNIQUE(<columnName1>, <columnName2>)); Example:-

SQL> create table student1(roll_no number(12)primary key,dob date,name varchar2(20),class varchar2(2),e_mail varchar2(20) constraint un_st unique);

Table created.

To see the description of the table.

SQL> Describe student1;

Name

Null?

Type

--------------------------------- -------- ---------Ashoka College of Computer Education |

22 DBMS & SQL queries ROLL_NO DOB NAME CLASS E_MAIL NOT NULL NUMBER(12) DATE VARCHAR2(20) VARCHAR2(20) VARCHAR2(20)

ORACLE FUNCTIONS
Oracle functions serve the purpose of manipulating data items and returning a result. Functions are the programs that take zero or more arguments and return a single value. Oracle has built a no. of functions into SQL. These functions can be called from SQL statements.

14) COUNT (expr) function: - Returns the number of rows where expression is not null. Syntax: - COUNT ([<distinct>[<all>] <expr>) Example:-

EMP_ID NAME

DEPT_ID

SALARY

--------- -------------------- ---------- ---------1 sourabh 2 sonu 3 anku 5 anku 3 panku 21 22 4 21 22 55000 55000 55000 55000 75000

SQL> select count(distinct name) from employees;

Ashoka College of Computer Education |

23 DBMS & SQL queries COUNT(DISTINCTNAME) ------------------4

SQL> select count(salary) from employees;

COUNT(SALARY) ---------5

15) COUNT (*) function: - Returns the number of rows in the table, including duplicates and those with nulls. Syntax: - COUNT(*) Example:-

SQL> select count(*) from employees;

COUNT(*) ---------5

SQL>

select count(*)"salary" from employees;

salary ---------5

Ashoka College of Computer Education |

24 DBMS & SQL queries 16) THE SUM FUNCTION: - Returns the sum of the values of n. Syntax: - SUM ([<distinct>][<all>] <expr>) Example:-

SQL> select sum (salary) from employees;

SUM(SALARY) ----------295000

17) THE MAX FUNCTION: - Returns the maximum value of expression. Syntax: - MAX([<distinct>][<all>] <expr>) Example:-

SQL> select max(salary) from employees;

MAX(SALARY) ----------75000

18) THE MIN FUNCTION: - Returns the minimum value of expression. Syntax: - MIN ([<distinct>][<all>] <expression>)

Example:SQL> select min (salary) from employees;

Ashoka College of Computer Education |

25 DBMS & SQL queries MIN(SALARY) ----------55000

19) THE AVG FUNCTION: - Returns an average value of n, ignoring null values in a column. Syntax: - AVG ([<distinct>][<all>] <n>); Example:-

SQL> select avg(salary) from employees;

AVG(SALARY) ----------59000

20) LIKE OPREATOR :- The LIKE predicate allows comparison of one string value with another string value, which is not identical. This is achieved by using wildcard characters. Two wildcard characters that are available are: % allows to match any string of any length(including zero length) _allows to match on a single character.

Example:-

SQL> select emp_id,name,dept_id,salary from employees where name like 'a%';

Ashoka College of Computer Education |

26 DBMS & SQL queries EMP_ID -----3 5 NAME ------anku anku DEPT_ID ----------4 21 SALARY --------55000 55000

NOT LIKE OPERATOR:-

Example:-

SQL>select emp_id,name,dept_id,salary from employees where name not like 'a%';

EMP_ID --------1 2 3

NAME --------------sourabh sonu panku

DEPT_ID ---------21 22 22

SALARY ---------55000 55000 75000

SQL>select emp_id,name,dept_id,salary from employees where name like '_n_u';

EMP_ID ---------3 5

NAME ---------------anku anku

DEPT_ID SALARY ---------- ---------4 21 55000 55000

Ashoka College of Computer Education |

27 DBMS & SQL queries 21) IN OPERATOR:- In case a value needs to be compared to a list of values then the IN predicate is used. The IN predicates helps reduce the need to use multiple OR conditions. Example:-

SQL> select emp_id,name,dept_id,salary from employees where dept_id in(20,22);

EMP_ID ---------2 3

NAME

DEPT_ID

SALARY ---------55000 75000

-------------------- ---------sonu panku 22 22

NOT IN OPERATOR:-

Example :SQL>select emp_id,name,dept_id,salary from employees where dept_id not in(20,22);

EMP_ID -------1 3 5

NAME -------------------sourabh anku anku

DEPT_ID ---------21 4 21

SALARY ---------55000 55000 55000

22)

BETWEEN OPERATOR:Ashoka College of Computer Education |

28 DBMS & SQL queries

SQL> select emp_id,name,dept_id,salary from employees where dept_id between 22 and 30;

EMP_ID --------2 3

NAME -------------------sonu panku

DEPT_ID ---------22 22

SALARY ---------55000 75000

SQL>select emp_id,name,dept_id,salary from employees where dept_id between 11 and 21;

EMP_ID --------1 5

NAME -------------------sourabh anku

DEPT_ID ---------21 21

SALARY ---------55000 55000

STRING FUNCTIONS

23) UPPER function :- Returns char, with all letters forced to uppercase.

Ashoka College of Computer Education |

29 DBMS & SQL queries Syntax: - UPPER(char) Example: -

SQL> select upper(name) from employees;

UPPER(NAME) -------------------SOURABH SONU ANKU ANKU PANKU

24)

LOWER function: - Returns char, with all letters in lowercase.

Syntax: - LOWER(char) Example:-

SQL> select lower(name) from employees;

LOWER(NAME) -------------------sourabh sonu anku anku

Ashoka College of Computer Education |

30 DBMS & SQL queries panku

25) INITCAP function: - Returns a string with the first letter of each word in upper case. Syntax:- INITCAP(char) Example:-

SQL> select initcap(name) from employees;

INITCAP(NAME) -------------------Sourabh Sonu Anku Anku Panku

Ashoka College of Computer Education |

S-ar putea să vă placă și