گۆڕانکارییەکان

لە چاوگ
١٣٬٨٩٨ بایت زیاد کرا ،  ‏١٢:٣٥، ٢٠ی کانوونی دووەمی ٢٠١١
== سازکردنی MySQL==
ڕێکخستن و سازدانی هەڵسوڕانی MySQL لە پەڕگەی <source lang='bash'> /etc/mysql/my.cnf دا </source>ـدا پێناسکراون.
==شوێنی هەڵگرتنی بنکەدراوەکانی ==
</pre>
پاش پەیوەندی گرتن بە MySQLـەوە دەتوانی بنووسیت <tt>show databases</tt> تاوەکو ئەو بنکەی دراوەیە ببینیت کە درووست کراوە:
<presource lang='MYSQL'>
mysql> show databases;
+--------------------+
4 rows in set (0.17 sec)
mysql> </presource>
== سڕینەوە (فڕێدان)ـی بنکەی دراوە لە MySQL ==
== دیاریکردنی (selection) بنکەی دراوە لە MySQL ==
لە خاڵی پێشوودا ئەوە خرایەڕوو کە چۆن هەموو بنکەی دراوەکان پیشان دەدرێت لە MySQLـدا، ئێستا پێویستمان بەوەیە کە ئەو بنکەی دراوەی درووستمان کردووە دەست بکەین بەکارکردن لەسەری، چۆن؟ ئەوە بنووسە:
 <presource lang='MYSQL'>mysql> use chawg;
Database changed
mysql> </presource
<tt>use chawg</tt> بەمانای ئەوەی کە ئەمانەوێت بنکەی دراوەی chawg بەکارببەین. بۆئەوەی کە بنکەی دراوەیەکی تر بەکار ببەیت‌و لە chawg بێیتە دەرەوە ئەوە تەنها لە جیاتی chawg ناوی بنکەی دراوەی دیاری کراو بنووسە کە دەتەوێت بەکاری ببەیت.
بۆ نموونە ئێستا خشتەیەک درووست دەکەین کە پێک بێت لە دەستەی بەڕێوەبەرانی چاوگ، ناوی خشتەکە ئەنێین بەرپرسان (berpirsan):
<presource lang='MYSQL'>
CREATE TABLE Berpirsan (
B_Id int,
SHAR VARCHAR(100)
);
</presource>
== سڕینەوەی خشتە - Create Drop tables ==
سڕینەوەی خشتەیەک لە MySQLـدا زۆر ئاسانەو بەم شێوەیە دەکرێت:
mysql> DROP TABLE Berpirsan
Query OK, 0 rows affected (0.8 sec)
mysql>>
</source>
'''تێبینی:''' ئەوەی کەلەسەرەوە نووسراوە هەموو ئەو کردارانە دووبارە کراوەتەوە کە چۆن سەرەتا پەیوەندی دەگریت بە MySQLـەوەو پاشان بنکەی دراوەی چاوگ (chawg) دەست نیشان دەکەین چونکە ئێمە خشتەی (Berpirsan)ـانمان لەناو بنکەی دراوەی چاوگ (chawg) درووست کردووە.
 
==تێخستنی داوا - Insert Query==
مەبەست لە تێخستنی داوا <tt>Query</tt> ئەوەیە کە داتاکان بخەیتە ناو خشتەکەی کە درووست کراوە، بۆ ئەم مەبەستەش پێویست بەوە دەکات کە فەرمانی <tt>INSERT INTO</tt> بنوسیت، کڵێشەی تێخستنی دراوە (data)ـکان لە mysqlـدا بەم شێوەیە دەبێت:
<pre>
INSERT INTO nawi_xishteke ( field1, field2,...fieldN )
VALUES ( value1, value2,...valueN );
</pre>
 
مەبەست لە <tt>field</tt> بریتییە لە سەردێڕی خشتەکە بەواتای ئەوەی وەک لە درووست کردنی خشتە باسمان کردو خشتەیەکمان درووست کرد و لەوێدا هەریەک لە Naw, Naznaw, Nawnishan پێیان دەوترێ field.
مەبەست لە <tt>Value</tt> ئەوەیە کە نرخ دابنێین بۆ هەریەک لە fieldـەکان کە هەن لە خشتەکەدا.
 
هەموو ئەوانەی باسمان کرد لەسەرەوە لەو نموونەی خوارەوەدا دەیخەینە ڕوو:
<source lang='mysql'>mysql> show tables;
+-----------------+
| Tables_in_chawg |
+-----------------+
| Berpirsan |
+-----------------+
1 row in set (0.00 sec)
 
mysql> insert into Berpirsan
-> (B_Id, Naw, Naznaw, Nawnishan, Shar)
-> values
-> ("10345", "Kani", "Kurde", "Bextyari 59", "Suleymani");
Query OK, 1 row affected (0.00 sec)
 
mysql> select * from Berpirsan;
+-------+------+--------+-------------+-----------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+-------+------+--------+-------------+-----------+
| 10345 | Kani | Kurde | Bextyari 59 | Suleymani |
+-------+------+--------+-------------+-----------+
1 row in set (0.00 sec)</source>
 
==دیاریکردنی داوا - Select Query==
پاش ئەوەی چەند زانیارییەکی تر زیادکرد بۆ خشتەکەی کە هەیە، ئێستا لێرە ئەوە پیشان ئەدەین کە چۆن داوایەک دیاری ئەکەین لە خشتەکەدا.
بۆ نموونە دەمانەوێت هەموو زانیارییەکانی ناو خشتەی Berpirsan بهینینە بەردەست و پیشانی بدەین، ئەوە پێویستە ئەمە بنووسریت:
<source lang='mysql'>
mysql> select * from Berpirsan;
 
/* Encamî ewey serewe bem şêweye debêt */
 
+-------+--------+--------+-------------+------------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+-------+--------+--------+-------------+------------+
| 10346 | Kani | Kurde | Bextyari 59 | Suleymani |
| 548 | Arin | Nari | Shorsh | Chemchemal |
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
+-------+--------+--------+-------------+------------+
3 rows in set (0.00 sec)</source>
 
'''نموونەیەکەی تر:''' ئەگەر بخوازرێت تەنها زانیارییەکانی کە لەسەر Arin هەیە بدۆزینەوە ئەوە بەم شێوەیە ئەبێت:
 
<source lang='mysql'>mysql> SELECT * FROM Berpirsan
-> WHERE Naw='Arin';
 
+------+------+--------+-----------+------------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+------+------+--------+-----------+------------+
| 548 | Arin | Nari | Shorsh | Chemchemal |
+------+------+--------+-----------+------------+
1 row in set (0.02 sec)
 
mysql></source>
 
'''تێبینی:''' لەوێدا ئێمە <tt>Where</tt>ـمان بەکارهێناوە کە لەدواییدا باسی دەکەین.
 
==The WHERE Clause ==
<tt>Where</tt> لە MySQLـدا بەکاردێت بۆ ئەوەی ئەوە دەست نیشان بکەین‌و بیهێنینە دەرەوە لە خشتەیەک یان زیاتر کە ئەمانەوێت، زیاتر لەو نموونەی خوارەوەدا دەخەینەڕوو.
 
کڵێشەی بەکارهێنانی <tt>WHERE</tt> بەم شێوەیەیە:
<pre>
SELECT * FROM nawî xişteke
WHERE nawî stûnî operator value
</pre>
 
مەبەست لە ناوی ستونی لەوێدا column_nameـە.
 
'''نموونەی ۱:''' دۆزینەوەی ناوی "کاروان" و هەموو زانیارییەکانی تر لەسەری لە ناو بنکەی دراوەکەدا بەم شێوەیە دەکرێت بە بەکارهێنانی <tt>WHERE</tt> :
<source lang='mysql'>
mysql> SELECT * FROM Berpirsan
-> WHERE Naw = 'Karwan';
+------+--------+--------+-----------+-----------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+------+--------+--------+-----------+-----------+
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
+------+--------+--------+-----------+-----------+
1 row in set (0.00 sec)
 
mysql></source>
 
'''نموونەی ۲:''' ئەمجارە تەنها ئەمانەوێت B_Id, Naw, Naznaw دەربکەون بۆ ناوی "کاروان" کاتێک بەدوای زانیارییەکان دەگەڕێن، لەو کاتەدا ئەوانەی کە دەخوازرێت دەربکەوێت دەبێت بکرێتە دوای <tt>SELECT</tt>ـەوە:
<source lang='mysql'>mysql> SELECT B_Id, Naw, Naznaw FROM Berpirsan
-> WHERE Naw='Karwan';
+------+--------+--------+
| B_Id | Naw | Naznaw |
+------+--------+--------+
| 1223 | Karwan | Geo |
+------+--------+--------+
1 row in set (0.00 sec)</source>
 
==نوێکردنەوەی داوا - Update Query==
نوێکردنەوەی داوا لە بنکەی دراوەدا کارێکی گران نییەو کڵێشەی بەکارهێنانی بەم شێوەیەی خوارەوەیە:
<pre>
UPDATE nawi_xishteke SET field1=new-value1, field2=new-value2
[WHERE Clause]
</pre>
 
بۆ نموونە "کانی" لە سلێمانی نەماوەو ئێستا دانیشتووی سویدەو بەو جۆرە ناوونیشانیشی گۆڕاوە، بۆ ئەوەی زانیارییەکانی تازە بکەینەوە دەنووسین:
<source lang='mysql'>
mysql> UPDATE Berpirsan SET Nawnishan='TORSHAMNSGATAN 123', Shar='SWEDEN'
-> WHERE B_Id='10346';
Query OK, 1 row affected (0.04 sec)
Rows matched: 1 Changed: 1 Warnings: 0
 
mysql> SELECT * FROM Berpirsan;
+-------+--------+--------+--------------------+------------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+-------+--------+--------+--------------------+------------+
| 10346 | Kani | Kurde | TORSHAMNSGATAN 123 | SWEDEN |
| 548 | Arin | Nari | Shorsh | Chemchemal |
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
+-------+--------+--------+--------------------+------------+
3 rows in set (0.00 sec)</source>
 
'''تێبینی''' ئەوە بکە لەو نموونەیەی سەرەوەدا بۆ نوێکردنەوەی داواکە <tt>B_Id</tt>ـمان بەکاربردووە، بۆ؟ لەبەرئەوەی ئەکرێت لە بنکەی دراوەکەدا چەند کەسێک هەبێت ناوی "کانی" بێت کاتێکیش لەجیاتی <tt>B_Id</tt> ناوی Nawـی کانی بنووسی ئەوە هەر کەسێک بەو ناوەوە بێت ناوونیشانی ئەگۆڕدرێت کە ئەمەش هەڵە ئەبێت، بەڵام هەموو کەسێک IDـیەکی جیاوازی هەیەو ناکرێت لە یەک بچن.
 
==سڕینەوەی داوا - Delete Query==
کڵێشەی بەکارهێنانی سڕینەوەی داوا بەم شێوەیەیە لە MySQLـدا:
<pre>
DELETE FROM nawî xişteke [WHERE Clause]
</pre>
 
ئێستاکە دەمانەوێت Arin کە لە خشتەکەماندایە بسڕینەوەو چیدی لە لیستی بەرپرساندا نەمێنێت:
 
<source lang='mysql'>mysql> select * from Berpirsan;
+-------+--------+--------+--------------------+------------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+-------+--------+--------+--------------------+------------+
| 10346 | Kani | Kurde | TORSHAMNSGATAN 123 | SWEDEN |
| 548 | Arin | Nari | Shorsh | Chemchemal |
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
+-------+--------+--------+--------------------+------------+
3 rows in set (0.06 sec)
 
mysql> DELETE FROM Berpirsan WHERE B_Id = 548;
Query OK, 1 row affected (0.05 sec)
 
mysql> select * from Berpirsan;
+-------+--------+--------+--------------------+-----------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+-------+--------+--------+--------------------+-----------+
| 10346 | Kani | Kurde | TORSHAMNSGATAN 123 | SWEDEN |
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
+-------+--------+--------+--------------------+-----------+
2 rows in set (0.00 sec)
 
mysql></source>
 
==Like Clause==
<tt>Like clause</tt> کار ئاسانییەکی زۆر دەکات بۆ گەڕان لە بنکەی دراوەدا بە هەماهەنگی لەگەڵ <tt>WHERE Clause</tt>ـدا. بۆ نموونە ئەگەر تۆ بەدوای Kardanـدا بگەڕێیت ئەوە دەتوانی بڵێیت:
<pre>
WHERE Naw = 'Kardan'
</pre>
 
بەڵام ئەگەر بێت‌و بنکەدراوەیەکەی گەورەت هەبێت‌و چەندین هەزار ناوی تێدا بێت‌ وە بتەوێت لیستی هەموو ئەو ناوانە بهێنیتە بەردەست کە بە "کار - Kar" دەست پێدەکەن، ئەوە Like ئەو کارە بەئاسانی دەکات.
 
'''نموونەی ۱:''' گەڕان بەدوای ئەو ناوانەی کە بە سێ پیتی 'کار - kar' دەست پێ دەکەن:
 
<source lang='MYSQL'>mysql> select * from Berpirsan;
+-------+---------+---------+--------------------+-----------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+-------+---------+---------+--------------------+-----------+
| 10346 | Kani | Kurde | TORSHAMNSGATAN 123 | SWEDEN |
| 1001 | Saman | Shaswar | Mufti 32 | Suleymani |
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
| 1342 | Bervian | Hestyar | Mufti 32 | Hewler |
| 4325 | Kardan | Meriwan | Azadi 43 | Hewler |
| 9889 | Kawan | Serwer | Bextyari 86 | Suleymani |
| 4445 | Ashna | Serdar | Mellkendi 115 | Suleymani |
+-------+---------+---------+--------------------+-----------+
7 rows in set (0.00 sec)
 
mysql> SELECT * FROM Berpirsan WHERE Naw LIKE 'kar%';
+------+--------+---------+-----------+-----------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+------+--------+---------+-----------+-----------+
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
| 4325 | Kardan | Meriwan | Azadi 43 | Hewler |
+------+--------+---------+-----------+-----------+
2 rows in set (0.00 sec)
</source>
 
'''نموونەی ۲:''' گەڕان بەدوای ئەو نازناوانەی کە بە پیتی 'S' دەست پێ دەکەن:
 
<source lang='MYSQL'>mysql> SELECT * FROM Berpirsan WHERE Naznaw LIKE 'S%';
+------+-------+---------+---------------+-----------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+------+-------+---------+---------------+-----------+
| 1001 | Saman | Shaswar | Mufti 32 | Suleymani |
| 9889 | Kawan | Serwer | Bextyari 86 | Suleymani |
| 4445 | Ashna | Serdar | Mellkendi 115 | Suleymani |
+------+-------+---------+---------------+-----------+
3 rows in set (0.00 sec)</source>
 
==ORDER BY Clause==
لەکاتێکدا ئێمە داوامان لە MySQLـکرد کە زانیاری هەموو کەسەکانمان بۆ بهێنێت کەلە بنکە دراوەکەدا هەن بە بەکار‌هێنانی <tt>SELECT</tt>، لەم کاتەدا بینینی هەموو زانیارییەکان بەشێوەیەکی ناڕیزکراو دێنە بەردەست بۆئەوەی بەشێوەیەکی ڕیزکراو هەموو زانیارییەکان ببینین ئەوە <tt>ORDER BY</tt> بەکاردەبەین تاوەکو لە A - Z ڕیزی بکات.
کڵێشەی بەکارهێنانی ORDERED BY بەم شێوەیەیە:
<pre>
SELECT field1, field2,...fieldN nawi_xishteke,
ORDER BY field1, [field2...] [ASC [DESC]]
</pre>
 
مەبەست لە ASC = ascending و لە DESC = descending. خۆی بەبنەڕەت ASC ـە بەواتای ڕیزکردن لە Aـەوە بۆ Z، ئەوی تر بە پێچەوانەوە.
 
'''نموونە:''' ڕیزکردن لەم نموونەیەدا بەپێی ناوەکان هاتووە.
<source lang='MYSQL'>mysql> SELECT * FROM Berpirsan ORDER BY Naw ASC;
+-------+---------+---------+--------------------+------------+
| B_Id | Naw | Naznaw | Nawnishan | Shar |
+-------+---------+---------+--------------------+------------+
| 6434 | Amanc | Moferi | Germyan 10 | Chemchemal |
| 4445 | Ashna | Serdar | Mellkendi 115 | Suleymani |
| 1342 | Bervian | Hestyar | Mufti 32 | Hewler |
| 10346 | Kani | Kurde | TORSHAMNSGATAN 123 | SWEDEN |
| 4325 | Kardan | Meriwan | Azadi 43 | Hewler |
| 1223 | Karwan | Geo | Rizgari 3 | Suleymani |
| 9889 | Kawan | Serwer | Bextyari 86 | Suleymani |
| 1001 | Saman | Shaswar | Mufti 32 | Suleymani |
+-------+---------+---------+--------------------+------------+
8 rows in set (0.02 sec)
 
mysql>
</source>
 
==بەکارهێنانی Join==
تاوەکو ئێستا تەنها زانیاریمان بەدەست هێناوە تەنها لە یەک خشتەوە لە بنکەیەکی دراوەدا بەڵام ئەگەر بێت‌و چەند خشتەیەکمان هەبێت‌و بمانەوێت چەند زانیارییەک بەدەست بهێنین، جی ئەکەین؟ وەڵامەکەی ئەوە دەبێت بە لێکدانی دوو یان زیاتر لە خشتەیەک لە MySQL Queryـدا.
<br />بەواتای ئەوەی کاری Join بریتی دەبێت بە لێکدانی دوو یان زیاتر لە خشتەیەک بۆ بەدەست هێنانی زانیاری لە چەند خشتەیەکی بنکە دراوەکەدا.
==سەرچاوە==
# [http://dev.mysql.com/doc/refman/5.5/en/index.html وێبگەی فەرمی mySQL]
# [http://www.mysql.org/ MySQL 5.5 Reference Manual]
 
[[Category:Software]]
Nuseran
٥٢٦

دەستکاری