Insert Null Values
اذا تذكرون قبل خطوتين من سوينا Describe للجدول Departments نلاحظ آخر عمودين ال manager_id and Location_id ممكن يتقبلون قيمة Null, فإذا ردنا نضيف قيمة Null كيف رح تكون الطريقة؟
تتم أضافة قيم ال Null بطريقتين:
1- عدم كتابة الأعمدة columns الي نريد نجعل فيها قيمة Null في Insert Statement.( لاحظ الجزء A من الصورة أعلاه)
2- أن نكتب الأعمدة columns في Insert Statement و نكتب قيمتها ال Null داخل الجزء values. ( لاحظ الجزء B من الصورة أعلاه)
أذن أضافة قيم فارغة Null تكون مقبولة فقط للأعمدة بالجدول الي مامخلين عليها قيد ال Not Null او primary key.
اذا تذكرون قبل خطوتين من سوينا Describe للجدول Departments نلاحظ آخر عمودين ال manager_id and Location_id ممكن يتقبلون قيمة Null, فإذا ردنا نضيف قيمة Null كيف رح تكون الطريقة؟
تتم أضافة قيم ال Null بطريقتين:
1- عدم كتابة الأعمدة columns الي نريد نجعل فيها قيمة Null في Insert Statement.( لاحظ الجزء A من الصورة أعلاه)
2- أن نكتب الأعمدة columns في Insert Statement و نكتب قيمتها ال Null داخل الجزء values. ( لاحظ الجزء B من الصورة أعلاه)
أذن أضافة قيم فارغة Null تكون مقبولة فقط للأعمدة بالجدول الي مامخلين عليها قيد ال Not Null او primary key.
Insert Special Values
-أضافة Special values
واحدة من ال special values هي ال date...
مثلا أريد أضيف موظف جديد في جدول ال employees, واحدة من القيم الي المفروض أضيفها هي تاريخ تعيين هذا الموظف..
فمثلا ممكن أستخدم ال SysDate و هي حتجيبلي التاريخ من الحاسوب مالتي... (لاحظ جزء A من الصورة أدناه).
أو ممكن أعطي تاريخ بصيغة معينة و أستخدم ال function الخاصة بال date... (لاحظ جزء B من الصورة أدناه).
-أضافة Special values
واحدة من ال special values هي ال date...
مثلا أريد أضيف موظف جديد في جدول ال employees, واحدة من القيم الي المفروض أضيفها هي تاريخ تعيين هذا الموظف..
فمثلا ممكن أستخدم ال SysDate و هي حتجيبلي التاريخ من الحاسوب مالتي... (لاحظ جزء A من الصورة أدناه).
أو ممكن أعطي تاريخ بصيغة معينة و أستخدم ال function الخاصة بال date... (لاحظ جزء B من الصورة أدناه).
- Insert Values By using Substitution Variables
ممكن أضافة values بطريقة غير مباشرة بأستخدام ال substitution variables الي تم شرحها سابقا.
لاحظ الصورة أدناه.
ممكن أضافة values بطريقة غير مباشرة بأستخدام ال substitution variables الي تم شرحها سابقا.
لاحظ الصورة أدناه.
1.2 Insert Into Select Statement
تعلمنا سابقا كيف نضيف بيانات، و في كل مره يتم اضافة row/record واحد فقط..
الآن هنالك طريقه أخرى لإضافة البيانات للجدول تسمى Insert Into Select (تكون بأستخدام ال sub query) , بهذه الحالة البيانات تجلب من جدول آخر و تضاف للجدول الحالي..
ال syntax العام الها موضح بالصوره أدناه.
Note:
من خلال ال syntax أتضح ممكن اضيف كل البيانات من جدول ثاني أو جزء منها. لكن يجب أن ننتبه بأن الأنواع البيانية Data types للأعمدة columns من الجدول الي نجلب منه البيانات و الي نسميه source تكون مشابهه للأنواع البيانية لأعمدة columns بالجدول التي سيضاف له البيانات و الذي يسمى ب target.
تعلمنا سابقا كيف نضيف بيانات، و في كل مره يتم اضافة row/record واحد فقط..
الآن هنالك طريقه أخرى لإضافة البيانات للجدول تسمى Insert Into Select (تكون بأستخدام ال sub query) , بهذه الحالة البيانات تجلب من جدول آخر و تضاف للجدول الحالي..
ال syntax العام الها موضح بالصوره أدناه.
Note:
من خلال ال syntax أتضح ممكن اضيف كل البيانات من جدول ثاني أو جزء منها. لكن يجب أن ننتبه بأن الأنواع البيانية Data types للأعمدة columns من الجدول الي نجلب منه البيانات و الي نسميه source تكون مشابهه للأنواع البيانية لأعمدة columns بالجدول التي سيضاف له البيانات و الذي يسمى ب target.
لتطبيق ما ذكر سابقاً عدنا جدولين كما في الصورة أدناه
الأول أسمه Customers و يتكون من مجموعة من ال columns التالية:
1.CustomerID
2.CustomerName
3.ContactName
4.Address
5.City
6.PostalCode
7.Country
و الجدول الثاني أسمه Suppliers و يتكون من الأعمدة التالية:
1.SupplierID
2.SupplierName
3.ContactName
4.Address
5.City
6.PostalCode
7.Country
8.Phone
الأول أسمه Customers و يتكون من مجموعة من ال columns التالية:
1.CustomerID
2.CustomerName
3.ContactName
4.Address
5.City
6.PostalCode
7.Country
و الجدول الثاني أسمه Suppliers و يتكون من الأعمدة التالية:
1.SupplierID
2.SupplierName
3.ContactName
4.Address
5.City
6.PostalCode
7.Country
8.Phone
المثال الأول: تمليء كل أعمدة جدول ال Customers لكن هنا منكدر نستخدم طريقة ال * الي وضحت سابقا ( لأن عمود ال phone موجود بجدول ال suppliers و غير موجود بجدول ال Customers ) لذلك أستخدمنا هذه الطريقه.
المثال الثاني: أخذنا فقط بيانات لثلاث Columns من جدول ال suppliers و ضفناها لجدول ال Customers.
المثال الثالث: نفس الطريقة الثانيه لكن أستخدام ال condition (where) لأضافة المجهزين الألمان فقط.
المثال الثاني: أخذنا فقط بيانات لثلاث Columns من جدول ال suppliers و ضفناها لجدول ال Customers.
المثال الثالث: نفس الطريقة الثانيه لكن أستخدام ال condition (where) لأضافة المجهزين الألمان فقط.
2. Update Statement
ال Update statement تمكننا من التعديل على بيانات موجودة في table معين. و التعديل يكون على بيانات سجل record/row واحد أو على مجموعة من records و أيضا على عمود column واحد أو مجموعة من columns.
ال Syntax العام ل Update Statement موضح في الصورة أدناه.
ال Update statement تمكننا من التعديل على بيانات موجودة في table معين. و التعديل يكون على بيانات سجل record/row واحد أو على مجموعة من records و أيضا على عمود column واحد أو مجموعة من columns.
ال Syntax العام ل Update Statement موضح في الصورة أدناه.
مثلا نرجع لجدول ال Customers اذا نريد نغير أسم و مدينة أول customer بال table فنستخدم ال Update Statement كما في الصورة أعلاه.
Note:
طبعاً بما أنهُ نريد نغير بعض المعلومات عن الزبون الأول أذن في الشرط نستخدم الشي الي يُعرَف/يُميز الزبون على أنه زبون رقم 1 و هو ال
Primary key (CustomerID)
طبعاً في حال كتبنا في شرط ال where
CustomerName='Alfreds Futterkiste'
الي رح يصير: وين ميشوف أسم Alfreds Futterkiste بالجدول رح يغيره الى Farid Laftaa و يغير المدينة city أيضا.. لذلك الأفضل نستخدم الشي الي يميز الزبون من غيره و هو CustomerID.
Note:
طبعاً بما أنهُ نريد نغير بعض المعلومات عن الزبون الأول أذن في الشرط نستخدم الشي الي يُعرَف/يُميز الزبون على أنه زبون رقم 1 و هو ال
Primary key (CustomerID)
طبعاً في حال كتبنا في شرط ال where
CustomerName='Alfreds Futterkiste'
الي رح يصير: وين ميشوف أسم Alfreds Futterkiste بالجدول رح يغيره الى Farid Laftaa و يغير المدينة city أيضا.. لذلك الأفضل نستخدم الشي الي يميز الزبون من غيره و هو CustomerID.
ممكن نطبق آخر الأمثلة عن Insert Into Select Statement و Update Statement بهذا الرابط
https://www.w3schools.com/sql/trysql.asp?filename=trysql_insert_into_select
https://www.w3schools.com/sql/trysql.asp?filename=trysql_insert_into_select
3. Delete Statement
ال Delete statement تمكننا من حذف بيانات record واحد أو أكثر من Table معين.
ال Syntax العام ل Delete Statement موضح في الصورة أدناه.
ال Delete statement تمكننا من حذف بيانات record واحد أو أكثر من Table معين.
ال Syntax العام ل Delete Statement موضح في الصورة أدناه.