ژ.ب ١٦٦٥٩

فێربوونی MySQL، پێناسە و بەکارهێنان


بە مای سی کوۆڵ دەخوێنرێتەوە و بەپێی ئامارگیری جێبەجێ کراو لە ساڵی ٢٠٠٨ بەناوبانگترین بنکەی دراوەیە کە زۆرترین جار بەکارهێنراوە لە نێوان بنکەکانی دراوە کە سەرچاوەیان کراوەیەوە و لەسەر بنەمای پەیوەندی نێوان Data  کار دەکەن. Relational Database Management System.

لە ئەم بابەتەدا تیشک دەخەمە سەر چۆنیەتی بەکارهێنانی MySQL لە بواری وێبدا و هەروەها هەندێک ئامرازی پەیوەندیدار کە داڕشتن و بەڕێوەبردنی بنکەیەکی دراوەی MySQL ئاسان دەکەنەوە. لە کۆتایی بابەتەکەدا هەندێک بەستەر و سەرچاوەی گرینگ هەن کە هەموو وێبداڕێژێک کار لەگەڵ بنکەی دراوەکە بکات پێویستە سەردانیان بکات بۆ پەرەپێدانی زانیارییەکانی سەبارەت بە MySQL و هەروەها زۆرتر ئاشنا بوون سەبارەت بە چۆنیەتی بنیادنانی بنکەیەکی دراوەی MySQL بە درووستی و پارێزراوی.

بە هۆکاری ئەوەی زمانی PHP بە ناوبانگترین زمانی داڕشتنی وێبە کە لەگەڵ بنکەی دراوەی MySQL بەکار دەبرێت لە ئەم بابەتەدا هەمان زمان لە نموونەکاندا بەکار دەبەین.

MySQL بنکەیەکە بۆ لە خۆ گرتنی زانیاریی Data. دەتوانێت کۆمەڵێک شێوازی جیاواز و پێناسەکراوی زانیاری لە خۆ بگرێت بۆ ئاسانتر و درووستر ڕێکخستنیان. سەرچاوەی MySQL کراوەیە و بەکارهێنانی خۆڕاییە.

دەکرێت MySQL وەک کتێبخانەیەک ناو ببەین و زانیارییەکانی نێوی لەگەڵ کتێبەکانی نێو کتێبخانەکە بەراورد بکەین، کە لەسەر بنەمای هاوپۆلەکانیان و لەوانەیە بنەمای دیکە ڕیزکراون ئەوەش چەند هۆکارێکی هەیە،

1.    دانانی زانیاری درووست لە شوێنی درووست بۆ ئاسانتر کردنەوەی دۆزینەوەی.

2.    بەکارهێنانی ئاسانە، بۆ بەکارهێنان و گوونجاندنی پرۆژەکەت بۆ کارکردن لەگەڵ MySQL زانیاری و فێربوونی کەمی پێویستە.

3.    پاڵپشتی باشی هەیە، بە هۆکاری بەناوبانگیی زۆر بە شێوەیەکی گشتیی هەموو لایەنە پەیوەندیدارەکانی MySQL لەسەر وێب تاوتوێ کراون، ئەگەر پرسیارت هەبوو یان هاوکاریت پێویست بوو بە ئاسانی وەڵامت دەست دەکەوێت.

4.    بناغەیەکی پتەوە بۆ پرۆژە، داڕشتنی پرۆژە و حەشار دانی زانیاری لە نێو بنکەی دراوەی MySQL کاری پەرەپێدان، پاراستن و چاودێریکردنی زانیارییەکان ئاسان دەکاتەوە. پێویستی بە پێکهاتەی زۆرتر کرد دەتوانیت بە ئاسانی زۆری بکەیت و بە ئەو شێوازەش پرۆژەکەت بەربڵاوتر بکەیت.

5.    وەک لە ناوەکەی ڕوونە بە زمانی SQL  کاری لەگەڵ دەکرێت، ئەگەر لەگەڵ بنکەی دراوەی دیکە کارت کردبێت کە لەسەر بنەمای هەمان زمان کار بکات، پێویست بە فێربوونی نوێ ناکات. ئەگەر نوێیت و پێشتر بە SQL  ئاشنا نەبوویت، فێربوونی زۆر ئاسانە.

6.    دەتوانرێت زانیاری زۆر لە نێو بنکەیەکی دراوەی MySQL  پاشەکەوت بکرێت لە بەراورد کردن لەگەڵ پاشەکەوت کردن لە نێو پەڕگەیەکی دەقیی ئاسایی Flat DB File.

7.    خێراترە بۆ خوێندنەوە و نووسینی زانیاری، دەگەڕێتەوە سەر بەکاربردنی Index  و پێکەوە بەستنی زانیاری کە لە بەردەوامیی ئەم بابەتە ئاماژەیان پێدەکرێت.

لە هەمووی گرینگتر: کەم کێشەیە و دەتوانیت بە پێی پێداویستی پرۆژەکەت ڕێکی بخەیت و بەکاری ببەیت.

هۆکاری دیکەی زۆرتر هەیە کە دەکرێت ئاماژەیان پێبدرێت، پێم وایە خاڵەکانی سەرەوە ئەوەندە هاندەر دەبن کە دەست بە بەکاربردنی MySQL  بکەیت.

دامەزراندنی MySQL

بە شێوەیەکی گشتیی دەتوانرێت MySQL لەسەر زۆرینەی سیستەمەکان دابمەزرێت، ویندۆز، ماک، لینوکس و هتد... زۆر ئامرازێک هەیە کە دامەزراندنی MySQL, PHP و هەندێک ئامرازی دیکەی پەیوەندیداریان کۆ کردوەتەوە و دەکرێت هەموویان لە هەمان کاتدا دابمەزرێندرێن.
دامەزراندنی خاوێن و تەنیا MySQL،
Windows -- http://dev.mysql.com/downloads/mysql
Mac OS X -- http://dev.mysql.com/downloads/mysql/#downloads
Linux -- http://dev.mysql.com/downloads/mysql/#downloads

بە هۆکاری ئەوەی کە سیستەمی ویندۆز زۆرترین سیستەمی بەکارهاتووە ڕوونکردنەوەکانی دامەزراندن و بەردەوامیی بابەتەکە لەسەر هەمان سیستەم دەنووسرێت. کۆد و ڕێکخستنەکانی نێو بابەتەکە لەسەر هەموو سیستەمەکانی دیکەش کار دەکات و ئەگەر سیستەمێکی دیکە بەکار دەهێنیت دەتوانیت بە هەمان شێواز بەردەوام بیت.

پاش دامەزراندنی وەشانی ٣٢ یان ٦٤ بیت بۆ سیستەمی ویندۆز کرتە لە پەڕگەی دامەزراندن بکە بۆ دامەزراندنی MySQL Server. هەنگاوەکانی دامەزراندن پێویستیان بە گۆڕانکاری نییە و بە هەمان شێوازی پرۆگرامی دیکەی ویندۆز دادەمەزرێت.

MySQL Server  بنکەیەک دەبێت کە هەموو ژێر بنکە و خشتەکانی بنکەی دراوەکەت لە خۆ دەگرێت، بە دامەزراندنی MySQL Server  دەتوانیت پاش درووستکردنی بنکەی دراوە، پەیوەندی لەگەڵ بگریت، زانیاری بۆ بنووسیت یان زانیاری لە بنکەی دراوە بخوێنیتەوە.

شێوازێکی ئاسانتر بۆ دامەزراندنی MySQL  و PHP  لە هەمان کاتدا ئەوەیە کە پرۆگرامێک دابمەزرێنیت لە ژێر نازناوی LAMP و کورتکراوەی Linux, Apache, MySQL, Perl/PHP/Python ـە. دیارە زۆر پرۆگرامێک هەن لەسەر بنەمای LAMP دامەزراون، بەڵام ئاسانترین و بێ کێشەترینیان XAMPP ـە.
بۆ داگرتنی XAMPP سەردانی بەستەری خوارەوە بکە،
http://www.apachefriends.org/en/xampp-windows.html#641

لە کاتی دامەزراندنی XAMPP دەتوانرێت Apache  و PHP دابمەزرێندرێت کە بۆ بەردەوام بوون لە ئەم بابەتە پێویستن.

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/xampp-installation-php-mysql-controlpanel.png

پاش دامەزراندنی XAMPP ڕوومەتی پرۆگرامەکە وەک لە وێنەی سەرەوە ڕوونە دەکرێتەوە و ئەگەر لە کاتی دامەزراندن دا هەردوو Apache  و MySQL وەک ڕاژە/ Service  هەڵبژێردرابن، ڕاستەوخۆ چالاک دەبن و ئامادە دەبن بۆ بەکاربردن.

بە پێی هەنگاوەکانی سەرەوە دەبێت MySQL ـت بە تەواوی دامەزراندبێت و ئامادە بیت بۆ داڕشتنی بنکەی دراوەکەت.

لە پێش داڕشتنی یەکەم بنکەی دراوە، پرۆگرامی خوارەوە دابمەزرێنە بۆ ئاسانکردنەوەی کارکردن لەگەڵ بنکەی دراوە،

http://www.heidisql.com/download.php
HeidiSQL پرۆگرامە بۆ درووستکردن، دەستکاریکردن و بەڕێوەبردنی بنکەی دراوەی MySQL و هەروەها چەند ئامرازێکی دیکە بۆ ئاسانکردنەوەی چاودێریکردن، سەرچاوە کراوەیە و خۆڕایە بۆ بەکاربردن.

شایەنی باسە کۆمپانیای Oracle  کە ئێستا پەرەپێدەری MySQL ـە پرۆگرامێکی هاوشێوەیان هەیە بۆ جێبەجێکردنی هەمان کردارەکان، بەڵام HeidiSQL هەمووکات فرمانەکانی SQL   پیشان دەدات پێش جێبەجێ کردنیان کە لە خۆیدا سوودی ئاشناتر کردنی کۆدەکان و فرمانەکانی SQL ی هەیە بۆ تۆی بەکارهێنەر کە پێویستت بە فێربوونی زمانی SQL هەیە و لە هەمان کاتدا ئامرازێکت پێویستە بۆ خێراتر کردنی کارکردنت لەگەڵ بنکەی دراوەی MySQL.

پرۆگرامی MySQL Workbench لە بەستەری خوارەوە هەیە بۆ داگرتن،
http://www.mysql.com/downloads/workbench

لە بەردەوام بوونی ئەم بابەتە پرۆگرامی HeidiSQL بەکار دەبەین، بەڵام هەمان کارەکان کە جێبەجێ دەکرێن لە MySQL Workbench جێبەجێ دەکرێن و هەمان ئەنجامیان دەبێت.

پاش دامەزراندنی HeidiSQL پرۆگرامەکە بکەوە،

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/session-manager-heidi-sql.png

پێویستە زانیارییەکانی تایبەت بە ڕاژەکاری MySQL لە پرۆگرامەکە بنووسین بۆ کارکردن لەگەڵ بنکەی دراوەکان، MySQL Server لە کاتی دامەزراندندا زانیارییەکانی جێگرن و بۆ هەموو بەکارهێنەرێک هەمان دەبێت ئەگەر بەکارهێنەر دەستکاری نەکردبێت. بۆ پەیوەندی کردن ٢ بەش زانیاری پێویستن،  Hostname / IP و هەروەها Username.

Hostname / IP بۆ ڕاژەکاری نێوخۆ هەموو کات localhost و Username  هەموو کات root  ـە، وشەی نهێنی نییە و هەروەها پۆرتەکەی بە شێوەی ئاسایی ستانداردی 3306.


تێبینی: زانیارییەکانی پەیوەندیکردن بە بنکەی دراوە لە ڕاژەکارێکەوە بۆ ڕاژەکارێکی دیکە جیاوازن و ئەگەر پێویستی کرد، پەیوەندی لەگەڵ بەڕێوەبەری ڕاژەکار بکە.

پاش نووسینی زانیارییەکان و پاشەکەوتکردنیان، کرتە لە Open بکە بۆ کردنەوەی پەیوەندییەکە و دەستپێکردنی کارکردن لەگەڵ بنکەی دراوە.

درووستکردنی بنکەیەکی دراوە
وەک نموونە لە بابەتەکەدا بنکەیەکی دراوە درووست دەکەین بە ناوی test_database، بنکەی دراوە بەکار دەبەین بۆ پاشەکەوتکردنی هەندێک زانیاری.

لە پرۆگرامی HeidiSQL کرتەی ڕاست بکە سەر ناوی پەیوەندییەکە local و New -- Database.

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/alter-database-heidi-sql.png

ناوی بنکەی دراوە: test_database
Character Set درووست هەڵبژێرە لە پەیوەندی لەگەڵ ئەو زانیارییانەی کە لە بنکەی دراوە پاشەکەوت دەکرێن، کاتێک دەقیی کوردی سۆرانی دەنووسین دەمانەوێت بە فۆرماتی utf8 پاشەکەوتی بکەین بۆ درووست پاشەکەوت بوونیان  و دەرکەوتنیان. هەروەها پاڵپشتیی تەواوی هەیە بۆ پیتە کوردییەکان.
Collation، درووست بەکاربردنی ئەم تایبەتمەندییە گرینگترە لە پەیوەندی لەگەڵ داڕشتنی خشتەکانی نێو بنکەی دراوە کە لە درێژەی بابەتەکەدا ڕوونتر دەبێتەوە. بۆ ئێستا utf8_unicode_ci  هەڵبژێرە.

وەک لە وێنەی سەرەوە ئەگەر هەمان هەنگاوەکان بە فرمان Command بنێرین بۆ ڕاژەکاری بنکەی دراوە فرمانەکەمان دەبێتە،

CREATE DATABASE `test_database` /*!40100 CHARACTER SET utf8 COLLATE 'utf8_unicode_ci' */

واتە فرمان دەنێرین بۆ ڕاژەکاری بنکەی دراوە کە بنکەیەکی دراوە درووست بکات بە ناوی test_database، و تایبەتمەندی Character Set یەکسان بکات بە utf8 و Collation بکات بە utf8_unicode_ci.

پاش کرتە کردن لە OK فرمانی سەرەوە دەنێردرێت بۆ ڕاژەکار، ڕاژەکار بە نۆرەی خۆی فرمانەکە جێبەجێ دەکات ئەگەر بەکارهێنەر دەسەڵاتی درووستکردنی بنکەی دراوەی هەبێت، لە ئەم کاتەدا بەکارهێنەری root  هەموو دەسەڵاتێکی هەیە.



بنکەیەکی دراوە / Database لە پەیوەندی لەگەڵ MySQL Server یان ڕاژەکاری بنکەی دراوە چییە؟

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/mysql-database-structure.png

لە وێنەی سەرەوە بە ڕوونی دەبینین کە لە هەنگاوی یەکەم دا پێویستە MySQL Server هەبێت، پاشان Database درووست دەکرێت لە چوارچێوەی ئەو Server  ـە. هەر Database  ـێک Table  و Field  لە خۆ دەگرێت. Table  ـێک زانیاری لەسەر Field  ـەکان لە خۆ دەگرێت و هەروەها کۆمەڵێک Field  لە خۆ دەگرێت. هەر Field ـێک بەشێک زانیاری لە خۆ دەگرێت. بۆ نموونە دەکرێت Field  ـێک هەبێت کە ژمارەی ئەندام لە خۆ بگرێت، Field ـێکی دیکە کە ناوی ئەندام لە خۆ بگرێت و هتد...

پاش درووستکردنی بنکەی دراوە، Table  ـێک درووست دەکەین، ئەو Table  ـە دواتر Field  ـەکان لە خۆ دەگرێت کە زانیارییەکان لە خۆ دەگرن، بۆ درووستکردنی Table  ـێک بنکەی دراوە هەڵبژێرە، دواتر کرتەی ڕاست بکە، New -- Table.

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/heidi-sql-create-database.png

بە هۆکاری ئەوەی Table  ـێک تەنیا کۆکەرەوەی Field  ـە، پێویستی تەنیا بە ناو هەیە، بۆ نموونە لە ئەم بابەتەدا Table ـەکەمان ناوی endam دەبێت. پاش ناو نووسین و لە هەمان پەنجەرەدا دەتوانن Field ـە پێویستەکان بۆ پرۆژەکەمان درووست بکەین. بە مەبەستی نموونەی ئەم بابەتە دوو خانە درووست دەکەین، یەکەم ناوی ئەندام لە خۆ دەگرێت، دووەم ژمارەی ئەندام لە خۆ دەگرێت.

ناوی خانەکان بە پیتی بنەڕەتیی لاتینی دەنووسین، پیتەکانی وەک Äö و هتد... بەکار مەبە، ناوی خانەی یەکەم naw  دەبێت و ژمارەی ئەندام دەنووسین id.

لە خانەی ناوی ئەندام کە ناوی ئەندامان پاشەکەوت دەکرێن Collation گرینگە بە درووستی هەڵببژێدرێت، لە ئەم نموونە utf8_unicode_ci هەڵدەبژێرین.

لە هەنگاوی درووستکردنی بنکەی دراوە شێوازی UTF-8 ـمان هەڵبژارد بۆ نووسین و خوێندنەوەی زانیاری لە بنکەی دراوەکەمان، لە هەنگاوی داڕشتنی Field دا شێوازی ڕیزکردنیان هەڵدەبژێرین، بۆ UTF-8 دوو شێوازی سەرەکی هەیە بۆ ڕیزکردن، utf8_general_ci و utf8_unicode_ci و هەر یەکەیان لەسەر شێوازی خۆی زانیاری ڕیزدەکەن Sort. بە مەبەستی بەردەوامبوون، utf8_unicode_ci هەڵبژێرە بۆ خانەی ناو.

ناوی بەکارهێنەرمان لە نێو خانەی naw بە نووسەی سۆرانی دەنووسین، بۆ نموونە وەک هەژار، هێمن، گووڵاڵە و هتد...

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/create-table-and-fields-heidi-sql-small-image.png
کرتە لە وێنەکە بکە بۆ کردنەوەی بە گەورەیی.

Datatype، لە MySQL دەکرێت چەندین شێوازی زانیاری پاشەکەوت بکرێت، بۆ نموونە دەقی ئاسایی، ڕێکەوت، ژمارە و هتد... لە نێو خانەی Datatype شێوازی درووست بۆ زانیارییەکە هەڵبژێرە. کاتێک دەمانەوێت لە نێو خانەی id تەنیا ژمارە پاشەکەوت بکەین، درووستە کە جۆری INT کە کورتکراوەی  INTEGER ـە پێناسی ئەوە دەکات کە خانەی id  تەنیا ژمارە لە خۆ دەگرێت، لە ٠ تا ٤٢٩٤٩٦٧٢٩٥، وەک دەبینین توانای لە خۆ گرتنی ژمارەیەک زۆر ژمارەی هەیە.
زانیاری زۆرتر سەبارەت بە شێوازەکانی داتا لە MySQL لە بەستەری خوارەوە هەیە،
http://dev.mysql.com/doc/refman/5.0/en/data-types.html

لە هەمان کاتدا خانەیەک درووست دەکەین کە بە شێوەیەکی خۆکارانە ژمارەیەک بۆ هەر ئەندامێک درووست بکات ناوی خانەکە id دەبێت، ژمارەکان دەبێت دووبارە نەبنەوە، واتە دوو ئەندام هەمان ژمارەیان نەبێت هەروەها ژمارەکان بە شێوەیەکی خۆکارانە زۆر بن، واتە ئەگەر ئەندامێک ژمارەی ٣ ی هەبوو، ئەندامی دوای ئەو ڕاستەوخۆ و خۆکارانە ژمارەی ٤ ی بدرێتێ. لە نێو هەڵبژاردەی Default  دەبێت AUTO_INCREMENT هەڵبژێرین بۆ سەپاندنی ئەو کردارە. کرتەی ڕاست بکە سەر خانەی id و لە هەنگاوی یەکەم Primary  هەڵبژێرە، هەمان هەنگاو دووبارە بکەوە و ئەمجار Unique هەڵبژێرە. لە خوارەوە کرتە لە دووگمەی Save بکە بۆ پاشەکەوت کردنی ڕێکخستنەکان و درووستکردنی Table و Field ـەکان.

فرمانی درووستکردنی Table  و Field ـەکانی سەرەوە وەک خوارەوە دەبێت،

CREATE TABLE `endam` (
    `naw` VARCHAR(150) NULL COMMENT 'خانەی تایبەت بە ناو' COLLATE 'utf8_unicode_ci',
    `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'ژمارەی ئەندام',
    INDEX `id` (`id`)
)
COLLATE='utf8_unicode_ci'
ENGINE=InnoDB;
SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='test_database';
SHOW TABLE STATUS FROM `test_database`;
SHOW FUNCTION STATUS WHERE `Db`='test_database';
SHOW PROCEDURE STATUS WHERE `Db`='test_database';
SHOW TRIGGERS FROM `test_database`;
SHOW EVENTS FROM `test_database`;
SHOW CREATE TABLE `test_database`.`endam`;

بۆچی گرینگە کە شێوازی درووست بۆ ڕیزکردن هەڵبژێرم؟ جیاوازی نێوان utf8_general_ci لەگەڵ utf8_unicode_ci چییە؟

بۆ ڕوونتر بوونەوەی جیاوازییەکە، لە نێو ئەو خشتەیەی کە درووستمان کرد چەند ناوێکم/ وشەیەکم تۆمار کردووە

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/sample-data-names-mysql-database.png

کۆمەڵ، باران، کاڵا، ئاکۆ، ئەحمەد، بێخەو، کاک، ئێوارە، ئێمە، ئیمان  لە لیستەکەدا هەن. ئەگەر خانەی naw لەسەر بنەمای utf8_general_ci ڕیز بکرێت ئەو کات ناوەکان بە شێوازی خوارەوە دەردەکەون،
"ئاکۆ"
"ئیمان"
"ئێمە"
"ئێوارە"
"ئەحمەد"
"باران"
"بێخەو"
"کاک"
"کاڵا"
"کۆمەڵ"

ڕیزکردنی سەرەوە کێشەیەکی هەیە، ئەحمەد دەبێت پاش ئاکۆ بێت، بەڵام چوونکە utf8_general_ci لەسەر بنەمای ستانداردی یونیکۆد و نرخی یونیکۆدی پیتەکان کرداری ڕیزکردن جێبەجێ ناکات کێشەی وەک سەرەوە درووست دەبێت. کێشەکە گەورەتر دەبێت ئەگەر زانیارییەکان زۆرتر بن.

هەمان لیستە ڕیز دەکەینەوە بەڵام لەسەر شێوازی utf8_unicode_ci،
"ئاکۆ"
"ئەحمەد"
"ئیمان"
"ئێمە"
"ئێوارە"
"باران"
"بێخەو"
"کاک"
"کاڵا"
"کۆمەڵ"

وەک ڕوونە شێوازی دووەم درووستە چوونکە utf8_unicode_ci بە پێچەوانەی general_ci لەسەر بنەمای نرخی پیتەکان ڕیز دەکات، هەر پیتێک نرخێکی تایبەتی هەیە لە خشتەی پیتەکانی یونیکۆد، بە ئەو هۆکارەش شێوازی دووەم ڕیزکردنی تەواو و درووست جێبەجێ دەکات.

تێبینی ئەوە بکە ئەگەر بنکەی دراوەکەت بۆ زمانێکی دیکەی وەک سویدی بێت دەبێت خشتەی utf8_swedish_ci هەڵبژێریت بۆ ئەوەی ڕیزکردنی بە درووستی کار بکات.

ئەگەر دەتەوێت ئەنجامەکان خێرا دەربکەون utf8_general_ci خێراترە، ئەگەر دەتەوێت ڕیزکردن درووست بێت دەبێت utf8_unicode_ci هەڵبژێریت.

تا ئێستا بنکەیەکی دراوەمان درووستکردووە بە ناوی test_database، لە نێویدا خشتەیەکمان درووستکردووە بە ناوی endam و لە نێو خشتەکەدا دوو خانەمان درووست کردووە یەکەم بە ناوی naw و دووەم بە ناوی id بۆ لە خۆ گرتنی ناو و ژمارەی ئەندامان.

هەنگاوی داهاتوو: چۆنیەتی پەیوەندی کردن لە PHP ـەوە لەگەڵ بنکەی دراوەی test_database و ڕیزکردنی ئەو ناوانەی کە لە بنکەی دراوە پاشەکەوت کراون.

لە PHP پێوەکراوێکی تایبەت هەیە بە ناوی mysql_connect کە پەیوەندیکردن لەگەڵ بنکەیەکی دراوەی MySQL ئاسان دەکاتەوە و هەندێک زانیاری لەگەڵ ئەو پێوەکراوە دەنووسرێت بۆ پەیوەندی درووستکردن.

mysql_connect('HOSTNAME/IP', 'DATABASE USERNAME', 'PASSWORD’);

زانیارییەکانی بنکەی دراوەمان دەنووسین،

mysql_connect('localhost', 'root', '');


MySQL لەسەر ڕاژەکاری نێوخۆیی بە شێوەی ئاسایی وشەی نهێنی نییە، خانەی تایبەت بە PASSWORD بەتاڵ دەمێنێتەوە.

نووسینی فرمانی پەیوەندیکردن بە زمانی PHP وەک خوارەوە دەبێت،

<?php
$binkey_dirawe = mysql_connect('localhost', 'root', '');
if (!$binkey_dirawe) {
    die('نەتوانرا پەیوەندی بکرێت بە بنکەی دراوە: ' . mysql_error());
}
echo 'پەیوەندی کردن سەرکەوتوو بوو';
mysql_query("SET NAMES 'UTF8'");
?>

تێبینی: گرینگە کە

mysql_query("SET NAMES 'UTF8'");


بەکار ببرێت بۆ سەپاندنی شێوازی UTF-8 بۆ تۆمارکردن و پیشاندانی زانیاری لە بنکەی دراوە، ئەگەر ئەو کارە جێبەجێ نەکرێت نووسراوە کوردییەکان بە هێمای پرسیار دەردەکەون.

دواترین کۆدی سەرەوە لە نێو پەڕگەیەک بە پاشگری .php  پاشەکەوت بکە، بۆ نموونە db.php و لەسەر ڕاژەکاری نێوخۆیی تاقی بکەوە. بۆ نموونە http://localhost/db.php، ئەگەر پەیامی پەیوەندی کردن سەرکەوتوو بوو دەرکەوت، ئەوە دەگەیەنێت زانیارییەکانی پەیوەندی کردن درووست بوون و پەیوەندییەکە دەستەبەر کراوە. وەڵامی دیکەی ڕاژەکار ئەوە دەبێت کە نەتوانرا پەیوەندی بکرێت بە بنکەی دراوە و هۆکاری پەیوەندی نەبوون دەنووسرێت.

چەند کرداری سەرەکی MySQL هەن کە لە زۆربەی پرۆژەکان پێویستمان بە بەکاربردنیان دەبێت، Select, Insert, Update, Delete سەرەکی ترین ئەو کردارانەن.

SELECT، بەکار دەبرێت بۆ داواکردن، پیشاندان و ڕیزکردنی زانیاری پاشەکەوت کراو لە بنکەی دراوە. بۆ نموونە ئەگەر بمانەوێت ناوەکانی نێو خشتەی endam پیشان بدەین، فرمانی خوارەوە بەکار دەبەین.

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/select-data-from-mysql-database-heidi-sql.png

لە بەشی Query داواکارییەکەمان دەنووسین، پاشان بە پەنجە نان بە F9 داوکارییەکە دەنێرین بۆ بنکەی دراوە.
فرمانی SELECT کاری سەرەکی بانگکردنی زانیارییەکان جێبەجێ دەکات، لە هەمان کاتدا دەتوانین تایبەتمەندیی دیکەی لەگەڵ بەکار ببەین بۆ باشتر داڕشتنی داوکارییەکەمان. بۆ نموونە ئەگەر بمانەوێت تەنیا ٥ ناو لە لیستەکە پیشان بدەن،

SELECT naw, id FROM endam LIMIT 5

ئەگەر بمانەوێت ناوەکان لەسەر بنەمای ئەلف و بێ ڕیز بکەین بەڵام لە کۆتاوە بۆ سەرەتا واتە لە ێ بۆ ئـ، دەنووسین،

SELECT naw, id FROM endam ORDER BY naw DESC LIMIT 5

DESC کورتکراوەی descending ـە و لە کۆتا پیت بۆ سەرەتا ڕیز دەکات.
ASC  کورتکراوەی ascending و لە یەکەم پیتەوە بۆ کۆتا پیت ڕیز دەکات. (ئەمە شێوازی بنەڕەتیی ڕیز کردنە ئەگەر بۆ خۆت ئاماژەی پێنەدەیت کە چۆن زانیارییەکان ڕیز بکرێن).
LIMIT دانانی سنوورە بۆ ئەوەی چەند ROW/ دێڕ پیشان بدرێت، هەر ناوێک وەک دێڕێک دەژمێردرێت.
LIMIT 5 تەنیا ٥ ناو پیشان دەدات. بەڵام LIMIT 5,3 ٣ ناو پیشان دەدات، لە پێنجەمین ناوەوە دەست پێدەکات، واتە لە سەرەتای خشتەکەوە دەست پێناکات.

نموونەی فرمانی SELECT لەگەڵ PHP

١، دەبێت پەڕگەی db.php  بانگ بکرێت کە کاری پەیوەندی کردن جێبەجێ دەکات.
٢، دەبێت ئەو بنکەی دراوە هەڵبژێرین کە کاری لەگەڵ دەکەین، نموونەی ئەم بابەتە test_database ـە.
٣، داواکاری دەنێرین بۆ بنکەی دراوە.

<?php

// پەیوەندی کردن لەگەڵ بنکەی دراوە
require_once("db.php");

// هەڵبژاردنی بنکەی دراوە
mysql_select_db("test_database") or die(mysql_error());

// ناردنی داواکاری SELECT
$result = mysql_query("SELECT naw, id FROM endam")

// ئەگەر کێشەیەکی تەکنیکی لە داواکارییەکەمان هەبوو، هەڵەیەک پیشان دەدات و بەردەوامبوونی کۆدەکەمان ڕادەگرێت
or die(mysql_error());  

// تا ئەوەندەی کە ناو هەیە لە بنکەی دراوە دێڕ درووست بکرێت و پیشان بدرێت، ئەگەر ٥ ناو هەبێت ٥ ناو پیشان دەدرێت، ئەگەر ١٠٠ ناو هەبوو هەمووی پیشان دەدرێت
while($row = mysql_fetch_array( $result )) {
    echo '<a href="update.php?id='.$row['id'].'">دەستکاری</a>   |   <a href="delete.php?id='.$row['id'].'">سڕینەوە</a>          '.$row['naw'];
    echo "<br />";
}

?>

ئەنجامی داوکاری سەرەوە لە وێبگەڕدا،

https://www.webchin.org/v3-images/babet/mysql-penase-u-bekarhenan/select-data-from-database-mysql.png

لە لیستەکەدا دوو دووگمەمان درووست کردووە بۆ دەستکاری و سڕینەوەی ناوێک کە لە بەشەکانی داهاتوودا بەکاریان دەبەین.

INSERT، بۆ ناردنی زانیاری بۆ بنکەی دراوە بەکار دەبرێت، لە بەکاربردندا جیاوازی ئەوتۆی نییە لەگەڵ SELECT، بەڵام چەند تایبەتمەندییەکی تایبەت بە خۆی هەیە. ئەگەر بمانەوێت ناوێکی نوێ بۆ خشتەی ئەندامان زۆر بکەین، فرمانەکە بە شێوازی خوارەوە دەبێت.

INSERT INTO endam (naw) VALUES('ئاسۆ');

تێبینی ئەوە بکە لە فرمانی سەرەوە ئاماژەمان بە نرخی id نەداوە، چوونکە ئەو خانەیە خۆکارانە کار دەکات و ژمارەی نوێی و بێ وێنە درووست دەکات.

فرمانی سەرەوە ناوی ئاسۆ لە لیستەکە تۆمار دەکات و بەرزترین ژمارەی دەردرێتێ، ئەگەر دواترین ناو کە پێش ئاسۆ تۆمار کرابێت ژمارەی id ژمارە ١٣ بێت، ئاسۆ ژمارە ١٤ وەردەگرێت.

هەمان فرمان لەگەڵ PHP دەنووسینەوە،

<?php
// پەیوەندی کردن لەگەڵ بنکەی دراوە
require_once("db.php");

// هەڵبژاردنی بنکەی دراوە
mysql_select_db("test_database") or die(mysql_error());

// ناردنی داواکاری INSERT

$result = mysql_query("INSERT INTO endam (naw) VALUES('ئاسۆ')")

// ئەگەر کێشەیەکی تەکنیکی لە داواکارییەکەمان هەبوو، هەڵەیەک پیشان دەدات و بەردەوامبوونی کۆدەکەمان ڕادەگرێت
or die(mysql_error());  
?>

کۆدی سەرەوە لە وێبگەڕدا هیچ نووسینێک پیشان نادات، چوونکە ئاماژەمان نەداوە کە پاش تۆمارکردنی زانیارییەکە لە بنکەی دراوە چی ڕووبدات، چی ڕووبدات دەگەڕێتەوە سەر پێداویستی پرۆژەکەت.

بەکاربردنی INSERT وەک لە نموونەی سەرەوە ڕوونکراوەتەوە شێوازێکی کرداری نییە کە لە زۆر پرۆژەیەک بەکار ببرێت، لە هەندێک کاتدا کاری خۆی جێبەجێ دەکات، بەڵام زۆرینەی کاتەکان دەمانەوێت زانیاری نێردراو لە فۆرمێکەوە بنێرین بۆ بنکەی دراوە، بۆ نموونە فۆرمێکمان هەبێت کە بتوانین ناوی ئەندامی تێدا بنووسین و بە کرتە کردن لە دووگمەیەک بنێردێتە نێو بنکەی دراوە. نموونەی خوارەوە ئەو کارە جێبەجێ دەکات.


<?php
// چێک کردن، ئەگەر فۆرمەکە نێردرابێت Submit کرابێت، ئەو کات هەوڵی ناردنی زانیارییەکان جێبەجێ بکات.
if(isset($_POST['submit'])){
// پەیوەندی کردن لەگەڵ بنکەی دراوە
require_once("db.php");

// هەڵبژاردنی بنکەی دراوە
mysql_select_db("test_database") or die(mysql_error());

// ناردنی داواکاری SELECT

$naw = $_POST['naw'];
$result = mysql_query("INSERT INTO endam (naw) VALUES('$naw')")
// ئەگەر کێشەیەکی تەکنیکی لە داواکارییەکەمان هەبوو، هەڵەیەک پیشان دەدات و بەردەوامبوونی کۆدەکەمان ڕادەگرێت
or die(mysql_error()); 
echo "ناو بە سەرکەوتوویی پاشەکەوت کرا";
}
?>

<!DOCTYPE html>
<html>

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>تۆمارکردنی ناو</title>
</head>

<body>
<form name="naw" id="endam" action="" method="POST">
<label for="naw">ناو
<input name="naw" id="naw" type="text" />
</label>
<input type="submit" value="پاشەکەوتکردن" name="submit" />
</form>
</body>

</html>

کۆدەکانی سەرەوە لە نێو پەڕگەیەک بە ناوی insert.php  پاشەکەوت بکە.
لە نموونەی سەرەوە پەڕەکە لە بەشێک کۆدی PHP و بەشێکی دیکە HTML پێکهاتووە، لە بەشی HTML فۆرمێکی سادەمان داڕشتووە کە خانەیەک و دووگمەیەکی هەیە بۆ نووسین و ناردنی ناوی ئەندام بۆ بنکەی دراوە.

لە کۆدەکانی PHP یەکەم کار چێک کردنی ئەوەیە کە ئایا فۆرمەکە نێردراوە یان نەخێر، ئەگەر فۆرمەکە نێردرابوو یان Submit کرابوو، پاشان هەوڵی تۆمارکردنی زانیارییەکان دەردرێت لە نێو بنکەی دراوە. کۆدەکانی سەرەوە کاری وەرگرتن و ناردنی ناوی ئەندام بۆ بنکەی دراوە بە درووستی جێبەجێ دەکەن، بەڵام چەند کێشەیەکی هەیە، یەکەم ئەو زانیارییەی کە دەنووسرێت کۆنترۆڵ ناکرێت، واتە لە نێو خانەی ئەندام هیچ نەنووسرێت و فۆرمەکە Submit بکرێت ئەو کات کۆدەکانی PHP دەست بە کاری خۆیان دەکەن، لە هەنگاوی یەکەم دا فرمانێکی سادە دەنووسین بۆ چێک کردن و دڵنیا بوون لەوەی کە خانەی ناو بە بەتاڵی نەنێردێت. ئەگەر بەتاڵ بوو پەیامێک پیشان دەدرێت و بەردەوامبوونی کۆدەکان ڕادەگرێت.

// چێک کردن، ئەگەر فۆرمەکە نێردرابێت Submit کرابێت، ئەو کات هەوڵی ناردنی زانیارییەکان جێبەجێ بکات.
if(isset($_POST['submit'])){

if(empty($_POST['naw'])){
echo "<strong> خانەی ناو نابێت بەتاڵ بێت </strong>";
exit();
               }
         ……
        ……..

کۆدەکانی سەرەوە کێشەیەکی دیکەیان هەیە لە ڕوانگەی پاراستنەوە، SQL Injection. لە کۆتایی بابەتەکەدا لە بەشێکی تایبەت زۆرتر ڕوون دەکرێتەوە.

Update، بۆ نوێکردنەوەی زانیاری پاشەکەوت کراو لە بنکەی دراوە.
ئەگەر بمانەوێت ناوە تۆمارکراوەکان لە بنکەی دراوە دەستکاری بکەیت دەتوانن ڕاستەوخۆ لە نێو پرۆگرامی HeidiSQL  بە فرمانی Update  ئەو کارە جێبەجێ بکەین، لە بەشی Data ناوەکان دەردەکەون و بە دوو جار کرتە کردن لە سەریان دەتوانرێت دەستکاری بکرێن. بەڵام شێوازێکی ئاسایی تر ئەوەیە کە ڕاستەوخۆ لە فۆرمێکەوە هاوشێوەی تۆمارکردنی ناوی نوێ، بتوانرێت دەستکاری ئەو ناوانەش بکرێن کە تۆمار کراون.


دەتوانین هەمان کۆدەکانی HTML  ی پەڕەی تایبەت بە insert.php بەکار ببەین و بەشی PHP بگۆڕین بۆ کۆدەکانی خوارەوە،

<?php
// چێک کردن، ئەگەر فۆرمەکە نێردرابێت Submit کرابێت، ئەو کات هەوڵی ناردنی زانیارییەکان جێبەجێ بکات.
if(isset($_POST['submit'])){

if(empty($_POST['naw'])){
echo "<strong> خانەی ناو نابێت بەتاڵ بێت </strong>";
exit();
}
// پەیوەندی کردن لەگەڵ بنکەی دراوە
require_once("db.php");

// هەڵبژاردنی بنکەی دراوە
mysql_select_db("test_database") or die(mysql_error());

// ناردنی داواکاری SELECT

$naw = $_POST['naw'];
$id = $_GET['id'];
$result = mysql_query("UPDATE endam SET naw = '$naw' WHERE id = '$id'")
// ئەگەر کێشەیەکی تەکنیکی لە داواکارییەکەمان هەبوو، هەڵەیەک پیشان دەدات و بەردەوامبوونی کۆدەکەمان ڕادەگرێت
or die(mysql_error()); 
echo "ناو بە سەرکەوتوویی نوێکرایەوە";
}
?>

لە ژێر ناوی update.php   پاشەکەوتی بکە، لە پەڕەی select.php کرتە لە دەستکاری بکە لە تەنیشت یەکێک لە ناوەکان. لە فۆرمی گۆڕین دا دەستکاری بکە و پاشەکەوتی بکە. دەبینین کە ناوەکە بە سەرکەوتوویی دەگۆڕدرێت.

فرمانی UPDATE لە کۆدەکانی سەرەوە،

UPDATE endam SET naw = '$naw' WHERE id = '$id'

بە وشەی UPDATE  دەست پێدەکات، و بە ڕاژەکار دەڵێت کە بنکەی لە خشتەی endam ناوی ئەندام بگۆڕێت لە کاتێکدا کە ژمارەکەی یەکسان دەبێت بە $id، لە نێو کۆدەکانی سەرەوە $id یەکسانە بە ئەو ژمارەیەی کە لە پاش بەستەرەوە نووسراوە، واتە update.php?id=1 ژمارەی $id یەکسان دەکات بە ١.  ئەگەر ژمارەیەک بنووسرێت کە درووست نەبێت ئەو کاتە هەڵەیەک پیشان دەدرێت و کردارەکە جێبەجێ نابێت.

DELETE، بۆ سڕینەوەی زانیاری پاشەکەوت کراو لە نێو بنکەی دراوە.
فرمانی سڕینەوە لە شێوازی نووسینەوە هاوشێوەی UPDATE ـە بەڵام هەندێک تایبەتمەندی تایبەت بە خۆی هەیە. بۆ نموونە ئەگەر بمانەوێت ئەندامێک بسڕینەوە کە ژمارەی id لە نێو بنکەی دراوە یەکسان بێت بە ١، دەتوانین فرمانەکە ڕاستەوخۆ لە نێو بەشی Query بنووسین بە شێوازی خوارەوە،


DELETE FROM endam WHERE id = 1

هەمان فرمانی سەرەوە لەگەڵ PHP دەنووسینەوە،

<?php
// چێکردنی ئەوەی کە ئایا ژمارەی ئەندام لە بەستەردا نووسراوە  یان نەخێت؟
if(!empty($_GET['id'])){

// پەیوەندی کردن لەگەڵ بنکەی دراوە
require_once("db.php");

// هەڵبژاردنی بنکەی دراوە
mysql_select_db("test_database") or die(mysql_error());

// ناردنی داواکاری DELETE
$id = $_GET['id'];
$result = mysql_query("DELETE FROM endam WHERE id = '$id'")
// ئەگەر کێشەیەکی تەکنیکی لە داواکارییەکەمان هەبوو، هەڵەیەک پیشان دەدات و بەردەوامبوونی کۆدەکەمان ڕادەگرێت
or die(mysql_error()); 
echo "ناو بە سەرکەوتوویی سڕایەوە";
}
// ئەگەر ژمارەی ئەندام لە بەستەردا نەنووسرابوو، پەیامی خوارەوە پیشان دەدرێت و هیچ جێبەجێ ناکرێت
else{
echo 'تکایە ژمارەی ئەندامێک بنووسە بۆ سڕینەوەی';
}
?>

زۆرتر سەبارەت بە MySQL
لە سەرەوە هەنگاو و کردارە بنەڕەتییەکانی MySQL ڕوونکراوەتەوە و سەرەتایەکە بۆ درووست داڕشتنی بنکەیەکی دراوە، هەروەها پاشەکەوت کرد، پیشاندان، دەستکاریکردن و سڕێنەوەش. کۆدەکانی سەرەوە دەکرێت بە چەند شێوازێک باشتر و پارێزراوتر بکرێن،

1.    کاتێک لەگەڵ یەک بنکەی دراوە کار دەکەیت باشتر وایە ناوی بنکەی دراوە کە لەگەڵ mysql_select_db هەڵیدەبژێریت لەگەڵ کۆدەکانی پەیوەندی کردن لە نێو پەڕگەی db.php  بینووسیت. ئەو کات دووبارە نووسینەوەی ناوی بنکەی دراوە پێویست ناکات لە نێو پەڕگەکانی دیکە.

2.    JavaScript یان شێوازی دیکە بەکار مەبە بۆ پاراستن و بڕیاردان لەوەی چ جۆرە زانیارییەک دەنێردرێت بۆ بنکەی دراوە. باوەڕت بە بەکارهێنەر Client  نەبێت. تا دەکرێت Server Side واتە لەسەر ڕاژەکار چێک بکە بۆ ئەوەی دەسەڵاتت هەبێت بەسەر هەموو پرۆسەکە.

3.    هەموو زانیارییەک کە بەکارهێنەر دەینێرێتە بنکەی دراوە پێویستە چێک بکرێت، جا ئەو زانیارییە پێکهاتووە لە ژمارە، ڕێکەوت یان دەقی ئاسایی. مەبەست لە زانیارییەکانی وەک GET و POST ـە کە ئاسایی ترین شێوازی ناردنی زانیاریین بۆ بنکەی دراوە. لە نموونە کۆدەکانی سەرەوە هەموو زانیارییەکانی نێو خانەی naw وەک خۆیان دەنێردرێن بۆ بنکەی دراوە، ئەگەر بەکارهێنەر لە نێو خانەی ناو نووسیبێتی ”ئاکۆ”، وشەی ئاکۆ وەک خۆی بەڕێ دەکرێت بۆ بنکەی دراوە، هەروەها ئەگەر لە باتی ئاکۆ  بنووسێت     

"'OR 1'"

هەمان کۆد وەک خۆی دەنێردێت بۆ ڕاژەکار کە مامەڵەی لەگەڵ بکات. ئاکۆ تەنیا نووسراوەیەکی ئاسایی و پاشەکەوت دەبێت، بەڵام کۆدی دووەم فرمانێک دەدات بە MySQL کە کارێکی دیکە جێبەجێ بکات. MySQL Injection کێشەیەکی بەربڵاوە و گرینگە لە کاتی کۆد نووسین و سەرەتای دەستپێکردنی پرۆژەکەت ڕەچاوی بکەیت و بە درووستی جێگیر بکرێت.
لە بەستەری خوارەوە هەندێک ڕێنمایی و نموونەی زۆرتر سەبارەت بە SQL Injection هەیە کە MySQL ئامادەی کردووە،
http://goo.gl/1BHZJ

بۆ ڕێگرتن لەوەی کە بەکارهێنەر زانیاری و فرمانی نەویستراو ڕەوانەی بنکەی دراوە بکات، PHP چەندین فرمان و تایبەتمەندی هەیە کە کارەکە زۆر ئاسان دەکەنەوە، بۆ نموونە ئەگەر بمانەوێت دڵنیابین کە لە نێو خانەی naw لە نێو فۆرمەکانی سەرەوە زانیاری زیانبەخش و فرمانی نەویستراو ڕەوانەی بنکەی دراوە بکرێت سوود لە فرمانی mysql_real_escape_string ببینین، شێوازی بەکاربردن،
زانیاری نێردراو لە فۆرمەوە بە نەپارێزراوی:

$naw = $_POST['naw'];

هەمان کۆد بە پارێزراوە و نەهێشتنی کێشەی پاراستن لە کۆدەکانی سەرەوە،

$naw = mysql_real_escape_string($_POST['naw']);

لە هەر شوێنێک مامەڵە لەگەڵ زانیاری نێردراو لە لایەن بەکارهێنەرەوە جێبەجێ دەکرێت گرینگە کە  mysql_real_escape_string بەکارببرێت.

4.    کاتێک خانەی id تەنیا ژمارە لە خۆ دەگرێت کارێکی درووستە کە زانیارییەکانی پەیوەندیدار وەک ژمارە پێناس بکرێت بۆ کەمکردنەوەی ئەگەری درووستبوونی کێشە، بۆ نموونە لە نێو هەر Query  ـەک کە ئاماژە بە ژمارەیەک دراوە کە لە لایەن بەکارهێنەرەوە دەتوانرێت بگۆڕدرێت بە شتێکی دیکە، بە شێوازی خوارەوە وەک ژمارە پێناسی بکە.

mysql_query("UPDATE endam SET naw = '$naw' WHERE id = '".intval($id)."'")

زانیاری زۆرتر سەبارەت intval لە بەستەری خوارەوە هەیە،
http://php.net/manual/en/function.intval.php

FILTER_VALIDATE_INT تایبەتمەندییەکی دیکەیە کە ژمارە بوونی ژمارەیەک دەسەلمێنێت.
ئەنجامی هەردوو،

print intval('deq');
print intval('0');

دەبێتە 0 و 0. بەڵام پێش ئەوەی deq بنێرین بۆ نێو Query ـەکەمان،  دەتوانین بە FILTER_VALIDATE_INT چێکی بکەین، ئەگەر ژمارە بوو ئەو کاتە بنێردێتە نێو Query.

<?php
$id = intval('deq');
if (filter_var($id,FILTER_VALIDATE_INT,
    array(
        'options' => array(
            'min_range' => 1,
            'max_range' => 10 ))))
{
// ئەگەر ژمارە بوو و هەروەها لە نێوان ١ و ١٠ بوو ئەو کاتە بەردەوام دەبێت لە جێبەجێکردنی Query
echo "ژمارەیە";
}
else{
echo "ژمارە نییە";
exit();
}
?>

لە نموونەی سەرەوە نرخی id نووسراوەی deq ـە. واتە لە باتی ژمارە وشەی deq ی لە خۆ گرتووە. لە ئەو کاتەدا پەیامی ژمارە نییە دەردەکەوێت و Query جێبەجێ نابێت.

بەڵام ئەگەر وشەی deq بگۆڕین بۆ ژمارەیەک لە نێوان ١ تا ١٠ پەیامی ژمارەیە دەردەکەوێت، لە ئەو کاتەدا Query جێبەجێ دەکرێت.
لە نموونەکەدا min_range و max_range وەک هەڵبژاردە بۆ FILTER_VALIDATE_INT نووسراون، کە دەکرێت بەکار نەبرێن ئەگەر پێویستی نەکرد.

5.    کاتێک ماڵپەڕێک/پرۆژەیەک بنیاد دەنێیت و زانیارییەکان لە نێو بنکەیەکی دراوەی MySQL پاشەکەوت دەبن، پێویستە بە پێی پێویست Backup ی ئەو بنکەی دراوە بکەیت بۆ ئەوەی لە کاتی درووستبوونی هەر کێشەیەک بتوانیت زانیارییەکان بگەڕێنیتەوە. لە پرۆگرامی وەک HeidiSQL دەتوانیت بە ئاسانی ئەو کارە جێبەجێ بکەیت. کرتەی ڕاست بکە سەر ناوی بنکەی دراوە test_database و دواتر Export Database As SQL File کرتە بکە. لە کاتی Export کردن هەردوو Structure و Data هەڵبژێرە. دەتوانیت پرۆسەکە خۆکارانە بکەیتەوە کە لە بەستەری خوارەوە ڕوونکراوەتەوە.
https://www.webchin.org/index.php?besh=dreje&id=94

لە ڕاژەکارەکانی خانەخوێکردنی ماڵپەڕ Web Hosts، زۆربەی کات پرۆگرامۆکەی PhpMyAdmin هەیە کە هەمان کار جێبەجێ دەکات.
6.    کاتێک کلیلە وشەکانی MySQL دەنووسیت، هەموو کات بە پیتی گەورە بنووسە. بۆ نموونە کاتێک وشەی INSERT یان UPDATE لە نێو Query ـەک دەنووسیت، پیتی گەورە بەکار ببە. هەمان شێواز بۆ هەموو تایبەتمەندییە سەرەکییەکانی MySQL.



زۆرتر لە کوێ هەیە؟
ماڵپەڕی فەرمیی MySQL هەموو زانیارییەکی پێویستی لە خۆ گرتووە،
http://dev.mysql.com/doc/refman/5.0/en/tutorial.html

هەروەها لە هەمان ماڵپەڕەوە دەتوانیت ئاگاداری وەشانە جیاوازەکانی MySQL بیت، لەگەڵ وەشانی نوێ گۆڕانکاری لە شێوازی کارکردن و فرمانەکانی MySQL پێکدێت، ئاگاداربوونەوە لە ئەو گۆڕانکارییانە پێویستە بۆ زیندوو و بێ کێشە ڕاگرتنی کارەکانت لە MySQL.
http://dev.mysql.com

هەموو کۆدە نووسراوەکانی سەرەوە لە پەڕگەی خوارەوە لەگەڵ نموونەی بنکەی دراوە هەن، کە دەتوانیت دایبگریت و تاقیکاری لەسەر بکەیت (قەبارە ٤ کیلۆبایت)،
https://www.webchin.org/v3-images/babet … -files.zip

دەتوانیت هەموو ئەم کۆرسە بە فۆرماتی PDF دابگریت بۆ چاپکردن یان خوێندنەوەی دەرهێڵ (قەبارە ٨١٦ کیلۆبایت)،
https://www.webchin.org/v3-images/babet … in-org.pdf

بۆچوون نووسین ناچالاك كراوه‌ بۆ ئه‌م بابه‌ته‌