تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
انشاء داتا بيز + انشاء جدول بالكود بمكتبة ado
#1
اولا احب اهنئ اصحاب ومراقبين المنتدى الجديد على هذا العمل المبدع وجزاهم الله كل خير لما يقدموه لنا نحن الاعضاء من معلومات مفيده لكى نرتقى الى الاحسن ..
سوف ابدأ اولى مشاركاتى فى هذا المنتدى بمثال بسيط لكيفية انشاء داتا بيز وجداول بداخلها بالكود بمكتبة الادو..

http://www.mediafire.com/?kzrp39553b39ja9
الرد }}}
تم الشكر بواسطة: Ahmed_Mansoor , Ahmed_Mansoor
#2
اسف يا جماعة على تقصيرى فى وضع هذا المثال على استعجال دون شرح ولكن انا هكمل شرح لبعض النقاط المهمه هنا مع العلم ان المثال فى الاعلى تمام ...

معظم الناس بتحب تستخدم constraint
ودى معناها القيود على القحول
انواع القيود مش هتكلم فيها كتير
1/ primary key
2/ Unique
3/ not null
4/ Foreign key
5/ Check
============================
القيد رقم 1 (primary key) وده معناه مفتاح اساسى على الجدول يعنى مينفعش يتقرر وقيمة ثابته وبيتم عن طريقه الربط بجداول اخرى
كيفية انشاؤه بالكود ؟
constraint tab_id_pk primary key
ايه الكلام اللى انا كاتبه ده ؟
Constraint عرفنا ان معناها قيد
tab_id_pk ده اسم القيد اللى انا هنشأه وهنا انا سميته
باسم الجدول واسم الحقل و الـ pk ترمز انه primary key اى انه مفتاح اساسى
2/ القيد رقم 2 (Unique) تعريف تلك الكلمة فريد
بمعنى ان الحقل ده مينفعش يتكرر فيه نفس القيم كل row فى هذا الحقل قيمته مختلفة عن الاخرى
شبيه للقيد رقم 1 بس كل منهم ليه استخدام معين
كيفية انشاؤه بالكود ؟
constraint tab_name_ uq Unique
طبعا احنا شرحنا معنا الكلام ده فى القيد رقم 1
القيد رقم 3 (not null) وده معناه ان الحقل اللى عليه هذا القيد مينفعش نضع فيه قيمة فاضية او null لازم يكون هذا الحقل بيه قيمة
كيفية انشاؤه بالكود ؟
constraint tab_date_ nn not null
القيد رقم 4/ (Check) وده معناه التحقق من القيمة المدخله
ويستحسن استخدامه على الحقول الرقيمة وليست النصية
كيفية انشاؤه بالكود ؟
constraint tab_salary_ck check(salary between 1000 and 2000 )
الشرح انا بقوله هنا تحقق من قيمة المرتب المدخله فى هذا الحقل يجب ان تكون موجوده ما بين 1000 و 2000
مينفعش تكون اصغر من 1000 او اكبر من 2000
القيد رقم 5 / (Foreign key) وده معناه مفتاح اجنبى
بمعنى انه مربوط بمفتاح اساسى primary key
بجدول اخر
وهذا يدل على ان قيمة الحقل اللى عليه هذا القيد يجب ان تكون متاشبه فى نفس القيم الحقل اللى فى الجدول الاخر اللى عليه قيد primery key
يعنى مينفعش يكون الحقل اللى فى الجدول اللى عليه قيد primary key القيم اللى فيه من 1 لحد 10 مثلا
واجى انا اضيف فى الجدول الثانى فى الحقل اللى عليه قيد Foreign key وااقوله ضيف رقم 11 هنا القيد بيشتغل بقى بيتحقق اذا كان رقم 11 ده متسجل فى الجدول اللى مربوط بيه ولا لا
كيفيه انشاؤه بالكود ؟
لنفترض مثلا اننا عندنا جدولين جدول a وجدول b
جدول a يوجد به حقل id وهوا مفتاح اساسى primary key والجدول b يوجد به حقل id وهوا مفتاح اجنبى Foreign key
من شروط الانشأ يجب ان يكون الحقل id فى الجدول a
مفتاح اساسى primary key
الان نأتى لكيفية انشاؤه بعد ما وضحت شروط الانشأ
constraint b _ id _fk foreign key (id) references a (id)
مش محتاج شرح باستثناء كلمة references a (id)
ودى معناها ان القيد ده مربوط بالحقل id اللى فى الجدول a
احنا اتكلمنا عن كيفية انشاؤه بالكود لكن مش شوفنا كيفية موضعه عند الانشاء


هذا هوا الكود لانشاء الجدول قبل وضع القيود
cn.Execute "create table tab (id number,name text(50),dat date) ;"

نيجى نشوفه بعد وضع القيد هيكون ازاى

cn.Execute "create table tab (id number constraint tab_id_pk primary key,name text(50) tab_name_uq Unique,dat date constraint tab_dat_nn not null) ;"
القيد بيتم وضعه بعد تعريف اسم الحقل ونوعه اذا كان رقمى او نصى ...
وبكده اكون خلصت كيفيه انشاء داتا بيز وانشاء جداول
وكيفية وضع القيود على الحقول بالكود من داخل الفيجوال بيسك
الرد }}}
تم الشكر بواسطة: Ahmed_Mansoor
#3
شكرا اخى الكريم على المعلومات القيمة

جعله الله فى ميزان حسناتك

تقبل تحياتى
الرد }}}
تم الشكر بواسطة:
#4
السلام عليكم
جزاك الله خيرا اخي العزيز على المعلومات القيمة
اخي العزيز ماذا لو اردت انشاء جدول في قاعدة الببيانات اذا لم يكن منشئ من قبل
اي اذا كانت قاعدة البيانات لا تحوي  الجدول الذي انا اريد انشائة تقوم بانشائة واذا كانت تحوية لا تقوم القاعده بانشائة
ولك جزيل الشكر
الرد }}}
تم الشكر بواسطة:
#5
(26-04-17, 08:07 AM)ثابت واصل كتب : السلام عليكم
جزاك الله خيرا اخي العزيز على المعلومات القيمة
اخي العزيز ماذا لو اردت انشاء جدول في قاعدة الببيانات اذا لم يكن منشئ من قبل
اي اذا كانت قاعدة البيانات لا تحوي  الجدول الذي انا اريد انشائة تقوم بانشائة واذا كانت تحوية لا تقوم القاعده بانشائة
ولك جزيل الشكر

وعليكم السلام ورحمة الله وبركاته

لعمل ذلك قم بإضافة هذه الكلمات IF NOT EXISTS بعد create table وقبل إسم الجدول كما هو موضح :

PHP كود :
cn.Execute "create table IF NOT EXISTS tab (id number constraint tab_id_pk primary key,name text(50) tab_name_uq Unique,dat date constraint tab_dat_nn not null) ;" 
الرد }}}
#6
(26-04-17, 11:45 PM)Ahmed_Mansoor كتب :
(26-04-17, 08:07 AM)ثابت واصل كتب : السلام عليكم
جزاك الله خيرا اخي العزيز على المعلومات القيمة
اخي العزيز ماذا لو اردت انشاء جدول في قاعدة الببيانات اذا لم يكن منشئ من قبل
اي اذا كانت قاعدة البيانات لا تحوي  الجدول الذي انا اريد انشائة تقوم بانشائة واذا كانت تحوية لا تقوم القاعده بانشائة
ولك جزيل الشكر

وعليكم السلام ورحمة الله وبركاته

لعمل ذلك قم بإضافة هذه الكلمات IF NOT EXISTS بعد create table وقبل إسم الجدول كما هو موضح :

PHP كود :
cn.Execute "create table IF NOT EXISTS tab (id number constraint tab_id_pk primary key,name text(50) tab_name_uq Unique,dat date constraint tab_dat_nn not null) ;" 
جزاك الله خيرا
الرد }}}
تم الشكر بواسطة: Ahmed_Mansoor , Ahmed_Mansoor


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  اربعة برامج بالكود هدية للمنتدي احمد129 5 4,484 20-02-22, 11:46 AM
آخر رد: ahmedchemist
  طلب طريقة نقل البيانات من جدول الي جدول اخر في قاعدة بيانات اخر ahmed201 2 2,340 01-03-21, 12:14 AM
آخر رد: ahmed201
  فورم vb6 لنقل بيانات من جدول لآخر بنفس قاعدة بيانات اكسيس محمد تريكه 5 3,712 24-02-21, 08:10 PM
آخر رد: ahmed201
  [سؤال] هل من الممكن انشاء قاعدة بيانات برمجيا haider kh 3 2,593 07-04-19, 07:23 PM
آخر رد: haider kh
  كيفية انشاء حقل ترقيم تلقائي تناسيم 1 2,226 06-09-17, 05:28 PM
آخر رد: محمد كريّم
  سورس كود لصناعة برنامج بمكتبة الادو بالكود اشروفا 4 3,646 17-06-17, 02:42 AM
آخر رد: Muhammad ali
  انشاء علاقة بين الجداول في قاعدة بيانات SQL aiman 1 2,711 14-10-16, 09:24 PM
آخر رد: aiman
  كيفية نسخ جدول من قاعدة بيانات الى قاعدة أخرى علما بأن القاعدتين لهم باسورد abosara 3 5,540 23-08-16, 01:02 AM
آخر رد: Ahmed_Mansoor
  اكواد انشاء ستعلامات مكونه من جدول اساسي وجدول فرعي في الفيجوال بيسك 6 mhm 0 2,718 10-09-14, 01:27 AM
آخر رد: mhm
  مساعده في كود نقل السجلات من جدول الى اخر Adodc allayl 2 3,385 24-08-13, 05:06 PM
آخر رد: allayl

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم