1-الطريقه الأولى اليدوية
نفتح قاعده البيانات ونحتار الجداول
blog_Tables-New-Table
ثم ندخل الاعمده ونحدد احد الاعمده على اساس يكون رئيسي PRIMARY KEY ثم نعمل حفظ سوف يضهر نافذه ندخل اسم الجدول هذه الطريق للجدول الذي لايوجد فيه مفتاح اجنبي FOREIGN KEY
نفتح قاعده البيانات ونحتار الجداول
blog_Tables-New-Table
ثم ندخل الاعمده ونحدد احد الاعمده على اساس يكون رئيسي PRIMARY KEY ثم نعمل حفظ سوف يضهر نافذه ندخل اسم الجدول هذه الطريق للجدول الذي لايوجد فيه مفتاح اجنبي FOREIGN KEY
❤1
الان سوف ننشا جدول ياخذ المفتاح الرئيسي من الجدول السابق ونجعله مفتاج اجنبي في الجدول الجديد
نفس الطريق الاولى
نفتح قاعده البيانات ونحتار الجداول جديد
blog_Tables-New-Table
ندخل الحقول ثم ناشر على الحقل الذي نريد نجعله ثانوي gender_id
ثم نختار الجدول الذي سوف يكون FOREIGN KEY ثم نعمل حفظ ونكتب اسم الجدول
نفس الطريق الاولى
نفتح قاعده البيانات ونحتار الجداول جديد
blog_Tables-New-Table
ندخل الحقول ثم ناشر على الحقل الذي نريد نجعله ثانوي gender_id
ثم نختار الجدول الذي سوف يكون FOREIGN KEY ثم نعمل حفظ ونكتب اسم الجدول
❤2👍1
الان انشاء نا جدولين
1- جدول الانواع genders
هذه فيه عمودين (id -title-)
2-والجدول الثاني المستخدمين فيه 9 اعمده فيه عمود users
فيه عمود gender_id نوعه ثانوي اي انه يرتبط مع الجدول الاول FOREIGN KEY
1- جدول الانواع genders
هذه فيه عمودين (id -title-)
2-والجدول الثاني المستخدمين فيه 9 اعمده فيه عمود users
فيه عمود gender_id نوعه ثانوي اي انه يرتبط مع الجدول الاول FOREIGN KEY
👍1
2-انشاء الجداول ومن ثم عمل تعديل على الجداول وربطها بالمفاتيح الاجنبيه والفرعيه من خلال الاوامر
طريق انشاء الجداول بالاوامر سوف تكون كا التالي
الجدول الاول
CREATE TABLE roles (
id INT IDENTITY(1,1) PRIMARY KEY,
title nvarchar(20)
);
ثم جدول المستخدمين CREATE TABLE users (
id INT IDENTITY(1,1) PRIMARY KEY,
username nvarchar(50),
password CHAR(32),
email nvarchar(255),
first_name nvarchar(100),
last_name nvarchar(100),
birthdate DATE,
phone nvarchar(20),
gender_id INT,
role_id INT
); انشاء طبيعي فقط حددنا نوع id INT IDENTITY(1,1) PRIMARY KEY في الجدولين على انه رئيسي
طريق انشاء الجداول بالاوامر سوف تكون كا التالي
الجدول الاول
CREATE TABLE roles (
id INT IDENTITY(1,1) PRIMARY KEY,
title nvarchar(20)
);
ثم جدول المستخدمين CREATE TABLE users (
id INT IDENTITY(1,1) PRIMARY KEY,
username nvarchar(50),
password CHAR(32),
email nvarchar(255),
first_name nvarchar(100),
last_name nvarchar(100),
birthdate DATE,
phone nvarchar(20),
gender_id INT,
role_id INT
); انشاء طبيعي فقط حددنا نوع id INT IDENTITY(1,1) PRIMARY KEY في الجدولين على انه رئيسي
👍2
كيف نعمل FOREIGN KEY مفتاح أجنبي بين الجدولين سوف نستخدم عمليه ALTER TABLE users اي التعديل على الجدول
-- genders و users هو بمثابة مفتاح أجنبي بين الجدولين gender_id للإشارة إلى أن العمود fk_users_genders هنا قمنا بوضع قيد إسمه
ALTER TABLE users
ADD CONSTRAINT fk_users_genders
FOREIGN KEY (gender_id) REFERENCES genders(id);
-- genders و users هو بمثابة مفتاح أجنبي بين الجدولين gender_id للإشارة إلى أن العمود fk_users_genders هنا قمنا بوضع قيد إسمه
ALTER TABLE users
ADD CONSTRAINT fk_users_genders
FOREIGN KEY (gender_id) REFERENCES genders(id);
👍1
ارجو ان نطبق كلنا الطريقتين على هذه الجدولين genders و users لكي نخلص بقيه الجداول
بعض الاعمده او الانواع قد تكون غير موجوده اذا كانت قواع البيانات مختلفه في الاصدارات طبيعي ابدا طبق فقط العمودين العمود الرئيسيه PRIMARY KEY والاسم والجدول الثاني ثلاثه اعمده الرئيسيه والاسم والمفتاح الاجنبي FOREIGN KEY
بعض الاعمده او الانواع قد تكون غير موجوده اذا كانت قواع البيانات مختلفه في الاصدارات طبيعي ابدا طبق فقط العمودين العمود الرئيسيه PRIMARY KEY والاسم والجدول الثاني ثلاثه اعمده الرئيسيه والاسم والمفتاح الاجنبي FOREIGN KEY
👍1
انشاء جدول categories الاصناف يتالف من عمودين رقم الصنف عنصر فريد PRIMARY KEY واسم الصنف او وصفه
CREATE TABLE categories (
id INT IDENTITY(1,1) PRIMARY KEY,
title nvarchar(255)
);
مافائده او عمل هذه قبل رقم المعرف IDENTITY(1,1) هذه تعمل على ادخل الرقم كل مره مختلف او حرف اذا كان النوع حروف اي تولد سله مختلف كل مره
CREATE TABLE categories (
id INT IDENTITY(1,1) PRIMARY KEY,
title nvarchar(255)
);
مافائده او عمل هذه قبل رقم المعرف IDENTITY(1,1) هذه تعمل على ادخل الرقم كل مره مختلف او حرف اذا كان النوع حروف اي تولد سله مختلف كل مره
👍1
انشا جدول لحفظ الصور يحتوي على 6 اعمده عمود رقم فريد وعمود لرابط- الملف سوى سوره او ملف وعمود للاسم وعمود لرقم المستخدم
CREATE TABLE photos (
id INT IDENTITY(1,1) PRIMARY KEY,
url nvarchar(2000),
physical_path nvarchar(255),
size_KB INT,
user_id INT
);
CREATE TABLE photos (
id INT IDENTITY(1,1) PRIMARY KEY,
url nvarchar(2000),
physical_path nvarchar(255),
size_KB INT,
user_id INT
);
👍1
قوم بعمل قيد لربط جدول الصور مع جدول المستخدمين fk_photos_users لكي نربط جدول الصور بجدول المستخدمين user_id يعتبر هذه العمود مفتاح اجنبي في جدول الصور photos ومفتاح رئيس في جدول المستخدمين users
طريق العمل
ALTER TABLE photos
ADD CONSTRAINT fk_photos_users
FOREIGN KEY (user_id) REFERENCES users(id);
طريق العمل
ALTER TABLE photos
ADD CONSTRAINT fk_photos_users
FOREIGN KEY (user_id) REFERENCES users(id);
👍1
انشاء جدول posts خاص بالمقالات اي مقال لابد ان يكون له user_id اي رقم المستخدم الذي علق
CREATE TABLE posts (
id INT IDENTITY(1,1) PRIMARY KEY,
url nvarchar(2000),
title nvarchar(255),
content nvarchar(265),
publishing_date DATE,
-- are_comments_enabled BOOLEAN,
user_id INT,
category_id INT
);
يوجد عمودين -category_id -user_id سوف يكونين مفاتيح اجنبيه لجدولين اخرين
categories ,users
CREATE TABLE posts (
id INT IDENTITY(1,1) PRIMARY KEY,
url nvarchar(2000),
title nvarchar(255),
content nvarchar(265),
publishing_date DATE,
-- are_comments_enabled BOOLEAN,
user_id INT,
category_id INT
);
يوجد عمودين -category_id -user_id سوف يكونين مفاتيح اجنبيه لجدولين اخرين
categories ,users
👍1
اذا ضهرت اخطا عند انشاء الجدول تاكد من نوع البيانات او ارسل الخطا في التعليق
👍1
ارتباطات جدول المقالات كيف نعمل القيود لكي ننشاء العلاقات يدوي بين جدول المقالات والجداول الاخرى
--1- fk_posts_users هنا قمنا بوضع قيد إسمه
users و posts هو بمثابة مفتاح أجنبي بين الجدولين user_id للإشارة إلى أن العمود
ALTER TABLE posts
ADD CONSTRAINT fk_posts_users
FOREIGN KEY (user_id) REFERENCES users(id);
-- 2—fk_posts_categories هنا قمنا بوضع قيد إسمه
—categories و posts هو بمثابة مفتاح أجنبي بين الجدولين category_id للإشارة إلى أن العمود ALTER TABLE posts
ADD CONSTRAINT fk_posts_categories
FOREIGN KEY (category_id) REFERENCES categories(id);
--1- fk_posts_users هنا قمنا بوضع قيد إسمه
users و posts هو بمثابة مفتاح أجنبي بين الجدولين user_id للإشارة إلى أن العمود
ALTER TABLE posts
ADD CONSTRAINT fk_posts_users
FOREIGN KEY (user_id) REFERENCES users(id);
-- 2—fk_posts_categories هنا قمنا بوضع قيد إسمه
—categories و posts هو بمثابة مفتاح أجنبي بين الجدولين category_id للإشارة إلى أن العمود ALTER TABLE posts
ADD CONSTRAINT fk_posts_categories
FOREIGN KEY (category_id) REFERENCES categories(id);
👍1
اذا اردنا ان نجعل عمود من الاعمده تكون قيمته فريده عند الادخال حتى ولو لم يكن عمود مفتاح رئيسي مثلا ادخال اسم المستخدم يكون فريد او ادخال مثلا في جدول المقالات رابط المقاله فريد نستخدم العباره التاليه
UNIQUE تعني انه لايمكن ان يتكرر قيمه العمود
UNIQUE تعني انه لايمكن ان يتكرر قيمه العمود
👍1
طريقه عمل الفهرس يدوي بهذه الطريقه
-- يجب أن تكون موحدة posts الموجود في الجدول url للإشارة إلى أن قيم العمود uidx_posts_url هنا قمنا بوضع قيد إسمه
CREATE UNIQUE INDEX uidx_posts_url
ON posts (url);
-- يجب أن تكون موحدة posts الموجود في الجدول url للإشارة إلى أن قيم العمود uidx_posts_url هنا قمنا بوضع قيد إسمه
CREATE UNIQUE INDEX uidx_posts_url
ON posts (url);
👍1