اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

لماذا نستخدم جمل SQL


الردود الموصى بها

لماذا نستخدم جمل SQL بالرغم من انه يمكن عمل ذلك من خلال نافذة التصميم للاستعلام:

اولاً: ان الكثير من مزايا جمل SQL لا يمكن الوصول اليها من نافذة التصميم للاستعلام ...

على سبيل المثال لا يوجد طريقة لانشاء استعلام توحيد او استعلام جزئي او استعلام تمرير ولعمل ذلك عليك كتابة جمل SQL مباشرةً

ثانياً: لا يمكن استخدام لغة معالجة البيانات (DML)

او الـ (DATA MANIBULATION LANGUAGE)

من خلال نافذة التصميم للاستعلام ولاستخدام هذه اللغة عليك كتابة جمل SQL مباشرةً

تم تعديل بواسطه امير عاطف
  • Thanks 1
رابط هذا التعليق
شارك

إستكمالا لكلام الأخ أمير

تعالو أولا ، نتعرف علي لغة السي كيو ال

السي كيو ال

هو لغة التعامل مع قاعدة البيانات و ينقسم الي 3 أقسام

لغة معالجة البيانات DML

Data manipulation language

لغة تعريف البيانات DDL

Data Definition language

لغة التحكم فى البيانات DCL

Data Control language

لغة معالجة الييانات

ادراج بيانات

تحديث بيانات

حذف بيانات

استرجاع بيانات

لغة تعريف البيانات

هي إنشاء قاعدة البيانات

فى البداية كان يتم انشاء قاعدة البيانات باستخدام جمل SQL

ثم بعد ظهور نظم ادارة قواعد البيانات أصبحت هذه العملية تتم من خلال واجهة رسومية سهلة الاستخدام قادرة علي انشاء و التحكم أيضا فى قواعد البيانات

و هذه اللغة مسئولة عن :

إنشاء جدول

الغاء جدول

تعديل جدول

العلاقات

و للتعامل معها من خلال الاستعلامات لا يوجد سوي استعلام انشاء جدول جديد

أما الباقي فعلينا بالتعامل معهم بالكود

لغة التحكم

تتولي معالجة صلاحيات المستخدمين

و هذه العمليات أيضا أصبحت تتم من خلال الواجهة الرسومية لنظم ادارة قواعد البيانات

موضوع مرتبط :

أسهل طريقة لكتابة جمل سي كيو ال بالكود

  • Thanks 1
رابط هذا التعليق
شارك

إضافة بسيط

--------------------------------------

انشاء قواعد البيانات والجداول والعناصر الاخرى بواسطة اوامر SQL

عندما تكتب برنامجاً يتعامل مع قواعد بيانات SQL Server، لابد ان تجهز هذا البرنامج بامكانية انشاء قواعد البيانات وجداولها عند اول تشغيل للبرنامج او عند اعداد البرنامج، وايضا قد تحتاج لان تضيف ميزة صيانة قواعد البيانات او تطويرها وذلك بالتعديل على الجدوال وقواعد البيانات والعناصر الاخرى، في هذا الدرس سأحاول سرد كل اوامر SQL التي تقوم بانشاء وتعديل قواعد البيانات وعناصرها برمجياً.

في هذا الدرس سألقي الضوء على كيفية انشاء قواعد البيانات Databases والجداول Tables والعمليات المعرفة Stored Procedures و الاستعلامات الجاهزة Views و الفهارس Indexes و القواعد Rules. كما سألقي الضوء على كيفية تعديل الجدول بعد انشاؤه. طبعا سنقوم بكل ماسبق بواسطة اوامر SQL فقط وبذلك يمكنك استخدامها من اي لغة برمجة. واوامر SQL هذه معروفة باسم SQL 92 وهي مجموعة من الاوامر مهمتها التعامل مع عتاصر قواعد البيانات من انشاء وتعديل.

انشاء قواعد البيانات

لو راجعت الدرس الموجود في هذا الرابط والذي يتحدث حول كيفية انشاء قواعد البيانات والجدوال، لوجدت ان برنامج Enterprise Manager يقوم بطلب بعض البيانات منك قبل انشاء قاعدة البيانات، نفس هذه المتطلبات سنحتاجها في امر SQL الخاص بانشاء قاعدة البيانات، نحتاج الى اسم قاعدة البيانات واسم ملف البيانات وحجمه، وايضا اسم ملف تسجيل العمليات Log File وحجمه. الامر الخاص بانشاء قواعد البيانات هو CREATE DATABASE وهو بسيط نوعا ما، كالتالي:

CREATE DATABASE MyDataBase ON PRIMARY 

      (Name = test_data,

      filename = 'C:\sqlserver\mydb_data.mdf',

      size = 5, maxsize = 100, filegrowth = 10 %) 

log ON 

      (name = mydbb_log, 

      filename = 'C:\sqlserver\mydb_log.ldf',

      size = 3, maxsize = 20, filegrowth = 1)
الكلمات التي باللون الازرق هي محجوزة ولاتتغير، فقط الكلمات التي باللون الاسود او الاحمر هي التي قد تحتاج الى تغييرها. في السطر الاول حددنا اسم قاعدة البيانات MyDataBase قم بتغييره الى الاسم الذي تريده، وفي السطر الثاني حددنا اسم name وفي السطر الثالث حددنا مكان ملف حفظ البيانات filename. وفي السطر الرابع حددنا الحجم الابتدائي للملف Size والحجم الاقصى Maxsize ونسبة الزيادة filegrowth . وفي السطر الرابع حددنا اسم ومكان ملف حفظ العمليات، وفي السطر الاخير حددنا حجم ملف العمليات. اذا لم تفهم ماهو المقصود بملف البيانات وملف العمليات والحجم الابتدائي ونسبة الزيادة، يفضل ان تراجع هذا الدرس لتعرف ماهو المقصود بهذه الكلمات. انشاء الجداول انشاء الجداول بواسطة اوامر SQL يكون بواسطة الامر Create Table. لكن قبل تنفيذ الامر لابد ان تختار قاعدة البيانات التي تريد انشاء الجدول داخلها، يمكنك ذلك عن طريق تحديدها داخل امر الربط Connect String في لغة البرمجة، او بواسطة اختيارها بالامر USE. لانشاء الجدول يجب تحديد اسم الجدول، ثم تحديد الحقول مع ذكر نوع كل حقل وحجمه كالتالي: USE myDatabase --لاختيار قاعدة البيانات
CREATE TABLE myTable

      (nID INTEGER IDENTITY PRIMARY KEY,

      theName VARCHAR(100) NOT NULL, 

      theAddress VARCHAR(255), 

      thePhone CHAR(10) NOT NULL )
في السطر حددنا قاعدة البيانات التي نريد انشاء الجدول فيها. وفي السطر الثاني اخترنا اسم للجدول وهو MyTable يمكنك تغييره كما تشاء، وفي السطر الثاني انشأنا حقل من نوع رقمي INTEGER اسمه nID ، لاحظ اننا استخدمنا كلمة IDENTITY وهذه الكلمة تستخدم لجعل الحقل يتزايد تلقائيا عند اضافة حقل جديد، وكلمة PRIMARY KEY تحدد ان الجدول هو المفتاح ولايسمح بتكرار القيمة في اكثر من حقلين. وفي السطر الثاني الى الاخير قمنا باضافة حقول بعضها من نوع نصي متغير الحجم VARCHAR والاخر من نوع CHAR اي نصي ثابت. لاحظ ان كلمة NOT NULL تستخدم لاخبار SQL Server بان هذا الحقل لايمكن ان يكون فارغ. الان يمكنك البدء في تعبئة الجدول السابق بالبيانات التي تريدها. ولاختباره جرب تنفيذ الامر التالي :
INSERT INTO myTable 

      (theName, theAddress, thePhone)

      VALUES

      ('halabi','saudi','14125412')
بعد التنفيذ، ستجد ان صف كامل من البيانات تم اضافته الى الجدول. انشاء الاجراءات المعرفة Stored Procedures لانشاء الاجراءات المعرفة، تحتاج الى تنفيذ الامر Create Procedure مع تمرير اسم الاجراء المعرف ومحتواه. والاجراءات المعرفة هي اجراءات تحفظ في قاعدة البيانات ثم يمكنك طلبها لاحقا وهي تنفذ في جهة الخادم وبذلك تختصر الوقت. المثال التالي يبين كيفة انشاء اجراء معرف مهمته اضافة صف بيانات في الجدول الذي انشأناه في هذا الدرس :
CREATE PROCEDURE AddEntry

      @name VARCHAR(100), @address VARCHAR(255), 

      @phone CHAR(10)

AS

      INSERT INTO myTable (theName, theAddress, thePhone)

      VALUES (@name, @address, @phone)

GO
في السطر الاول طلبنا الامر Create Procedure مع تمرير اسم الاجراء له، وفي السطرين الثاني والثالث عرفنا المتغيرات التي ستمرر الى الاجراء وهي الاسم والعنوان ورقم الهاتف، وفي السطرين الخامس والسادس قمنا يتنفيذ الاجراء والذي هو اضافة صف بيانات الى الجدول. والكلمة GO تعني اننا انتهينا من كتابة الاجراء. انشاء الاستعلامات Views الاستعلام View او كما يعرف في Access بـ Query يفيدك في اختصار الوقت في طلب الاستعلامات فهي تنفذ جهة الخادم وترسل النتائج الى العميل اي انها تشبه الاجراءات المعرفة في طريقة عملها ماعدا انها مخصصة للاستعلام فقط. ولانشائها نطلب الامر Create View كالتالي:
CREATE VIEW myView 

      AS 

      SELECT theName,Thephone FROM myTable
انشاء الفهارس Indexes كما ذكرت في درسي السابق والموجود في هذا الرابط ، يمكنك انشاء نوعين من الفهارس Clustered و non-Clustered . لهذا عند استخدام امر انشاء الفهارس Create Index يجب تحديد نوع الفهرس. بالاضافة الى تحديد خاصية UNIQUE او هل الفهرس موحد ام لا. وايضا يجب تحديد اسم الجدول والحقول التي تريد تضمينها في الفهرس. المثال التالي يوضح ذلك:
CREATE UNIQUE CLUSTERED INDEX 

      myIndex 

      ON myTable(theName,thePhone)
المثال السابق ينشئ فهرس اسمه myIndex من نوع Clustered وموحد. والحقول المضمنة في هذا الفهرس هي theName و thePhone.لاحظ انه يمكنك اضافة فهرس واحد من نوع Clustered. بالنسبة لاضافة فهارس من نوع Non-Clustered فقط بدل كلمة CLUSTERED الى NONCLUSTERED كما في المثال التالي:
CREATE UNIQUE NONCLUSTERED INDEX 

      myIndex2

      ON myTable(theName,thePhone)

انشاء القواعد Rules

القاعدة Rule هي عنصر ، مهمته التحكم في نسق البيانات المدخلة للتأكد من انها تطابق المطلوب، فمثلا يمكنك انشاء قاعدة Rule تحدد ان رقم الهاتف لابد ان يحتوى على خمسة خانات على الاقل. ولانشاء القواعد Rules نستخدم الامر Create Rule مع تحديد اسم القاعدة Rule و القاعدة نفسها:

CREATE RULE myRule

AS

Len(@thePhone) >= 5 AND Len(@thePhone) <= 10

القاعدة Rule السابقة اذا ربطتها مع الحقل thePhone، ستم اصدار رسالة خطا اذا حاول احدهم اضافة رقم هاتف يحتوى على اقل من خمسة خانات او اكثر من عشرة خانات.

تعديل الجداول و/أو حذفها بعد انشائها

نعم يمكنك تعديل حقول الجدول وخصائصها بعد انشائها بواسطة الامر ALTER TABLE . الطريقة كالتالي:

ALTER TABLE MyTable

ALTER COLUMN

theName VARCHAR(120) NOT NULL

فقط مرر اسم الجدول بعد الامر، ثم مرر اسم الحقل والخصائص الجديدة ليتم تعديلها فور تنفيذك للامر.

بالنسبة لحذف الجدول كاملا بعد انشائه، استخدم الامر DROP TABLE مع تمرير اسم الجدول فقط كالتالي:

DROP TABLE MyTable

لاحظ ان تنفيذك للامر السابق سيحذف الجدول نهائيا . لذلك كن حذرا.

كيف استطيع تنفيذ ماسبق من داخل لغة البرمجة ؟

يمكنك تنفيذ اوامر SQL السابقة من اي لغة برمجة تستطيع الاتصال بقاعدة بيانات SQL Serverمثل Visual Basic و ++C و #C و DELPHI وغيرها من اللغات. فقط قم بتنفيذ الامر Execute مع تمرير الباراميترات المطلوبة. واترك الباقي لـ SQL Server. لكن لاحظ، لابد ان تتصل مع قاعدة البيانات قبل تنفيذ الاوامر، وايضا لابد ان يكون المستخدم المتصل له الصلاحيات لاضافة وتعديل قواعد البيانات وعناصرها، ويمكنك اعداد تلك الصلاحيات عن طريق SQL Server بواسطة برنامج Enterprise Manager والذي يأتي مع SQL Server.

مقتبس من الرابط الأصلى

http://www.dev4arabs.com/ar/sql/

أشرف خليل

رابط هذا التعليق
شارك

زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information