وتبين هذه الدورة التعليميه الاساسية والاوامر لغوي واللغة من لغة الاستعلامات البنيويه.
اولا ، دعونا نرى ما هي قواعد البيانات موجودة في الخلية الخادم. نستطيع مشاهدة هذه المعلومات عن طريق استخدام اظهار القيادة. أدخل ما يلي (ما عدا الخلية> الجزء) في الخلية console الزبائن ، تليها العودة :
الخلية> اظهار قواعد البيانات ؛
وهناك اثنان بالفعل بإنشاء قواعد بيانات في الخلية الخادم. فان الخلية وتحتوي قاعدة بيانات ادارة معلومات عن الخلية الخادم وينبغي ان لا يكون معدلة. قاعدة بيانات اخرى ، واختبار ، هو بالضبط ما كانه : اختبار للالخلية الخادم. اختبار قاعدة بيانات لا تحتوي على أي شيء ، وانه يمكن ازالتها بأمان اذا اقتضى الامر ذلك.
حتى كيف يمكننا ان اضيف قاعدة البيانات الخاصة بنا في الخلية الخادم؟ لذلك ، نحن نستخدم خلق القيادة. دعنا نقول نتمنى لانشاء قاعدة بيانات تسمى mydata ؛ كنا استخدام التالية لغوي.
| ملاحظه | يسرد الجدول التالي حجم وطبيعه القيود التي تفرض على اسماء قواعد البيانات ، الجداول ، الاعمده ، والاسماء المستعاره. |
| المعرف | ماكس طول | صالحه حرفا |
|---|---|---|
| قاعدة بيانات | 64 | جميع صالحة دليل حرفا ما عدا الاسم "." و"/". |
| الجدول | 64 | جميع صالحة دليل حرفا ما عدا الاسم "." و"/". |
| العمود | 64 | كلها صحيحة. |
| الاسم المستعار | 15 | كلها صحيحة. |
الخلية> انشاء قاعدة بيانات mydata ؛
|
|
ولاحظ ان الفاصله المنقوطه بعد كل واضافت القيادة في لغة الاستعلامات البنيويه اللغويه. اننا عندما الصحافة العودة بعد خوض هذه القيادة ، ويبلغنا أن console الاستفسار كان حسنا.
الآن بعد ان انشأنا قاعدة البيانات ، يمكننا ضمان ومن على الخادم بها مرة أخرى باستخدام اظهار القيادة ، على النحو التالي :
الخلية> اظهار قواعد البيانات ؛
اننا عندما الصحافة العودة مع هذه القيادة ، ويمكننا ان نرى قاعدة بياناتنا وقد اضيفت الى قائمة (علما بأن القائمة بالترتيب الابجدي وليس حسب الترتيب الذي تم إنشاء قواعد بيانات).
الآن سنقوم بازاله قاعدة البيانات من الخادم. علما انه عندما نقوم بهذا العمل ، وجميع البيانات (ان وجدت) سوف تضيع. لازالة قاعدة بيانات ، ونحن "اسقاط" وهي من الخادم باستخدام قطرة القيادة. حتى اسقاط mydata قاعدة بيانات جديدة لدينا ، ونحن سوف استخدم الأمر التالي :
الخلية> اسقاط قاعدة بيانات mydata ؛
عندما نقوم بتنفيذ هذه القيادة بالضغط على العودة ، والإستفسار كما سيتم ابلاغ حسنا.
الآن ، واذا كنا مرة أخرى قائمة قواعد البيانات باستخدام اظهار القيادة :
الخلية> اظهار قواعد البيانات ؛
... يمكننا ان نرى ان لدينا قاعدة بيانات mydata غير مرئي على القائمة.
قبل ان نبحث في انشاء الجداول داخل قواعد البيانات ، والان هو الوقت المناسب لذكر مختلف انواع العمود آن يمكن ان يكون لدينا في الجداول.
كل عمود في الجدول يجب ان يكون من النوع الذي يمثل هذا النوع من المعلومات الميدانيه ذاهب الى عقد. هنا قائمة كاملة المتاحة يمكنك استخدام انواع :
| النوع | الوصف |
|---|---|
| Tinyint | عدد صحيح صغير جدا. توقيع طائفة هي -128 الى 127. غير موقع طائفة هو 0 الى 255. |
| Smallint | صغير عدد صحيح. توقيع طائفة هو -32768 الى 32767. غير موقع طائفة هو 0 الى 65535. |
| Mediumint | متوسطة الحجم عدد صحيح. توقيع طائفة هو -8388608 الى 8388607. غير موقع طائفة هو 0 الى 16777215. |
| دولى | عادية الحجم عدد صحيح. توقيع طائفة هو -2147483648 الى 2147483647. غير موقع طائفة هو 0 الى 4294967295. |
| Bigint | كبير الحجم عدد صحيح. توقيع طائفة هو -9223372036854775808 ل9223372036854775807. غير موقع طائفة هو 0 ل18446744073709551615. |
| طوف | صغير ، واحد من الدقه عدد النقطه العاءمه التي لا يمكن غير موقع. توقيع المدى - 3.402823466e +38 ل- 1.755494351e - 38 ، 0 ، و1.755494351e - 38 الى 3.402823466e +38. |
| ضعف | مزدوجة الدقه عدد النقطه العاءمه التي لا يمكن غير موقع. توقيع المدى - 1.7976931348632157e +308 ل- 2.2250738585072014e - 308 ، 0 ، و2.2250738585072014e - 308 الى 1.7976931348632157e +308. |
| عشري | وهو unpacked عدد النقطه العاءمه التي لا يمكن غير موقع. يعمل بمثابة "شار" في هذا العمود هو عدد خزنة سلسلة (اي كل واحد يستخدم عدد الطابع في الخيط). |
| التاريخ | موعد. 1000-01-01 طائفة هي ل9999-12-31 وهو في شكل س س س س - مم - د د. |
| الوقت | كل مرة. طائفة هو -838:59:59 الى 838:59:59 وهو في شكل سموه : مم : ق ق. |
| Datetime | مزيج من التاريخ والوقت. 1000-01-01 00:00:00 طائفة هو على 9999-12-31 21:59:59 وهو في شكل س س س س - مم - دد سمو : مم : ق ق. |
| السنة [(2 | 4)] | في السنة في 2 -- او 4 ارقام الشكل (الافتراضي هو 4). طائفة هو 1901 الى 2155 وايضا 0000. |
| ختم الوقت | أ الزمني. 1970-01-01 00:00:00 طائفة هو الى وقت ما في سنة 2037 في شكل yyyymmddhhmmss. |
| شار (الطول) | أ - طول الخيط الثابتة هي ان الحق دائما مع مبطن - الاحواز الى الطول المحدد عند تخزينها. المدى 1 الى 255 حرفا ويتوقف ذلك على "طول" المحدد. |
| Varchar | أ - طول الخيط متغيرا. |
| Tinyblob / tinytext | ثنائي جوه ضءيله. الطول الاقصى هو 255 حرفا. * ملاحظه انظر الجدول ادناه. |
| النقطه / النص | أ ثنائي وجوه. ويبلغ اقصى طول 65535 حرفا. * ملاحظه انظر الجدول ادناه. |
| Mediumblob / mediumtext | متوسطة ثنائي وجوه. ويبلغ اقصى طول 16777215 حرفا. * ملاحظه انظر الجدول ادناه. |
| Longblob / longtext | وجوه كبير ثنائي. ويبلغ اقصى طول 4294967295 حرفا. * ملاحظه انظر الجدول ادناه. |
| انجليزى ( 'VAL1' ، 'val2'...) | سردا. قائمة سلسلة من القيم التي واحد فقط يمكن اختيارها. الحد الاقصى للقيم 65535 متميزه. |
| مجموعة ( 'VAL1' ، 'val2'...) | مجموعة. جملة وجوه يمكن ان يكون صفرا او اكثر من القيم ، كل منها يجب ان يتم اختياره من قائمة (اي 'VAL1' ، 'val2' ، الخ). الحد الاقصى من 64 حرفا. |
| ملاحظه | والفرق الوحيد بين النقطه والنص هو ان لانواع الفرز والمقارنات ، والنقطه هي قضية حساسه ، في حين ان النص ليس نوع القضية الحساسة. |
الان نحن نعرف ان من الممكن لانواع الاعمده في جداول اعمالنا ، دعنا ننظر الى الطريقة التي نحن فعلا تذهب حول انشاء الجدول.
لنفترض اننا نرغب في ايجاد طاولة على عقد بعض التفاصيل المستخدم داخل قاعدة بيانات.
نريد لتخزين المستخدم العنوان ، الاسم واللقب ، السن ، العنوان الالكتروني ، وتاريخ المستعمل اضيفت الى قاعدة البيانات. ذلك اننا سوف يتطلب الاعمده التالية فى جدول أعمالنا :
الاسم واللقب والعنوان سن emailaddress dateadded
قبل ان نصل الى كيفية اضافتها الى الواقع ، أولا دعنا نفكر كيف سنقوم بتخزين المعلومات - او اكثر لهذه النقطه ، ما هي أنواع نطلبه لكل من الاعمده.
من اجل اللقب ، والاسم ، واللقب ، ويمكننا أن نستخدم نوع النص ، حيث أنه يحتوي على الكثير من الشخصيات للسماح لجميع الاحتمالات.
| ملاحظه | Varchar تستطيع العمل بشكل اسرع وربما هو افضل خيار اذا طول الخيط يمكن ان يقتصر على اقل من 255 حرفا. |
للسن ، وهو غير موقع tinyint سيكون الاختيار الواضح ، حسب الأعمار والعدديه لا احد يعرف من اي وقت مضى ليعيش الماضي 255. لعنوان البريد الالكتروني ، يمكننا مرة اخرى استخدام نوع النص ، كما أنه سيتيح لنا مساحة تخزين كبيرة للمعالجة. واخيرا ، للتاريخ ان المستخدم اضيفت الى الجدول ، يمكننا استخدام أ الزمني.
| ملاحظه | مع جافا ، ومن الممكن استعمال دولي نوع البيانات وتخزينها system.currenttimemillis () / 1000 حيث بلغت قيمة. هذه القيمه يمكن ان يكون مبالغا في وقت لاحق من قاعدة البيانات. ومن ثم تتضاعف بحلول 1000 وتحويله الى تاريخ النوع (اي تاريخ الموعد الجديد = (قيمة) ؛). وهذا امر مفيد عندما تفعل الاقلمه و / أو التحويل بين مختلف قواعد البيانات |
فإن الطابع الزمني له أيضا كبيرة في الممتلكات في أن الوقت والتاريخ يمكن استرجاعها آليا في قاعدة البيانات.
ونحن نعلم الآن أن الأنواع التي نريد لاعمالنا الاعمده ، ونحن بحاجة الى ايجاد قاعدة بيانات لتضاف الى الجدول. دعنا انشاء قاعدة بيانات تسمى myinfo مع القيادة التالية :
الخلية> انشاء قاعدة بيانات myinfo ؛
عندما نقوم بتنفيذ هذه القيادة ، console ينبغي ان التقرير الاستفسار كان حسنا. يمكننا الان التاكد من أن قاعدة بياناتنا وقد انشئت مع القيادة التالية :
الخلية> اظهار قواعد البيانات ؛
ونحن الآن بحاجة الى ان نقول الخلية نتمنى لاداء الاعمال التي تتم على قاعدة بيانات myinfo. ويتم ذلك بواسطة استخدام القيادة :
الخلية> استخدام myinfo ؛
| ملاحظه | دون استخدام ، جميع الجداول في قاعدة البيانات myinfo ينبغي myinfo.mytable على النحو المشار اليه ، الذي هو بطبيعة الحال أمرا صعبا جدا. |
بعد تنفيذ هذه القيادة ، اي ddl (لغة تعريف البيانات) وdml (لغة التلاعب بالبيانات (البيانات التي تنفذ ستؤثر في استخدام قاعدة بيانات ، والتي هي في هذه الحاله لدينا قاعدة بيانات myinfo.
الان ان لدينا قاعدة بيانات انشئت وعلى استعداد لقبول الأوامر ، يمكننا ان نخلق لنا الجدول (التي سنقوم اسم userinfo) مع البيان الآتي :
الخلية> انشاء الجدول userinfo) --> كود دولي auto_increment ، --> عنوان النص ، --> الاسم النص ، --> لقب النص ، --> سن tinyint ، --> نص الرسالة الالكترونيه ، --> dateadded الزمني ، --> المفتاح الاساسي (كود)) ؛
| ملاحظه | Auto_increment ليس معيارا لغة الاستعلامات البنيويه الخيار. Mssql (مايكروسوفت لغة الاستعلامات البنيويه) قد مماثل الخيار وهكذا يفعل postgre ، أوراكل ولكن ليس لديها طريقة للقيام بذلك باعتبارها الخيار انشاء الجدول. يجب القيام بها مع سلاسل وتنتج. |
دعنا كسر هذا حتى قليلا حتى نستطيع ان نرى ما يحدث. اولا نعلن اننا نرغب في انشاء الجدول عن طريق ادخال انشاء الجدول. نحن المقبل يحدد الاسم الذي نريد ان ندعو الى طاولة المفاوضات ؛ في هذه الحاله ، هو اسم userinfo. ثم نستخدم قوسين لاحتواء كافة الاعمده ان نطلبه في جدول اعمالنا وببساطة كل قائمة من اسماء وانواع العمود الذي نطلبه. نلاحظ كيف ان اضفنا اضافي الميدان اسمه معرف. واخيرا ، نلاحظ بالاضافة للالمفتاح الاساسي على النحو الاخير معلمه. هذا وتستخدم لتحديد الكيفيه المثلى هو الجدول داخل قاعدة البيانات.
يمكننا الآن التأكد من ان لدينا الجدول انشئت بنجاح من خلال تنفيذ الأمر التالي :
الخلية> تبين الجداول ؛
ملاحظه يمكنك ايضا مشاهدة الاعمده في الجدول عن طريق استخدام الأمر التالي :
الخلية> وصف userinfo ؛
عند تنفيذ هذه القيادة ، console سيحتوي على جميع التفاصيل عن كل واحد من الاعمده في الجدول userinfo.
هذه المعلومات يمكن ان يكون مفيدا لكلا ضمان الجدول انشئت لكم المتوخاة والى recap الاعمده جدولا يتضمن في وقت لاحق.
حتى الان ان نعرف كيف تصنع الجدول ، لنلق نظرة في كيف نذهب حول كيفية تعديل عليه. تعديل الجدول ويمكن ان تتراوح من مجرد تغيير من نوع واحد من الاعمده الى اضافة جديدة تماما في العمود (او استئصال القائمة العمود).
دعنا ننظر أولا كيف نغير اسم موجود العمود. Userinfo الجدول في منطقتنا ، لدينا العمود المسمى الاسم الشخصي ، ولكن دعنا الآن هذا التغيير ليصبح الاسم الاول ، مرادفا لاسم الشخص الأول.
لاجراء هذا التغيير ، ونحن بحاجة الى استخدام الصيغة التالية :
الخلية> تغيير الجدول userinfo تغيير الاسم الشخصي الاسم الأول النص ؛
| تلميح | ومن الموصى به دائما عالية لتصميم قاعدة البيانات قبل ان تصنع فيه لأن قد تكون هناك مشاكل تعديل / تغيير جداول قاعدة البيانات أو هيكل بعد هناك تدرج البيانات في الجداول. |
اننا يجب ان نلاحظ ايضا توريد نوع البيانات لالعمود فضلا عن الاسماء القديمة والجديدة.
واذا كنا وصف userinfo مع الجدول التالي :
الخلية> وصف userinfo ؛
... يمكننا ان نرى ان العمود الاسم غيرت اسمها الى الاسم الاول.
ويمكننا ايضا تغيير البيانات انواع الاعمده في الجداول. لنفترض اننا نريد تغيير سن العمود من tinyint الى اجراء دولي. ونحن سوف استخدم الأمر التالي :
الخلية> تغيير الجدول userinfo تعديل سن دولي ؛
بعد تنفيذ هذه القيادة ، واذا وصفنا الطاوله ، ويمكننا ان نرى نوع تغيرت لدولي.
وأخيرا ، انه لأمر طيب ان تعرف كيفية ازالة حقول من الجدول (على سبيل المثال ، اذا لم تعد هناك حاجة اليها). دعنا الآن ان اقول اننا لم تعد تتطلب البريد الالكتروني في مجال اعمالنا userinfo الجدول. وما نريد ان نفعله هو ان "اسقاط" الميدان من وجهة نظرنا الجدول. هنا هو لغوي لازالة البريد الالكتروني الميدانيه.
الخلية> تغيير الجدول userinfo قطرة البريد الالكتروني ؛
حالما يتم تنفيذ هذه القيادة ، ونحن مع وصف الجدول التالي :
الخلية> وصف userinfo ؛
ازالة الجداول من قاعدة بيانات بسيطة جدا ، ولكن دون ان يتوخى الحذر في استخدام يمكن ان يكون لها آثار وخيمة. والشيء الاساسي هو ان نلاحظ انه عند سقوط طاولة ، كما انك تفقد جميع البيانات الواردة ضمن الجدول. لذا ، فمن الحكمة دائما نسخة احتياطيه من قاعدة بيانات قبل تنفيذ اي اوامر الهبوط.
دعنا الآن ننظر في كيفية اسقاط userinfo الجدول myinfo قاعدة البيانات من وجهة نظرنا. لنفعل ذلك ، نحن بحاجة الى تنفيذ الامر التالي في الخلية console العملاء.
| ملاحظه | لا يمكنك اسقاط الجدول اذا كانت هناك علاقات الفعليه على الجداول الاخرى التي يمكن كسر سلامه قاعدة البيانات. اذا العلاقات ليست "حقيقية ، و" جداول يمكن ازالتها دون اخطاء ، ولكن سلامة ثم الشبهه. اذا كان مدير البرنامج ليس دقيقا ، ويمكن ان يكون قاعدة بيانات دائمة افسدتها. الخلية> قطرة الجدول userinfo ؛ |
حالما يتم تنفيذ هذه القيادة ، يمكننا التأكد من ان الجدول قد تم حذفها من قبل قائمة الجداول ما يجري حاليا في منطقتنا myinfo قاعدة البيانات عن طريق تنفيذ الأمر التالي :
الخلية> تبين الجداول ؛
الجدول لم تعد موجودة في قاعدة البيانات.
Online: 789 users browsing the articles directory
|
|