SQLأمر تحديد قاعدة البيانات المراد التعامل معها
- الأمر
USE
- إنشاء قاعدة بيانات و من ثم تحديدها و التعامل معها
- مشكلة عدم وجود قاعدة بيانات محددة
الأمر USE
الأمر USE
يستخدم لتحديد قاعدة البيانات التي نريد التعامل معها من خلال إسمها.
إذا كنت تريد تنفيذ مجموعة من الإستعلامات دفعة واحدة و بدون الحاجة لتحديد قاعدة البيانات المراد التعامل معها سواء من صفحة phpMyAdmin أو من أي برنامج تستخدمه للتعامل مع قواعد البيانات يمكنك استخدام هذا الأمر لتحديد قاعدة البيانات المراد التعامل معها قبل تنفيذ الإستعلامات.
عادةً ما نستخدم هذا الأمر عند تجهيز مجموعة من الإستعلامات هدفها بناء قاعدة البيانات و بناء كل شيء موضوع فيها بنقرة واحدة.
طريقة استخدامه
USE db_name;
مكان الكلمة db_name
نضع إسم قاعدة البيانات التي نريد تحديد أننا سنتعامل معها عند تنفيذ أي إستعلام موضوع بعدها.
إنشاء قاعدة بيانات و من ثم تحديدها و التعامل معها
الإستعلام التالي يقوم بإنشاء قاعدة بيانات جديدة إسمها harmash
و من ثم يقوم بتحديد أننا سنتعامل معها.
بعدها يقوم بإنشاء جدول فيها إسمه users
يتألف من 3 أعمدة هي username
، email
و phone
.
مثال
-- سيتم حذفها harmash في حال كان يوجد بالأساس قاعدة بيانات إسمها DROP DATABASE IF EXISTS harmash; -- harmash هنا قمنا بإنشاء قاعدة بيانات جديدة إسمها CREATE DATABASE harmash; -- harmash هنا قمنا بتحديد أن أي إستعلام جديد سيتم تنفيذه على قاعدة البيانات USE harmash; -- phone و email ,username يتألف من ثلاث أعمدة هي users هنا قمنا بإنشاء جدول جديد إسمه -- لأننا قمنا بتحديدها قبل إستدعاء هذا الأمر harmash سيتم إنشاء هذا الجدول بداخل قاعدة البيانات CREATE TABLE users ( username VARCHAR(30), email VARCHAR(50), phone VARCHAR(20) );
بعد تنفيذ الإستعلام السابق في phpMyAdmin سيتم إنشاء قاعدة البيانات harmash
و إنشاء الجدول users
بداخلها كالتالي.
مشكلة عدم وجود قاعدة بيانات محددة
في حال قمت بتنفيذ أي أمر خاص بالتعامل مع شيء موجود في قاعدة بيانات و لكنك لم تقم بتحديد قاعدة البيانات التي تريده أن يتنفذ عليها سيظهر لك الخطأ التالي.
لتجربة الوقوع في هذا الخطأ، تأكد أنك لم تحدد أي قاعدة البيانات في صفحة phpMyAdmin ثم نفذ الإستعلام التالي.
مثال
-- price و description ,title الأمر التالي يقوم بإنشاء جدول يتألف من ثلاث أعمدة هي -- سيحدث خطأ عند محاولة تنفيذ هذا الأمر لأنه لم يتم تحديد أي قاعدة بيانات سيتم إنشاؤه فيها CREATE TABLE products ( title VARCHAR(200), description VARCHAR(50), price DECIMAL(5,2) );
النتيجة
النتيجة تعني أنه لم يتم تنفيذ الإستعلام لأنه لا يوجد قاعدة بيانات محددة.
في phpMyAdmin سيظهر الخطأ الذي ذكرناه كالتالي عند تنفيذ الإستعلام.
تذكر: لا يوجد خطأ في الإستعلام نفسه، بل الخطأ فقط هو عدم تحديد قاعدة البيانات التي سيتم تنفيذ الإستعلام عليها.
إذا قمت بتنفيذ الإستعلام السابق نفسه مع إضافة الأمر USE harmash;
قبله فسيتم تنفيذ ه بدون أية مشاكل سواء قمت بتحديد أنك تتعامل مع قاعدة البيانات harmash
في صفحة phpMyAdmin أم لم تقم بذلك لأنك حددت قاعدة البيانات في الإستعلام.
في الإستعلام التالي قمنا بتحديد قاعدة البيانات التي نريد التعامل معها أولاً و من بعده قمنا بتنفيذ الأمر الذي يقضي بإنشاء جدول فيها.
مثال
-- harmash هنا قمنا بتحديد أن أي إستعلام جديد سيتم تنفيذه على قاعدة البيانات USE harmash; -- price و description ,title الأمر التالي يقوم بإنشاء جدول يتألف من ثلاث أعمدة هي -- لأننا قمنا بتحديدها قبل إستدعاء هذا الأمر harmash سيتم إنشاء هذا الجدول بداخل قاعدة البيانات CREATE TABLE products ( title VARCHAR(200), description VARCHAR(50), price DECIMAL(5,2) );
النتيجة
0 row(s) affected
النتيجة تعني أنه تم تحديد قاعدة البيانات و من ثم إنشاء الجدول فيها بنجاح.
بعد تنفيذ الإستعلام السابق سيتم إنشاء الجدول products
في قاعدة البيانات harmash
و سيصبح فيها جدولين كما يلي.
قم بالنقر على زر تحديث قائمة قواعد البيانات في حال لم يظهر لك الجدول products
حتى يتم إعادة رسمها من جديد.