MySQL Functions

بسم الله الرحمن الرحيم

أما بعد فحديثنا اليوم هو استكمالا عن أهم استخدامات لغة البرمجة رينج Ring

لغة البرمجة Ring تدخل في برمجة قواعد البيانات ولا يخفي علينا اهمية قواعد البيانات ونظرا لان اللغة وصلت لدرجة عالية من المميزات فلا شك أنها تدخل في برمجة قواعد البيانات وبرمجة الالعاب وبرمجة تطبيقات الويب…الخ.

فلا يمكن الاستغناء عن قواعد البيانات حيث تدخل في المشاريع الكبيرة لتطبيقات الويب التي تحتفظ بالبيانات وتديرها بطريقة مستمرة مثل تطبيق ال Facebook,Twitter,LinkedIn,Youtube، وكذلك المشاريع الخاصة بحياتنا اليومية مثل مشروع ادارة مدرسة يدير جدول المدرسين والطلبة وحضورهم وعددهم،ومشروع الصيدلية لادارة الادوية، ومشروع الطائرات والتحكم في ساعات الهبوط والنزول،ومشروع ادارة المبيعات والتحكم في البضائع وحركات البيع والشراء،ومشروع البنك لحفظ بيانات الشخص ومستحقاته، ….الخ.

وما نتحدث عنه اليوم يكون علي دوال MySQL في لغة ال RING.

ويمكنك الاطلاع علي أهم أوامر ال SQL وكيفية تنفيذها علي MySQL من هنا

دوال ال MYSQL داخل لغة Ring

()MySQL_Info

لمعرفة ال version  لبرنامج ال MYSQL

()MySQL_Init

لعمل handle أو تهيئة الاتصال بالسيرفر MYSQL

(MySQL_Error(mysql handle

لمعرفة الخطأ الناتج من ال MYSQL أو جمل ال SQL

MySQL_Connect(MySQL Handle, cServer,  cUserName, cPassword

لعمل اتصال بقاعدة البيانات MYSQL

()MySQL_Close

لاغلاق الاتصال بقاعدة البيانات MYSQL

(MySQL_Query(MySQL Handle, cSQLQuery

لتنفيذ أوامر ال SQL

()MySQL_Insert_ID

للحصول علي عدد الصفوف التي تم عمل insert  لها

()MySQL_Result

للحصول علي ناتج ال query بدون اسماء الاعمدة   ويستخدم مع الامر select “يعرض القيمة فقط”

()MySQL_Next_Result

للانتقال الي الجملة التالية في ال query ” تستخدم في حالة وجود أكثر من جملة في ال query الواحدة”

()MySQL_Columns

للحصول علي اسماء الاعمدة ويستخدم مع الامر select

()MySQL_Result2

للحصول علي ناتج ال query مع اسماء الاعمدة  ويستخدم مع الامر select “يعرض أولا جميع أسماء الاعمدة ثم جميع القيم”

(MySQL_Escape_String(mysql handle,cString

تعمل علي معالجة البيانات ال Binary قبل حفظها في DB

(MySQL_AutoCommit(mysql handle,Status

تعمل علي  فتح واغلاق خاصية ال autocommit

(MySQL_Commit(mysql handle

لعمل Commit وحفظ التعديلات علي ال DB

(MySQL_Rollback(mysql handle

لعمل استعادة  Restoreلل DB

 

ينبغي قبل استخدام أي دالة تحميل مكتبة ال mysqllib.ring التي تحمل دوال ال MYSQL: 

"Load "mysqllib.ring

كيفية التعامل مع قواعد البيانات  MYSQLفي لغة Ring؟

1-نقوم باستدعاء مكتبة MYSQL  وهي mysqllib.ring.

2-نقوم بتهيئة الاتصال بقاعدة البيانات عن طريق الدالة ()MySQL_Init.

3-ثم نقوم بعمل الاتصال عن طريق الدالة MySQL_Connect ونقوم بتعريف التالي:

  • ال server أو ip الخاص بالاتصال بال Server.
  • واسم المستخدم الذي تم ادخاله عند تسطيب MYSQL.
  • والباسورد الذي تم ادخاله عند تسطيب MYSQL.
  • نقوم بانشاء قاعدة بيانات عن طريق الامر Create database db_name.
  • نقوم باستخدام قاعدة البيانات التي نعمل عليها عن طريق الامر use  db_name.

4–ثم نقوم بانشاء الجداول والتعامل معها بأوامر ال SQL المختلفة.

مثال توضيحي  علي كيفية الاتصال بقاعدة البيانات:

"load "mysqllib.ring
()con=MySQL_Init
see mysql_connect(con,'127.0.0.1','root','1234')+nl
('mysql_query(con,'create database RingMYSQL
(mysql_close(con

3.jpg

ملحوظة:

يمكنك تنفيذ أوامر ال SQL باستخدام محرر اللغة Ring وكذلك من خلال ال Command Line أو أي برنامج اخر ل MYSQL.

مثال توضيحي علي انشاء جدول داخل قاعدة البيانات:3.PNG

الكود المرفق في البرنامج

4.png

مثال أخر:

4.jpg

الكود المرفق في البرنامج

مثال توضيحي علي كيفية تنفيذ أكثر من جملة في نفس ال Query مع مراعاة أيضا أن يكون لهم نفس الامر باستخدام الدالتين:

(mysql_result(con
(mysql_next_result(con

 

show result of sql_statements without columns#
"load "mysqllib.ring
()con= MySQL_Init
see mysql_connect(con,'localhost','root','root')+nl
('mysql_query(con,'use ringmysql
 ;  we separate the statements by #
('mysql_query(con,'select name from characters where id=3;'+'select name from characters where id=2
show the result of first statement#
(See mysql_result(con
move to the next statement#
(mysql_next_result(con
show the result of second statement#
(see mysql_result(con
see mysql_close(con)+nl

 مثال اخر:

show result of sql_statements with columns names in first, before values#
"load "mysqllib.ring
()con= MySQL_Init
mysql_connect(con,'localhost','root','root')+nl
('mysql_query(con,'use ringmysql
('mysql_query(con,'select * from plan
result2 show the columns elements  with values#
(see mysql_result2(con
(mysql_close(con

مثال توضيحي علي ال Commit , RollBack:

8.jpg

الكود المرفق في الصورة

ملحوظة:

خاصية ال commit  تعمل عمل ال Save  حيث تعني تنفيذ أوامر ال SQL بنجاح.

تستطيع الاطلاع علي المشاريع مفتوحة المصدر من الموقع  GitHub
الموقع الرسمي للغة  http://ring-lang.net

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

 

Advertisements

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s