‫وادارتها‬ ‫البيانات‬ ‫قاعدة‬
 Data Type:
 Char (n): ‫مسبقا‬ ‫الطول‬ ‫محددة‬ ‫رمزية‬ ‫سلسلة‬–255‫حرف‬
 Varchar2 (n): ‫طولها‬ ‫يحدد‬ ‫الي‬ ‫هو‬ ‫فيها‬ ‫النص‬ ‫طول‬ ‫رمزية‬ ‫سلسلة‬–2000‫حرف‬
 Number(n,m):
 m: ‫للرقم‬ ‫االجمالي‬ ‫الطول‬.
 n: ‫الكسور‬ ‫طول‬
 Ex: 102.52 = Number(6,2).
 Date: ‫تاريخ‬/‫يوم‬/‫وقت‬/‫شهر‬..
‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬
Data Definition Language (DDL)
Command
AbdulRahman M.Baraka
 Tables:
 Create table tablename (Column_Name type(size) [null/notnull])
 Create table Dep(DNo number(3) not null, Dname varchar2(12));
 DESC table_name (describe the table).
 Alter table tablename Add (NewColumn_Name type)
 Alter table Dep Add (DCom number(3.2));
 Alter table tablename Modify (Column_Name type(New length))
 Alter table Dep Add (DCom number(6.2));
 Alter table tablename Rename OldColumn_Name NewColumn_Name;
 Alter table Dep Rename (DCom Com)
 Drop table tablename;
 Drop table Dep;
‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬
Data Definition Language (DDL)
Command
AbdulRahman M.Baraka
 Keys:
 Primary key:
 Create table Emp(ENo number(3) Primary Key);
 Create table Emp(ENo number(3), Ename varchar2(12),
Constraint Emp_PK primary key(ENo);
 Alter table Emp Add Constraint Emp_PK primary key (ENo);
 Foreign key:
 Create table Emp(ENo number(3), DepNo number(3),
Constraint Emp_FK foreign key(DepNo) references Dept(DepNo);
 Alter table Emp Add Constraint Emp_FK foreign key (DepNo)
references Dept(DepNo);
‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬
Data Definition Language (DDL)
Command
AbdulRahman M.Baraka
 Check Constraints:
 Create table Emp(ENo number(3) Primary Key, Age number(2)
CHECK (age between 18 to 70));
 Create table Emp(ENo number(3) Primary Key, Marital_Status
varchar2(1) default ‘s’ CHECK (Marital_status in (‘s’, ‘m’, ‘d’, ‘w’));
 Alter table Emp Add Constraint Emp_id Unique (EID);
‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬
Data Definition Language (DDL)
Command
AbdulRahman M.Baraka
 Indexes:
 Create index index_name On table_name(column_name)
 Create index std_name_Indx On student(std_name);
 Views:
 Create view view_name AS select statements.
 Create view emp_EA AS select * from emp where dep_no=10;
‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬
Data Definition Language (DDL)
Command
AbdulRahman M.Baraka
 Insert:
 Insert into table_name ( column1, column2 …) Values (value1,…);
 Insert into student( st_no,st_name) Values (501,’Ali’);
 Update:
 Update table_name Set column_name = new_value Where Condition;
 Update student Set st_age=22 Where st_no=501;
 Delete:
 Delete From table_name Where Condition;
 Delete From student Where st_no=501;
‫البيانات‬ ‫معالجة‬ ‫لغة‬ ‫أوامر‬
Data Manipulation Language (DML)
Command
AbdulRahman M.Baraka
 Select Statement:
 SELECT {DISTINCT} Columns
 FROM Table_name
 WHERE Conditions
 {ORDER BY [DESC/ASC]}
 --------------------------------------
 Select * FROM Student
 SELECT Sname FROM Student
 SELECT SID,Sname FROM Student.
 SELECT Sname FROM Student WHERE Age<20
‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL)
AbdulRahman M.Baraka
 Functions of Select Statement:
 Count:
 SELECT COUNT(*) FROM Student WHERE St_Avg>80;
 Avg:
 SELECT COUNT(*), AVG(Sage) FROM Student WHERE St_Avg>80;
 SUM:
 SELECT SUM(E_Salary) FROM Emp WHERE E_Dep=5 ;
 Max, Min:
 SELECT MAX(E_Salary),MIN(E_Salary) FROM Emp WHERE E_Dep=5 ;
 Aliases:
 SELECT Ename EmployeeName FROM Emp;
‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL)
AbdulRahman M.Baraka
 Parameters:
 Like:
 SELECT Sname FROM Student WHERE Sname like’A%’;
 Between:
 SELECT Ename FROM Emp WHERE ESal BETWEEN 300 AND 500;
 In:
 SELECT Ename FROM Emp WHERE EDep IN (12,15);
 Null:
 SELECT Ename FROM Emp WHERE Tel IS NULL;
‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL)
AbdulRahman M.Baraka
 Security:
 Create/Drop user:
 Create user user_name identified by password.
 Create user guest1 identified by free;
 Grant connect, resource to user_name.
 Grant connect, resource to guest1;
 Permissions:
 Grant < Select/Insert/Delete/Update> ON <table> TO <users>.
 Grant select ON Employee TO Ali.
 Revoke < Select/Insert/Delete/Update> ON <table> TO <users>.
 Revoke insert ON Employee TO Mona.
‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL)
AbdulRahman M.Baraka
 Rollback:
 Insert into student Values (501,’Reem’,7,20);
 ROLLBACK;
‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL)
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
Student
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
501 Reem 7 20
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
501 Reem 7 20
Student Student
AbdulRahman M.Baraka
 Rollback:
 Insert into student Values (501,’Reem’,7,20);
 COMMIT;
 ROLLBACK;
‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL)
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
Student
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
501 Reem 7 20
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
501 Reem 7 20
Student Student
SID Sname Rate Age
0102 Ali 8 18
0106 Khalid 3 22
0107 Mona 2 23
501 Reem 7 20
AbdulRahman M.Baraka

الوحدة التاسعة - قاعدة البيانات وادارتها

  • 1.
  • 2.
     Data Type: Char (n): ‫مسبقا‬ ‫الطول‬ ‫محددة‬ ‫رمزية‬ ‫سلسلة‬–255‫حرف‬  Varchar2 (n): ‫طولها‬ ‫يحدد‬ ‫الي‬ ‫هو‬ ‫فيها‬ ‫النص‬ ‫طول‬ ‫رمزية‬ ‫سلسلة‬–2000‫حرف‬  Number(n,m):  m: ‫للرقم‬ ‫االجمالي‬ ‫الطول‬.  n: ‫الكسور‬ ‫طول‬  Ex: 102.52 = Number(6,2).  Date: ‫تاريخ‬/‫يوم‬/‫وقت‬/‫شهر‬.. ‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬ Data Definition Language (DDL) Command AbdulRahman M.Baraka
  • 3.
     Tables:  Createtable tablename (Column_Name type(size) [null/notnull])  Create table Dep(DNo number(3) not null, Dname varchar2(12));  DESC table_name (describe the table).  Alter table tablename Add (NewColumn_Name type)  Alter table Dep Add (DCom number(3.2));  Alter table tablename Modify (Column_Name type(New length))  Alter table Dep Add (DCom number(6.2));  Alter table tablename Rename OldColumn_Name NewColumn_Name;  Alter table Dep Rename (DCom Com)  Drop table tablename;  Drop table Dep; ‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬ Data Definition Language (DDL) Command AbdulRahman M.Baraka
  • 4.
     Keys:  Primarykey:  Create table Emp(ENo number(3) Primary Key);  Create table Emp(ENo number(3), Ename varchar2(12), Constraint Emp_PK primary key(ENo);  Alter table Emp Add Constraint Emp_PK primary key (ENo);  Foreign key:  Create table Emp(ENo number(3), DepNo number(3), Constraint Emp_FK foreign key(DepNo) references Dept(DepNo);  Alter table Emp Add Constraint Emp_FK foreign key (DepNo) references Dept(DepNo); ‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬ Data Definition Language (DDL) Command AbdulRahman M.Baraka
  • 5.
     Check Constraints: Create table Emp(ENo number(3) Primary Key, Age number(2) CHECK (age between 18 to 70));  Create table Emp(ENo number(3) Primary Key, Marital_Status varchar2(1) default ‘s’ CHECK (Marital_status in (‘s’, ‘m’, ‘d’, ‘w’));  Alter table Emp Add Constraint Emp_id Unique (EID); ‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬ Data Definition Language (DDL) Command AbdulRahman M.Baraka
  • 6.
     Indexes:  Createindex index_name On table_name(column_name)  Create index std_name_Indx On student(std_name);  Views:  Create view view_name AS select statements.  Create view emp_EA AS select * from emp where dep_no=10; ‫البيانات‬ ‫وتعريف‬ ‫وصف‬ ‫لغة‬ ‫أوامر‬ Data Definition Language (DDL) Command AbdulRahman M.Baraka
  • 7.
     Insert:  Insertinto table_name ( column1, column2 …) Values (value1,…);  Insert into student( st_no,st_name) Values (501,’Ali’);  Update:  Update table_name Set column_name = new_value Where Condition;  Update student Set st_age=22 Where st_no=501;  Delete:  Delete From table_name Where Condition;  Delete From student Where st_no=501; ‫البيانات‬ ‫معالجة‬ ‫لغة‬ ‫أوامر‬ Data Manipulation Language (DML) Command AbdulRahman M.Baraka
  • 8.
     Select Statement: SELECT {DISTINCT} Columns  FROM Table_name  WHERE Conditions  {ORDER BY [DESC/ASC]}  --------------------------------------  Select * FROM Student  SELECT Sname FROM Student  SELECT SID,Sname FROM Student.  SELECT Sname FROM Student WHERE Age<20 ‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL) AbdulRahman M.Baraka
  • 9.
     Functions ofSelect Statement:  Count:  SELECT COUNT(*) FROM Student WHERE St_Avg>80;  Avg:  SELECT COUNT(*), AVG(Sage) FROM Student WHERE St_Avg>80;  SUM:  SELECT SUM(E_Salary) FROM Emp WHERE E_Dep=5 ;  Max, Min:  SELECT MAX(E_Salary),MIN(E_Salary) FROM Emp WHERE E_Dep=5 ;  Aliases:  SELECT Ename EmployeeName FROM Emp; ‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL) AbdulRahman M.Baraka
  • 10.
     Parameters:  Like: SELECT Sname FROM Student WHERE Sname like’A%’;  Between:  SELECT Ename FROM Emp WHERE ESal BETWEEN 300 AND 500;  In:  SELECT Ename FROM Emp WHERE EDep IN (12,15);  Null:  SELECT Ename FROM Emp WHERE Tel IS NULL; ‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL) AbdulRahman M.Baraka
  • 11.
     Security:  Create/Dropuser:  Create user user_name identified by password.  Create user guest1 identified by free;  Grant connect, resource to user_name.  Grant connect, resource to guest1;  Permissions:  Grant < Select/Insert/Delete/Update> ON <table> TO <users>.  Grant select ON Employee TO Ali.  Revoke < Select/Insert/Delete/Update> ON <table> TO <users>.  Revoke insert ON Employee TO Mona. ‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL) AbdulRahman M.Baraka
  • 12.
     Rollback:  Insertinto student Values (501,’Reem’,7,20);  ROLLBACK; ‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL) SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 Student SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 501 Reem 7 20 SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 501 Reem 7 20 Student Student AbdulRahman M.Baraka
  • 13.
     Rollback:  Insertinto student Values (501,’Reem’,7,20);  COMMIT;  ROLLBACK; ‫البنيوي‬ ‫التساؤل‬ ‫للغة‬ ‫األساسية‬ ‫البنية‬(SQL) SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 Student SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 501 Reem 7 20 SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 501 Reem 7 20 Student Student SID Sname Rate Age 0102 Ali 8 18 0106 Khalid 3 22 0107 Mona 2 23 501 Reem 7 20 AbdulRahman M.Baraka