0% found this document useful (0 votes)
29 views4 pages

(SQL2) عملي 1

يقدم المستند دليلا عمليا على تكوين واستخدام قواعد البيانات المتقدمة. يتضمن تعليمات حول إنشاء جداول وإضافة وتعديل وحذف بيانات واستخدام المفاتيح الأجنبية والاستعلامات.

Uploaded by

EM EL-sanosi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views4 pages

(SQL2) عملي 1

يقدم المستند دليلا عمليا على تكوين واستخدام قواعد البيانات المتقدمة. يتضمن تعليمات حول إنشاء جداول وإضافة وتعديل وحذف بيانات واستخدام المفاتيح الأجنبية والاستعلامات.

Uploaded by

EM EL-sanosi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

‫قواعد بيانات متقدمة‬

2021‫خريف‬
‫أ عائشة االسطى‬

Lab 1

dbdmo ‫تكوين قاعدة بيانات باسم‬ •


create database dbdmo
dbdmo ‫ تحت قاعدة البيانات‬categories ‫تكوين جدول جديد باسم‬ •

CREATE TABLE categories (

cat_id int NOT NULL PRIMARY KEY ,

cat_name varchar(255) NOT NULL ,

cat_description text

categories ‫إضافة بيانات للجدول‬ •


INSERT INTO categories VALUES
(1,'BMW', 'Car ...') ,
(2,'Lemon', 'Food ...') ,
(3,'Dell', 'Computer ...') ;
‫عرض البيانات بعد اإلضافة‬

select*from categories

vendors ‫تكوين جدول جديد باسم‬ •


CREATE TABLE dbdmo..vendors )
vdr_id int NOT Null ,
vdr_name varchar(255) ,
city varchar(30) default 'Tripoli'
)
‫تعديل الجدول السابق بإضافة مفتاح رئيسي للجدول‬

ALTER TABLE dbdmo..vendors


ADD constraint prk PRIMARY KEY(vdr_id);

'Zentan' ‫ واجعل القيمة االفتراضية‬city ‫تعديل خصائص الحقل‬


ALTER TABLE vendors
ALTER COLUMN city varchar(30) default 'Zentan'

‫إضافة البيانات للجدول‬ •

1
‫قواعد بيانات متقدمة‬
2021‫خريف‬
‫أ عائشة االسطى‬
INSERT INTO vendors VALUES

(1,'Ali','sert') ,

(2,'ahmed','misrata'),

(3,'mona',default)

products ‫تكوين جدول جديد باسم‬ •


CREATE TABLE products)
prd_id int NOT NULL identity(1,1) primary key,
prd_name varchar(35) NOT NULL ,
prd_price decimal(5,2) default 0 ,
cat_id int NOT NULL ,
vdr_id int NOT NULL ,

CONSTRAINT pr_fk1
FOREIGN KEY (cat_id) REFERENCES categories (cat_id(
ON DELETE CASCADE ON UPDATE CASCADE ,

CONSTRAINT pr_fk2
FOREIGN KEY (vdr_id) REFERENCES vendors (vdr_id(
ON DELETE NO ACTION ON UPDATE CASCADE
)
‫إضافة بيانات للجدول‬
INSERT INTO products (VALUES
('BMW320',500, 1, 1),
('BMW512', 750, 1, 2),
('Orange', 32,2, 3);

‫تطبيق عمليات الحذف والتعديل على الرقم التلقائي‬ •


3 ‫حذف المنتج رقم‬
delete from products where prd_id=3;
‫إضافة سجل جديد‬
INSERT INTO products VALUES
('Apple', 25,2,1);
4 ‫قم بعرض البيانات بعد االضافة ستالحظ ان رقم المنتج الجديد سيكون‬

2
‫قواعد بيانات متقدمة‬
2021‫خريف‬
‫أ عائشة االسطى‬

5 ‫ لسعر المنتج الذي رقمه‬60 ‫قم بإضافة‬

update dbdmo.. products set prd_price= prd_price+60 where prd_id=5;


‫إضافة سجلين جديدين‬
INSERT INTO products VALUES
('hp', 700,3,3), ('grape', 10,2,3) ;
‫ وتتبع ماذا يحدث في جدول‬categories ‫تطبيق تكاملية البيانات على الجداول األساسية‬ •
.Products
‫ والحظ ماذا يحدث في جدول‬10 ‫ إلى‬2 ‫ من‬categories ‫ قم بتعديل رقم الصنف في جدول‬.1
products
update categories set cat_id=10 where cat_id=2 ;

‫ لوجود القيد‬products ‫ وجدول االبن‬categories ‫نالحظ تعديل رقم الصنف في جدول االب‬
On update cascade

products ‫ والحظ ماذا يحدث في جدول‬categories ‫ من جدول‬3 ‫ حذف رقم الصنف‬.2


delete from categories where cat_id=3;
‫ لوجود القيد‬products ‫ وجدول االبن‬categories ‫نالحظ حذف رقم الصنف من جدول االب‬
On Delete cascade

. ‫ والحظ ماذا يحدث‬vendors ‫ من جدول‬10 ‫ حذف رقم البائع‬.3


delete from vendors where vdr_id=10;
On delete NO action ‫نالحظ أنه عملية الحذف لم تحدث لوجود القيد‬

products ‫ و‬categories ‫حذف المفتاح االجنبي الذي يربط بين جدول‬ •

alter table dbdmo..products drop constraint pr_fk1 ;

categories ‫ بنفس تركيبية جدول‬test ‫إنشاء جدول جديد باسم‬ •


• select * into dbdmo..test from dbdmo.. categories

select *from dbdmo..test

3
‫قواعد بيانات متقدمة‬
‫خريف‪2021‬‬
‫أ عائشة االسطى‬
‫سيتم تكوين جدول بنفس خصائص وبيانات الجدول(‪)categories‬‬ ‫•‬

‫لنسخ جميع بيانات الجدول ‪ categories‬إلى الجدول ‪ test‬نستخدم االمر‬ ‫•‬


‫; ) ‪insert into test (select * from categories‬‬

‫‪r‬أما لنسخ سجل معين من الجدول ‪ categories‬إلى الجدول ‪ test‬نستخدم االمر‬ ‫•‬
‫; ) ‪insert into test (select * from categories where cat_id=1‬‬

‫‪4‬‬

You might also like