<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" ><channel><title>وبلاگ سعید زبردست &#187; پایگاه داده MySQL</title> <atom:link href="http://zebardast.ir/category/%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c/mysql/feed/" rel="self" type="application/rss+xml" /><link>http://zebardast.ir</link> <description>دسته نوشته ها و مقالاتی در زمینه علوم کامپیوتر و تجربیات شخصی</description> <lastBuildDate>Sun, 29 Jan 2012 11:36:05 +0000</lastBuildDate> <language>fa</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator><image><title>وبلاگ سعید زبردست</title> <url>http://0.gravatar.com/avatar/1518e6b905d65cbe0a03243a199e18fc.png?s=48</url><link>http://zebardast.ir</link> </image> <item><title>انواع داده در MySQL</title><link>http://zebardast.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%af%d8%a7%d8%af%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/</link> <comments>http://zebardast.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%af%d8%a7%d8%af%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/#comments</comments> <pubDate>Wed, 23 Nov 2011 13:08:08 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[پایگاه داده MySQL]]></category> <category><![CDATA[مای‌اس‌کیوال]]></category> <category><![CDATA[پایگاه داده]]></category><guid isPermaLink="false">http://zebardast.ir/?p=1527</guid> <description><![CDATA[— MySQL سلام، هدف این مقاله بررسی انواع داده ها در پایگاه داده MySQL (مای‌اس‌کیوال) می باشد. MySQL انواع مختلف داده را در دسته بندی های زیر پشتیبانی می کند: اعداد (Numeric) زمان (Date and Time) رشته ها (String) داده های فضایی (Spatial) در این مقاله داده های عددی، زمان و رشته ها را بررسی [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/' rel='bookmark' title='بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول'>بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول</a></li></ol>]]></description> <content:encoded><![CDATA[<div class="autocap alignleft" style="width: 110px;"><div><a href="http://zebardast.ir/wp-content/uploads/2010/10/logo-mysql-110x57.png"><img src="http://zebardast.ir/wp-content/uploads/2010/10/logo-mysql-110x57.png" alt="" title="MySQL" width="110" height="57" class=" size-full wp-image-1157" /></a><p class="autocap-text"><span class="hide">— </span>MySQL</p></div></div><p>سلام،<br /> هدف این مقاله بررسی انواع داده ها در پایگاه داده MySQL (مای‌اس‌کیوال) می باشد. MySQL انواع مختلف داده را در دسته بندی های زیر پشتیبانی می کند:</p><ul><li>اعداد (Numeric)</li><li>زمان (Date and Time)</li><li>رشته ها (String)</li><li>داده های فضایی (Spatial)</li></ul><p>در این مقاله داده های عددی، زمان و رشته ها را بررسی می کنیم. با توجه به تخصصی بودن داده های فضایی، این نوع داده ها را در مقاله ای جداگانه در آینده بررسی خواهیم کردم.</p><h3>اعداد (Numeric)</h3><p>MySQL تمامی انواع داده های عددی استاندارد SQL شامل اعداد صحیح و اعداد تقریبی را پشتبانی می کند.  هر یک از نوع داده های عددی حافظه مشخصی برای ذخیره سازی نیاز دارند. همچنین در نظر داشته باشید که هر کدام از آنها محدوده مشخصی را پشتیبانی می کنند. هر نوع از این داده های عددی را می توان به صورت SIGNED یا UNSIGNED تعریف کرد. در حالت SIGNED این ستون ها از مقادیر منفی پشتبیبانی می کنند ولی در حالت UNSIGNED اعداد ذخیره شده باید بزرگتر ویا مساوی صفر باشند. در نظر داشته باشید که نوع داده <code>BOOLEAN</code> برای ذخیره مقادیر <code>TRUE</code> و <code>FALSE</code> همان <code>TINYINT(1)</code> می باشد.<br /> جدول زیر اطلاعات کلی نوع داده های عددی را در حالت SIGNED و UNSIGNED نشان می دهد:</p><table class="info" cellpadding=0 cellspacing=0><caption>اطلاعات کلی نوع داده های عددی Integer</caption><thead><tr><th>نوع</th><th>حافظه (بایت)</th><th> حداقل مقدار</th><th> حداکثر مقدار</th><th> توضیحات</th></tr></thead><tbody><tr><td class="ltr" rowspan="2">TINYINT</td><td rowspan="2">1</td><td class="ltr">-128</td><td class="ltr">127</td><td></td></tr><tr><td class="ltr">0</td><td class="ltr">255</td><td></td></tr><tr><td class="ltr" rowspan="2">SMALLINT</td><td rowspan="2">2</td><td class="ltr">-32768</td><td class="ltr">32767</td><td></td></tr><tr><td class="ltr">0</td><td class="ltr">65535</td><td></td></tr><tr><td class="ltr" rowspan="2">MEDIUMINT</td><td rowspan="2">3</td><td class="ltr">-8388608</td><td class="ltr">8388607</td><td></td></tr><tr><td class="ltr">0</td><td class="ltr">16777215</td><td></td></tr><tr><td class="ltr" rowspan="2">INTEGER</td><td rowspan="2">4</td><td class="ltr">-2147483648</td><td class="ltr">2147483647</td><td></td></tr><tr><td class="ltr">0</td><td class="ltr">4294967295</td><td></td></tr><tr><td class="ltr" rowspan="2">BIGINT</td><td rowspan="2">8</td><td class="ltr">-9223372036854775808</td><td class="ltr">9223372036854775807</td><td></td></tr><tr><td class="ltr">0</td><td class="ltr">18446744073709551615</td><td></td></tr></tbody></table><table class="info" cellpadding=0 cellspacing=0><caption>اطلاعات کلی نوع داده های عددی شناور</caption><thead><tr><th>نوع</th><th>حافظه (بایت)</th><th> مقدار</th><th> نحوه تعریف</th><th> توضیحات</th></tr></thead><tbody><tr><td class="ltr">FLOAT</td><td>4</td><td>از ۰ تا ۲۳ رقم</td><td class="ltr">FLOAT(M,D)</td><td>مقدار تقریبی (Approximate Value)</td></tr><tr><td class="ltr">DOUBLE</td><td>8</td><td>از ۲۴ تا ۵۳ رقم</td><td class="ltr">DOUBLE(M,D)</td><td>مقدار تقریبی (Approximate Value)</td></tr><tr><td class="ltr">DECIMAL</td><td>هر ۹ رقم ۴ بایت به صورت باینری</td><td>تا ۶۵ رقم</td><td class="ltr">DECIMAL(M,D)</td><td>مقدار دقیق (Exact Value)</td></tr></tbody></table><p>در جدول بالا حرف M نشان‌دهنده تعداد کل رقم‌های  داده و حرف D نشان‌دهنده تعداد رقم‌های بعد از ممیز (.) می باشد. به عنوان مثال در ستونی که به صورت <code>FLOAT(7,4)</code> تعریف شده است می توان حداکثر مقدار 999.9999 را ذخیره نمود. در صورتی که شما عدد 999.00009 را به این جدول وارد کنید، عدد واردشده به صورت 999.0001 ذخیره خواهد شد.</p><p><strong>سوال</strong>: منظور از مقدار تقریبی و دقیق در جدول داده های عددی شناور چیست؟<br /> <strong>پاسخ</strong>: گاهی اوقات در نوع داده‌های تقریبی اعداد گرد می شوند. در زیر با اجرا کردن چند دستور در خط فرمان MySQL پایگاه داده‌ای با دو ستون Decimal و Float تعریف کردیم. در آخرین دستور نتیجه گردشدن را در ستون Float مشاهده می فرمایید:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; create table numbers (a decimal(10,2), b float);
mysql&gt; insert into numbers values (100, 100);
mysql&gt; select @a := (a/3), @b := (b/3), @a * 3, @b * 3 from numbers \G
*************************** 1. row ***************************
@a := (a/3): 33.333333333
@b := (b/3): 33.3333333333333
     @a * 3: 99.999999999
     @b * 3: 100
</pre><p>برای اطلاعات بیشتر به صفحه <a href="http://dev.mysql.com/doc/refman/5.0/en/problems-with-float.html" title="Problems with Floating-Point Values" target="_blank">Problems with Floating-Point Values</a> در سایت MySQL مراجعه نمایید.<br /> در نسخه های قبل از 5.0.3 نوع داده DECIMAL به صورت String ذخیره می شود و مقدار رقم‌هایی که پشتیبانی می کرد مانند نوع داده DOUBLE بود.</p><h4>نوع داده BIT</h4><p>این نوع داده برای ذخیره بیت‌های ۰ و ۱ استفاده می شود. برای تعریف ستونی از این نوع از عبارت <code>BIT(M)</code> استفاده می کنیم که در اینجا M فضایی به طول تقریبا <code>(M+7)/8</code> بایت را برای نگهداری داده‌ها ایجاد می کند. M می تواند عددی از ۱ تا ۶۴ باشد. برای نشان‌دادن ۰ و ۱ به صورت بیت از حرف b استفاده می کنیم. به عنوان مثال <code>b'111'</code> و <code>b'10000000'</code> که به ترتیب برابر اعداد ۷ و ۱۲۸ می باشند. برای درک بیشتر این موضوع به دستورات و نتایج زیر در خط فرمان MySQL توجه فرمایید:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; INSERT INTO t SET b = b'11111111';
mysql&gt; INSERT INTO t SET b = b'1010';
mysql&gt; INSERT INTO t SET b = b'0101';
mysql&gt; SELECT b+0, BIN(b+0), OCT(b+0), HEX(b+0) FROM t;
+------+----------+----------+----------+
| b+0  | BIN(b+0) | OCT(b+0) | HEX(b+0) |
+------+----------+----------+----------+
|  255 | 11111111 | 377      | FF       |
|   10 | 1010     | 12       | A        |
|    5 | 101      | 5        | 5        |
+------+----------+----------+----------+
3 rows in set (0.03 sec)
</pre><p>آخرین Query در بالا توابع مختلف برای تبدیل این اعداد را نشان می دهد. عبارت <code>+0</code> مقدار دودویی ذخیره شده را به عدد ده‌دهی متناظر تبدیل می کند.</p><h3>زمان (Date and Time)</h3><p>در کل ۵ نوع داده برای ذخیره زمان (ساعت و تاریخ) داریم. در جدول زیر اطلاعات این نوع داده‌ها را مشاهده می‌فرمایید:</p><table class="info" cellpadding=0 cellspacing=0><caption>اطلاعات کلی نوع داده های زمانی (Date and Time)</caption><thead><tr><th>نوع</th><th>حافظه (بایت)</th><th> مقدار صفر <code>(“Zero” Value)</code></th></tr></thead><tbody><tr><td class="ltr">DATE</td><td>3</td><td class="ltr"><code>'0000-00-00'</code></td></tr><tr><td class="ltr">TIME</td><td>3</td><td class="ltr"><code>'00:00:00'</code></td></tr><tr><td class="ltr">DATETIME</td><td>8</td><td class="ltr"><code>'0000-00-00 00:00:00'</code></td></tr><tr><td class="ltr">TIMESTAMP</td><td>4</td><td class="ltr"><code>'0000-00-00 00:00:00'</code></td></tr><tr><td class="ltr">YEAR</td><td>1</td><td class="ltr"><code>0000</code></td></tr></tbody></table><p>در ادامه به بررسی نوع داده‌های ذکر شده در بالا خواهیم پرداخت.</p><h4>نوع داده DATE</h4><p>این نوع داده فقط برای ذخیره سازی تاریخ استفاده می شود. فرمت پیش فرض این نوع داده <code>'YYYY-MM-DD'</code> است. بازه‌ای که توسط DATE پشتیبانی می شود از <code>'1000-01-01'</code> تا <code>'9999-12-31'</code> می باشد.</p><h4>نوع داده TIME</h4><p>این نوع داده برای ذخیره سازی زمان (ساعت، دقیقه، ثانیه) استفاده می شود. فرمت پیش‌فرض این نوع داده <code>'HH:MM:SS'</code> و یا <code>'HHH:MM:SS'</code> است. بازه ای که در نوع TIME پشتیبانی می شود از <code>'-838:59:59'</code> تا <code>'838:59:59'</code> می باشد. نوع داده TIME فقط برای نمایش زمان روز استفاده نمی شود. برای نمایش تفاوت زمانی دو بازه و یا زمان باقی‌مانده نیز می تواند از TIME استفاده نمود. به همین دلیل بازه پشتیبانی شده بیشتر از ۲۴ ساعت و یا کمتر از صفر (منفی) می باشد.<br /> برای استفاده از عبارت های مخفف در نوع داده TIME باید دقت نمایید. به عنوان مثال MySQL عبارت <code>'11:12'</code> را به صورت <code>'11:12:00'</code> تفسیر می کند. در صورتی که داده بدون <code>':'</code> (دو نقطه) بیان شود، MySQL آن را از سمت راست تفسیر می کند. به عنوان مثال عبارت <code>'1112'</code> و یا <code>1112</code> به معنی <code>'00:11:12'</code> است.<br /> به صورت پیش فرض MySQL داده‌های خارج از محدوده TIME را در صورتی که با فرمت مناسب وارد شده باشند به نزدیک‌ترین بازه تبدیل می کند. به عنوان مثال عبارت‌های <code>'-850:00:00'</code> و <code>'850:00:00'</code> به <code>'-838:59:59'</code> و <code>'838:59:59'</code> تبدیل خواهند شد. داده‌هایی که فرمت مناسب نداشته و یا قابل تفسیر برای داده TIME نباشند به عبارت <code>'00:00:00'</code> تبدیل خواهند شد.</p><h4>نوع داده DATETIME</h4><p>این نوع داده برای ذخیره سازی زمان به صورت کامل شامل تاریخ و ساعت استفاده می شود. فرمت پیش فرض این نوع داده <code>'YYYY-MM-DD HH:MM:SS'</code> می باشد. بازه‌ی پشتیبانی DATETIME از <code>'1000-01-01 00:00:00'</code> تا <code>'9999-12-31 23:59:59'</code> است.</p><h4>نوع داده TIMESTAMP</h4><p>این نوع داده همانند DATETIME می باشد. بازه‌ای که توسط TIMESTAMP پشتیبانی می‌شود از <code>'1970-01-01 00:00:01' <abbr title="ساعت هماهنگ جهانی - Coordinated Universal Time">UTC</abbr></code> تا <code>'2038-01-19 03:14:07' <abbr title="ساعت هماهنگ جهانی - Coordinated Universal Time">UTC</abbr></code> است.<br /> داده‌های TIMESTAMP هنگام ذخیره شدن از زمان منطقه زمانی (Time Zone) کنونی سیستم به UTC تبدیل و ذخیره می شوند. متناظر با همین امر، هنگام نشان دادن داده‌های TIMESTAMP، ابتدا داده‌ها از UTC به منطقه زمانی کنونی سیستم تبدیل شده و بعد نمایش داده می شوند. به همین علت در صورتی که منطقی زمانی سیستم عوض شود، ممکن است داده‌ها به صورت غیرعادی و یا غلط نمایش داده شوند.<br /> نوع داده TIMESTAMP این قابلیت را دارد که مقداردهی اولیه و یا مقداردهی خودکار داشته باشید. برای مقداردهی اولیه کافیست مقدار پیش فرض فیلد مورد نظر را CURRENT_TIMESTAMP قرار دهید. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; CREATE TABLE t (ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
</pre><p>در حالت مقداردهی خودکار، مقدار ذخیره شده در فیلد TIMESTAMP هنگام بروزرسانی (UPDATE) یک ردیف به زمان بروزرسانی تغییر پیدا می کند. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; CREATE TABLE t (name VARCHAR(100), ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP);

mysql&gt; INSERT INTO t(name) VALUES('Saeid');

mysql&gt; SELECT * FROM t;
+-------+---------------------+
| name  | ts                  |
+-------+---------------------+
| Saeid | 2011-12-22 12:00:26 |
+-------+---------------------+
1 row in set (0.00 sec)

mysql&gt; UPDATE t SET name = 'Alireza';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql&gt; SELECT * FROM t;
+---------+---------------------+
| name    | ts                  |
+---------+---------------------+
| Alireza | 2011-12-22 12:01:56 |
+---------+---------------------+
1 row in set (0.00 sec)
</pre><p>برای کسب اطلاعات بیشتر به صفحه <a href="http://dev.mysql.com/doc/refman/5.0/en/timestamp.html" title="TIMESTAMP Properties" target="_blank">TIMESTAMP Properties</a> در سایت MySQL مراجعه نمایید.</p><h4>نوع داده YEAR</h4><p>این نوع داده برای ذخیره سازی سال با فرمت YYYY به کار می‌رود. شما می تواند سال مورد نظر خود را به صورت دو رقمی <code>YEAR(2)</code> و یا ۴ رقمی <code>YEAR(4)</code> تعریف کنید. نوع YEAR از سال 1901 تا 2155 و 0000 را پشتیبانی می کند. در صورتی که سال را به صورت ۲ رقمی تعریف کرده باشید، اعداد 00 تا 69 در قرن ۲۱ و اعداد 70 تا 99 در قرن ۲۰ در نظر گرفته می شوند. مثلا 45 به عنوان 2045 و 80 به صورت 1980 در نظر گرفته می شود. تمامی مقادیر غیر منطقی برای YEAR به صورت 0000 ذخیره می شوند.</p><h3>رشته ها (String)</h3><p>نوع داده String برای نگه داری رشته‌ها (متون) استفاده می شود. در زیر اطلاعات کلی داده هایی از نوع String را مشاهده می فرمایید. در جدول زیر M نشان‌دهنده طول تعریف شده برای داده و L نشان‌دهنده طول واقعی رشته داده شده می باشد.</p><table class="info" cellpadding=0 cellspacing=0><caption>اطلاعات کلی نوع داده رشته‌ها (String)</caption><thead><tr><th>نوع</th><th> مقدار</th><th>حافظه (بایت)</th></tr></thead><tbody><tr><td class="ltr"><code>CHAR(M)</code></td><td class="ltr" nowrap="nowrap"><code>0 <= M <= 255</code></td><td> <code>M × w</code> بایت. w تعداد بایت مورد نیاز برای حداکثر طول کاراکترهای تعریف شده در character set جدول می باشد.</td></tr><tr><td class="ltr"><code>BINARY(M)</code></td><td class="ltr" nowrap="nowrap"><code>0 <= M <= 255</code></td><td> M بایت</td></tr><tr><td class="ltr"><code>VARCHAR(M)</code></td><td class="ltr" nowrap="nowrap"><code>0 <= M <= 65532</code></td><td> <code>L + 1</code> بایت اگر داده مورد نظر کمتر از ۲۵۵ بایت نیاز داشته باشد.<br /> <code>L + 2</code> بایت اگر داده مورد نظر بیشتر از ۲۵۵ بایت نیاز داشته باشد.</td></tr><tr><td class="ltr"><code>VARBINARY(M)</code></td><td class="ltr" nowrap="nowrap"><code>0 <= M <= 65532</code></td><td> <code>M + 1</code> بایت اگر داده مورد نظر کمتر از ۲۵۵ بایت نیاز داشته باشد.<br /> <code>M + 2</code> بایت اگر داده مورد نظر بیشتر از ۲۵۵ بایت نیاز داشته باشد.</td></tr><tr><td class="ltr"><code>TINYBLOB</code></td><td class="ltr"><code>L < 2<sup>8</sup></code></td><td><code>L + 1</code> بایت</td></tr><tr><td class="ltr"><code>TINYTEXT</code></td><td class="ltr"><code>L < 2<sup>8</sup></code></td><td><code>L + 1</code> بایت</td></tr><tr><td class="ltr"><code>BLOB</code></td><td class="ltr"><code>L < 2<sup>16</sup></code></td><td><code>L + 2</code> بایت</td></tr><tr><td class="ltr"><code>TEXT</code></td><td class="ltr"><code>L < 2<sup>16</sup></code></td><td><code>L + 2</code> بایت</td></tr><tr><td class="ltr"><code>MEDIUMBLOB</code></td><td class="ltr"><code>L < 2<sup>24</sup></code></td><td><code>L + 3</code> بایت</td></tr><tr><td class="ltr"><code>MEDIUMTEXT</code></td><td class="ltr"><code>L < 2<sup>24</sup></code></td><td><code>L + 3</code> بایت</td></tr><tr><td class="ltr"><code>LONGBLOB</code></td><td class="ltr"><code>L < 2<sup>32</sup></code></td><td><code>L + 4</code> بایت</td></tr><tr><td class="ltr"><code>LONGTEXT</code></td><td class="ltr"><code>L < 2<sup>32</sup></code></td><td><code>L + 4</code> بایت</td></tr><tr><td class="ltr"><code>ENUM('v1','v2',...)</code></td><td>حداکثر ۶۵,۵۳۵ عضو</td><td>۱ یا ۲ بایت.<br /> وابسته به مقدار داده.</td></tr><tr><td class="ltr"><code>SET('v1','v2',...)</code></td><td>حداکثر ۶۴ عضو</td><td>۱، ۲، ۳، ۴ یا ۸ بایت<br /> وابسته به مجموعه داده شده.</td></tr></tbody></table><h4>نوع داده CHAR و VARCHAR</h4><p>CHAR و VARCHAR بسیار شبیه به هم هستند. مهم‌ترین تفاوتی که بین CHAR و VARCHAR وجود دارد نحوه ذخیره سازی و بازیابی اطلاعات است. هنگام تعریف این نوع داده‌ها شما حداکثر تعداد کاراکتری را که می خواهید ذخیره شود را مشخص می نمایید. به عنوان مثال <code>CHAR(30)</code> برای ذخیره حداکثر ۳۰ کاراکتر تعریف می شود.<br /> طول ستونی که از نوع CHAR باشد ثابت است. در صورتی که طول داده کمتر از طول تعریف شده باشد، فضای باقیمانده با فاصله <code>(space)</code> از راست پر می‌شود. هنگام بازیابی اطلاعات این فضای خالی قبل از نمایش حذف می‌شود مگر اینکه حالت <a href="http://dev.mysql.com/doc/refman/5.6/en/server-sql-mode.html#sqlmode_pad_char_to_full_length" title="PAD_CHAR_TO_FULL_LENGTH " target="_blank">PAD_CHAR_TO_FULL_LENGTH</a> فعال شده باشد.<br /> در نوع داده VARCHAR طول داده ذخیره شده به اندازه مقدار داده وارد شده می باشد. به عنوان مثال اگر ستونی به صورت <code>VARCHAR(100)</code> تعریف شده باشد ولی طول رشته داده شده 50 کاراکتر باشد، فقط به مقدار بایت زیر فضا لازم است.<br /> <code></p><div style="text-align:right; direction:rtl; border:1px dashed #333; padding: 0 5px;"> (50 * فضای لازم برای ذخیره هر کاراکتر) + 2</div><p></code><br /> در صورتی که در تعریف <code>VARCHAR(M)</code> مقدار M بیشتر از ۶۵,۵۳۵ باشد، MySQL به طور خودکار نوع ستون را از <code>VARCHAR</code> به نوع مناسبی مانند <code>MEDIUMTEXT</code> تغییر می دهد.</p><p>جدول زیر تفاوت‌های فضای مورد نیاز برای ذخیره اطلاعات را در CHAR و VARCHAR نمایش می دهد. دقت کنید که در جدول زیر Character Set  داده مورد نظر تک بایتی مانند latin1 است.</p><table class="info" cellpadding=0 cellspacing=0><caption>بررسی تفاوت فضای مورد نیاز برای <code>CHAR(4)</code> و <code>VARCHAR(4)</code></caption><col><colgroup span="2" style="background-color:#ffc;"></colgroup><colgroup span="2" style="background-color:#cfc;"></colgroup><thead><tr><th>داده</th><th class="ltr"><code>CHAR(4)</code></th><th>فضای مورد نیاز</th><th class="ltr"><code>VARCHAR(4)</code></th><th>فضای مورد نیاز</th></tr></thead><tbody><tr><td class="ltr"><code>''</code></td><td class="ltr"><code>'&nbsp;&nbsp;&nbsp;&nbsp;'</code></td><td>۴ بایت</td><td class="ltr"><code>''</code></td><td>۱ بایت</td></tr><tr><td class="ltr"><code>'ab'</code></td><td class="ltr"><code>'ab&nbsp;&nbsp;'</code></td><td>۴ بایت</td><td class="ltr"><code>'ab'</code></td><td>۳ بایت</td></tr><tr><td class="ltr"><code>'abcd'</code></td><td class="ltr"><code>'abcd'</code></td><td>۴ بایت</td><td class="ltr"><code>'abcd'</code></td><td>۵ بایت</td></tr><tr><td class="ltr"><code>'abcdefgh'</code></td><td class="ltr"><code>'abcd'</code></td><td>۴ بایت</td><td class="ltr"><code>'abcd'</code></td><td>۵ بایت</td></tr></tbody></table><h4>نوع داده BINARY و VARBINARY</h4><p>این نوع داده ها مانند CHAR و VARCHAR می باشند فقط با این تفاوت که در این نوع داده‌ها رشته‌های باینری (صفر و یک) ذخیره می شود. در نتیجه Character set برای این نوع داده‌ها معنی ندارد. از طرفی مرتب‌سازی و مقایسه بر اساس مقدار عددی رشته باینری ذخیره شده می باشد.</p><h4>نوع داده BLOB و TEXT</h4><p>این نوع داده‌ها مانند BINARY و VARBINARY می باشند. هر کدام از این داده‌ها دارای ۴ نوع می‌باشند که تنها تفاوت آن‌ها در حداکثر طول داده قابل ذخیره شدن است.</p><h4>نوع داده ENUM</h4><p>این نوع داده فقط امکان ذخیره سازی رشته ای را می دهد که از مجموعه تعریف شده باشد. این مجموعه هنگام ساخت جدول تعریف می شود. مانند جدول زیر:</p><pre class="brush: sql; title: ; notranslate">
CREATE TABLE sizes (
    name ENUM('small', 'medium', 'large')
);
</pre><p>در ستون name در جدول بالا فقط می توانید یکی از مقادیر small، medium یا large را ذخیره نمایید. در صورتی که مقداری خارج از مجموعه وارد مجموعه شود، فضای خالی در name ذخیره می شود، نه مقدار وارد شده.</p><h4>نوع داده SET</h4><p>این نوع داده مانند ENUM می باشد، با این تفاوت که شما می توانید چند عضو از مجموعه تعریف شده را انتخاب نمایید. توجه نمایید که یا داده‌های تکراری قبل از ذخیره سازی حذف می شوند. به مثال زیر توجه فرمایید:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; CREATE TABLE myset (col SET('a', 'b', 'c', 'd'));
Query OK, 0 rows affected (0.05 sec)

mysql&gt; INSERT INTO myset (col) VALUES  ('a,d'), ('d,a'), ('a,d,a'), ('a,d,d'), ('d,a,d');
Query OK, 5 rows affected (0.00 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql&gt; SELECT col FROM myset;
+------+
| col  |
+------+
| a,d  |
| a,d  |
| a,d  |
| a,d  |
| a,d  |
+------+
5 rows in set (0.00 sec)
</pre><p>از قراردادن فاصله قبل و یا بعد ',' جدا خوددداری نمایید.</p><h3>چطور نوع داده مناسب را انتخاب نماییم؟</h3><p>قبل از هر چیز بازه‌ی مورد نیاز برای داده خود را معین نمایید. سپس مختصرترین نوع داده را برای ستون خود انتخاب نمایید. به عنوان مثال برای بازه اعداد ۰ تا ۹۹۹۹۹ نوع <code>MEDIUMINT UNSIGNED</code> بهترین گزینه است.<br /> مورد دیگر انتخاب نوع ستون مناسب با داده شما است. به عنوان مثال هرگز تاریخ شمسی را در پایگاه داده در ستونی از نوع رشته (مانند <code>CHAR</code>) ذخیره ننمایید. بهترین گزینه تبدیل تاریخ به تاریخ میلای و ذخیره آن در داده‌ای از نوع <code>DATE</code> است.<br /> در هنگام تعریف ستونی برای داده‌های عددی در صورتی که فقط اعداد مثبت را لازم دارید، ستون خود را از نوع UNSIGNED انتخاب نموده و حداقل بازه را انتخاب نمایید. به عنوان مثال اگر ستون عددی شما کلید اصلی و افزایشی خودکار است (PRIMAY KEY and AUTO_INCREMENT) حتما نوع داده خود را UNSIGNED انتخاب نمایید تا حداکثر مقدار کلید اصلی دو برابر شود. نوع INTEGER SIGNED حداکثر عدد 2147483648 (حدود ۲ میلیارد) و INTEGER UNSIGNED حداکثر عدد 4294967295 (حدود ۴ میلیارد) را پشتیبانی می کند.</p><p>روش دیگر استفاده از <code>PROCEDURE ANALYSE</code> به منظور دریافت پیشنهاد خود پایگاه داده است. <code>PROCEDURE ANALYSE</code> با توجه به داده‌های فعلی، پیشنهاد خود را برای بهینه کردن نوع داده ارائه می دهد. در نظر داشته باشید که هر چه تعداد داده فعلی شما بیشتر باشد، <code>PROCEDURE ANALYSE</code> پیشنهاد بهتر و دقیق‌تری می دهد. نحوه استفاده از <code>PROCEDURE ANALYSE</code> بسیار ساده است. نحوه نگارش آن به صورت زیر است:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; SELECT ... FROM ... WHERE ... PROCEDURE ANALYSE([max_elements,[max_memory]]);
</pre><p>مانند:</p><pre class="brush: sql; title: ; notranslate">
SELECT col1, col2 FROM table1 PROCEDURE ANALYSE(10, 2000);
</pre><p>یا</p><pre class="brush: sql; title: ; notranslate">
SELECT * FROM table1 PROCEDURE ANALYSE() \G
</pre><h3>اسامی مشابه</h3><p>در پایگاه داده MySQL برخی از انواع داده‌ها با نام‌های مشابه دیگری نیز قابل دسترسی می باشند. یکی از دلایل این کار پیاده سازی راحت‌تر SQL های پایگاه‌های داده‌ی دیگر است. در زیر این اسامی را مشاهده می نمایید.</p><table class="info" cellpadding=0 cellspacing=0><caption>اسامی مشابه برای نوع داده‌ها در MySQL</caption><thead><tr><th>نوع داده</th><th>اسم مشابه</th></tr></thead><tbody><tr><td class="ltr">INTEGER</td><td class="ltr">INT</td></tr><tr><td class="ltr">DECIMAL</td><td class="ltr">DEC</td></tr><tr><td class="ltr">DECIMAL</td><td class="ltr">FIXED</td></tr><tr><td class="ltr">DECIMAL</td><td class="ltr">NUMERIC</td></tr><tr><td class="ltr">DOUBLE</td><td class="ltr">REAL</td></tr></tr><tr><td class="ltr">TINYINT</td><td class="ltr">BOOLEAN</td></tr><tr><td class="ltr">TINYINT</td><td class="ltr">BOOL</td></tr><tr><td class="ltr">VARCHAR(M)</td><td class="ltr">CHARACTER VARYING(M)</td></tr><tr><td class="ltr">FLOAT</td><td class="ltr">FLOAT4</td></tr><tr><td class="ltr">DOUBLE</td><td class="ltr">FLOAT8</td></tr><tr><td class="ltr">TINYINT</td><td class="ltr">INT1</td></tr><tr><td class="ltr">SMALLINT</td><td class="ltr">INT2</td></tr><tr><td class="ltr">MEDIUMINT</td><td class="ltr">INT3</td></tr><tr><td class="ltr">INT</td><td class="ltr">INT4</td></tr><tr><td class="ltr">BIGINT</td><td class="ltr">INT8</td></tr><tr><td class="ltr">MEDIUMBLOB</td><td class="ltr">LONG VARBINARY</td></tr><tr><td class="ltr">MEDIUMTEXT</td><td class="ltr">LONG VARCHAR</td></tr><tr><td class="ltr">MEDIUMTEXT</td><td class="ltr">LONG</td></tr><tr><td class="ltr">MEDIUMINT</td><td class="ltr">MIDDLEINT</td></tr></tbody></table><p><strong>منابع</strong></p><ul><li><a href="http://dev.mysql.com/doc/" title="MySQL Reference Manual" target="_blank">MySQL Reference Manual</a></li></ul><p>شاد و موفق باشید <img src='http://zebardast.ir/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d9%2588%25d8%25a7%25d8%25b9-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d9%2587%25d8%25a7-%25d8%25af%25d8%25b1-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D8%A7%D9%86%D9%88%D8%A7%D8%B9%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%AF%D8%B1%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d9%2588%25d8%25a7%25d8%25b9-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d9%2587%25d8%25a7-%25d8%25af%25d8%25b1-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D8%A7%D9%86%D9%88%D8%A7%D8%B9%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%AF%D8%B1%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d9%2588%25d8%25a7%25d8%25b9-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d9%2587%25d8%25a7-%25d8%25af%25d8%25b1-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D8%A7%D9%86%D9%88%D8%A7%D8%B9%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%AF%D8%B1%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d9%2588%25d8%25a7%25d8%25b9-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d9%2587%25d8%25a7-%25d8%25af%25d8%25b1-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D8%A7%D9%86%D9%88%D8%A7%D8%B9%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%AF%D8%B1%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d9%2588%25d8%25a7%25d8%25b9-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d9%2587%25d8%25a7-%25d8%25af%25d8%25b1-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;title=%D8%A7%D9%86%D9%88%D8%A7%D8%B9%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%AF%D8%B1%20MySQL" id="wpa2a_2">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/' rel='bookmark' title='بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول'>بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%af%d8%a7%d8%af%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</title><link>http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/</link> <comments>http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/#comments</comments> <pubDate>Sun, 13 Mar 2011 16:22:56 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[پایگاه داده MySQL]]></category> <category><![CDATA[مای‌اس‌کیوال]]></category> <category><![CDATA[پایگاه داده]]></category><guid isPermaLink="false">http://zebardast.ir/?p=1351</guid> <description><![CDATA[سلام در طول چند سال کار با پایگاه داده MySQL تعدادی Tips (نکته یا راهنما) یاد گرفتم که کار با آن را برای من ساده تر می کردند. مطلب امروز تعدادی از این نکات را معرفی می کند. نمایش عمودی نتایج برای مشاهده عمومی نتایج یک query به جای ; از \G در انتهای آن [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/' rel='bookmark' title='بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول'>بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%af%d8%a7%d8%af%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='انواع داده در MySQL'>انواع داده در MySQL</a></li></ol>]]></description> <content:encoded><![CDATA[<p>سلام <img src='http://zebardast.ir/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>در طول چند سال کار با پایگاه داده MySQL تعدادی Tips (نکته یا راهنما) یاد گرفتم که کار با آن را برای من ساده تر می کردند. مطلب امروز تعدادی از این نکات را معرفی می کند.</p><p><strong>نمایش عمودی نتایج</strong><br /> برای مشاهده عمومی نتایج یک query به جای ; از <code>\G</code> در انتهای آن استفاده کنید. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; select * from PARTITIONS limit 2 \G
*************************** 1. row ***************************
                TABLE_CATALOG: NULL
                 TABLE_SCHEMA: information_schema
                   TABLE_NAME: CHARACTER_SETS
               PARTITION_NAME: NULL
            SUBPARTITION_NAME: NULL
   PARTITION_ORDINAL_POSITION: NULL
SUBPARTITION_ORDINAL_POSITION: NULL
             PARTITION_METHOD: NULL
          SUBPARTITION_METHOD: NULL
         PARTITION_EXPRESSION: NULL
      SUBPARTITION_EXPRESSION: NULL
        PARTITION_DESCRIPTION: NULL
                   TABLE_ROWS: 0
               AVG_ROW_LENGTH: 384
                  DATA_LENGTH: 0
              MAX_DATA_LENGTH: 16604160
                 INDEX_LENGTH: 0
                    DATA_FREE: 0
                  CREATE_TIME: NULL
                  UPDATE_TIME: NULL
                   CHECK_TIME: NULL
                     CHECKSUM: NULL
            PARTITION_COMMENT:
                    NODEGROUP:
              TABLESPACE_NAME: NULL
*************************** 2. row ***************************
                TABLE_CATALOG: NULL
                 TABLE_SCHEMA: information_schema
                   TABLE_NAME: COLLATIONS
               PARTITION_NAME: NULL
            SUBPARTITION_NAME: NULL
   PARTITION_ORDINAL_POSITION: NULL
SUBPARTITION_ORDINAL_POSITION: NULL
             PARTITION_METHOD: NULL
          SUBPARTITION_METHOD: NULL
         PARTITION_EXPRESSION: NULL
      SUBPARTITION_EXPRESSION: NULL
        PARTITION_DESCRIPTION: NULL
                   TABLE_ROWS: 0
               AVG_ROW_LENGTH: 231
                  DATA_LENGTH: 0
              MAX_DATA_LENGTH: 16704765
                 INDEX_LENGTH: 0
                    DATA_FREE: 0
                  CREATE_TIME: NULL
                  UPDATE_TIME: NULL
                   CHECK_TIME: NULL
                     CHECKSUM: NULL
            PARTITION_COMMENT:
                    NODEGROUP:
              TABLESPACE_NAME: NULL
</pre><p><strong>استفاده از <code>--safe-updates</code></strong><br /> با استفاده از پارامتر <code>--safe-updates</code> (:معادل <code>--i-am-a-dummy</code> یا <code>-U</code>) می توانید یک حصار امنیتی برای query های مربوط به update و delete فعال کنید. بدین صورت که اگر query حذف یا ویرایش شما where نداشته باشد، اجرا نمی شود. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; delete from meta;
ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
</pre><p>یا</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; update meta set meta_key = 'my_key';
ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
</pre><p>همچنین شما می توانید به جای استفاده از پارامتر <code>--safe-updates</code> از دستور SET در MySQL استفاده نمایید. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; SET sql_safe_updates=1, sql_select_limit=1000, sql_max_join_size=1000000;
</pre><p>دستور بالا علاوه بر فعال کردن safe updates ، حداکثرهایی نیز برای محدودیت select ساده و انتخاب چندین جدولی اعمال می کند.</p><p><strong>فعال سازی auto complete و بروزرسانی cache آن</strong><br /> بعد از نصب MySQL در بسیاری از موارد قابلیت auto complete یا همان «کامل کردن خودکار» فعال است. پارامتر مربوط به فعال سازی آن <code>--auto-rehash</code> می باشد. همچنین شما می توانید در خط فرمان MySQL با تایپ <code>\#</code> این قابلیت را فعال کنید. کاربرد دیگر <code>\#</code> بروزرسانی کش auto completion بعد از انجام تغییرات بر روی پایگاه داده می باشد.<br /> *برای کامل کردن یک خط کافیست دکمه Tab را فشار دهید. در صورتی که نتایج برای کامل کردن یک عبارت بیش از یک مورد باشد، با زدن دو tab پشت سر هم، فهرست این نتایج را مشاهده می فرمایید.</p><p><strong>مشاهده فهرست کامل فرایندهای در حال اجرا</strong><br /> برای مشاهده فرایندهای در حال اجرا کافیست دستور show processlist را در خط فرمان وارد کنید. همچنین برای نمایش کامل query در حال اجرا می توانید پارامتر full را به این دستور اضافه کنید. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; show full processlist;
+------+------+-----------+---------+---------+------+-------+-----------------------+
| Id   | User | Host      | db      | Command | Time | State | Info                  |
+------+------+-----------+---------+---------+------+-------+-----------------------+
| 3101 | root | localhost | efs_tmp | Query   |    0 | NULL  | show full processlist |
+------+------+-----------+---------+---------+------+-------+-----------------------+
</pre><p><strong>کشتن (kill) یک فرایند</strong><br /> در ستون اول خروجی دستور show processlist آی دی مربوط به فرآیند در حال اجرا را مشاهده کردید. برای متوقف ساختن این فرایند کافیست دستور kill را به صورت زیر اجرا کنیم:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; kill 3101;
</pre><p><strong>مشاهده وضعیت MySQL و برخی اطلاعات بیشتر</strong><br /> برای مشاهده وضعیت کلی MySQL شامل تنظیمات و پارامتر های فعال شده از دستور show status استفاده می کنیم. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; show status;
+-----------------------------------+-----------+
| Variable_name                     | Value     |
+-----------------------------------+-----------+
| Aborted_clients                   | 3         |
| Aborted_connects                  | 0         |
| Binlog_cache_disk_use             | 0         |
| Binlog_cache_use                  | 0         |
| Bytes_received                    | 1346      |
..........
........
......
...
.
</pre><p>همچنین برای مشاهده وضعیت INNODB از دستور SHOW ENGINE INNODB STATUS استفاده نمایید.<br /> دستور show table status نیز برای مشاهده وضعیت جداول استفاده می شود. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; show table status like '%user%' \G
*************************** 1. row ***************************
           Name: user
         Engine: MyISAM
        Version: 10
     Row_format: Dynamic
           Rows: 14
 Avg_row_length: 80
    Data_length: 1128
Max_data_length: 281474976710655
   Index_length: 2048
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2010-11-21 18:07:11
    Update_time: 2011-02-27 14:57:28
     Check_time: NULL
      Collation: utf8_bin
       Checksum: NULL
 Create_options:
        Comment: Users and global privileges
1 row in set (0.00 sec)
</pre><p>* از like برای محدود ساختن نتایج استفاده کرده ام.</p><p><strong>دسترسی سریع به وضعیت پایگاه داده</strong><br /> برای دسترسی سریع به پایگاه داده کافیست دستور <code>\s</code> را در خط فرمان MySQL وارد نمایید:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; \s
--------------
mysql  Ver 14.14 Distrib 5.1.49, for debian-linux-gnu (i686) using readline 6.1

Connection id:		3103
Current database:	mydb_tmp
Current user:		root@localhost
SSL:			Not in use
Current pager:		stdout
Using outfile:		''
Using delimiter:	;
Server version:		5.1.49-1ubuntu8.1 (Ubuntu)
Protocol version:	10
Connection:		Localhost via UNIX socket
Server characterset:	utf8
Db     characterset:	utf8
Client characterset:	latin1
Conn.  characterset:	latin1
UNIX socket:		/var/run/mysqld/mysqld.sock
Uptime:			12 hours 39 min 28 sec

Threads: 1  Questions: 27846  Slow queries: 2  Opens: 7711  Flush tables: 1  Open tables: 64  Queries per second avg: 0.611
--------------
</pre><p><strong>دستور show create</strong><br /> به طور کلی دستور show create برای مشاهده نحوه ساخت یک جدول، پایگاه داده، تابع و&#8230; استفاده می شود. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; show create database mysql \G
*************************** 1. row ***************************
       Database: mysql
Create Database: CREATE DATABASE `mysql` /*!40100 DEFAULT CHARACTER SET utf8 */
</pre><p>یا</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; show create table time_zone \G
*************************** 1. row ***************************
       Table: time_zone
Create Table: CREATE TABLE `time_zone` (
  `Time_zone_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `Use_leap_seconds` enum('Y','N') NOT NULL DEFAULT 'N',
  PRIMARY KEY (`Time_zone_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Time zones'
</pre><p><strong>ساخت یک جدول از ترکیب چند جدول</strong><br /> یکی از انواع engine های موجود در MySQL انجین <a href="http://dev.mysql.com/doc/refman/5.0/en/merge-storage-engine.html">MERGE</a> یا MRG_MyISAM می باشد. این engine برای ترکیب چندین جدول در یک جدول مورد استفاده قرار می گیرد.<br /> در زیر ما دو جدول با انجین MyISAM و یک جدول total با انجین MERGE از ترکیب دو جدول اول ساخته ایم:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; CREATE TABLE t1 (
    -&gt;    a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -&gt;    message CHAR(20)) ENGINE=MyISAM;
mysql&gt; CREATE TABLE t2 (
    -&gt;    a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -&gt;    message CHAR(20)) ENGINE=MyISAM;
mysql&gt; CREATE TABLE total (
    -&gt;    a INT NOT NULL AUTO_INCREMENT,
    -&gt;    message CHAR(20), INDEX(a))
    -&gt;    ENGINE=MERGE UNION=(t1,t2) INSERT_METHOD=LAST;
</pre><p>در صورت وارد کردن اطلاعات به t1 و t ویا بروزرسانی اطلاعات آن ها، امکان دستیابی به اطلاعات از طریق جدول total وجود دارد. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; INSERT INTO t1 (message) VALUES ('Testing'),('table'),('t1');
mysql&gt; INSERT INTO t2 (message) VALUES ('Testing'),('table'),('t2');

mysql&gt; SELECT * FROM total;
+---+---------+
| a | message |
+---+---------+
| 1 | Testing |
| 2 | table   |
| 3 | t1      |
| 1 | Testing |
| 2 | table   |
| 3 | t2      |
+---+---------+
</pre><p><strong>دستور mysqlshow برای دسترسی سریع به فهرست اطلاعات</strong><br /> شما می توانید برای دسترسی سریع به فهرست پایگاه های داده، جداول و ستون های آنها از دستور mysqlshow استفاده نمایید. مانند:</p><pre class="brush: sql; title: ; notranslate">$ mysqlshow -uroot
+--------------------+
|     Databases      |
+--------------------+
| information_schema |
| mydb_tmp            |
| mydb               |
| mysql              |
| radius             |
| security           |
+--------------------+
</pre><p>یا</p><pre class="brush: sql; title: ; notranslate">$ mysqlshow -uroot mysql
Database: mysql
+---------------------------+
|          Tables           |
+---------------------------+
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| servers                   |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
</pre><p>یا</p><pre class="brush: sql; title: ; notranslate">$ mysqlshow -uroot mysql servers
Database: mysql  Table: servers
+-------------+----------+-----------------+------+-----+---------+-------+---------------------------------+---------+
| Field       | Type     | Collation       | Null | Key | Default | Extra | Privileges                      | Comment |
+-------------+----------+-----------------+------+-----+---------+-------+---------------------------------+---------+
| Server_name | char(64) | utf8_general_ci | NO   | PRI |         |       | select,insert,update,references |         |
| Host        | char(64) | utf8_general_ci | NO   |     |         |       | select,insert,update,references |         |
| Db          | char(64) | utf8_general_ci | NO   |     |         |       | select,insert,update,references |         |
| Username    | char(64) | utf8_general_ci | NO   |     |         |       | select,insert,update,references |         |
| Password    | char(64) | utf8_general_ci | NO   |     |         |       | select,insert,update,references |         |
| Port        | int(4)   |                 | NO   |     | 0       |       | select,insert,update,references |         |
| Socket      | char(64) | utf8_general_ci | NO   |     |         |       | select,insert,update,references |         |
| Wrapper     | char(64) | utf8_general_ci | NO   |     |         |       | select,insert,update,references |         |
| Owner       | char(64) | utf8_general_ci | NO   |     |         |       | select,insert,update,references |         |
+-------------+----------+-----------------+------+-----+---------+-------+---------------------------------+---------+
</pre><p><strong>مرتب سازی همراه با ارجحیت</strong><br /> در صورتی که قصد دارید علاوه بر مرتب سازی یک query انتخاب، ارجحیتی نیز به بعضی از ریف های آن بدهید، کافیست از ترکیب <code>IN()</code> و order by استفاده کنید. در مثال زیر علاوه بر مرتب سازی بر اساس ستون iso_code به ردیف های IR و US ارجحیت و وزن بالاتری داده ایم:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt;SELECT * FROM countries ORDER by iso_code IN ('IR', 'US') desc;
+----------+----------------------------------------+
| iso_code | name                                   |
+----------+----------------------------------------+
| IR       | IRAN                         |
| US       | United States                          |
| AF       | Afghanistan                            |
| AL       | Albania                                |
| DZ       | Algeria                                |
| AS       | American Samoa                         |
+----------+----------------------------------------+
</pre><p>امیدوارم که این مطلب راهنمای خوبی برای استفاده راحت تر و مفید تر از پایگاه داده MySQL باشد.</p><p>موفق باشید <img src='http://zebardast.ir/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /></p><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2586%25da%25a9%25d8%25a7%25d8%25aa%25db%258c-%25d8%25af%25d8%25b1-%25d8%25b2%25d9%2585%25db%258c%25d9%2586%25d9%2587-%25d8%25a7%25d8%25b3%25d8%25aa%25d9%2581%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D9%86%DA%A9%D8%A7%D8%AA%DB%8C%20%D8%AF%D8%B1%20%D8%B2%D9%85%DB%8C%D9%86%D9%87%20%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87%20%D8%B1%D8%A7%D8%AD%D8%AA%20%D8%AA%D8%B1%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2586%25da%25a9%25d8%25a7%25d8%25aa%25db%258c-%25d8%25af%25d8%25b1-%25d8%25b2%25d9%2585%25db%258c%25d9%2586%25d9%2587-%25d8%25a7%25d8%25b3%25d8%25aa%25d9%2581%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D9%86%DA%A9%D8%A7%D8%AA%DB%8C%20%D8%AF%D8%B1%20%D8%B2%D9%85%DB%8C%D9%86%D9%87%20%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87%20%D8%B1%D8%A7%D8%AD%D8%AA%20%D8%AA%D8%B1%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2586%25da%25a9%25d8%25a7%25d8%25aa%25db%258c-%25d8%25af%25d8%25b1-%25d8%25b2%25d9%2585%25db%258c%25d9%2586%25d9%2587-%25d8%25a7%25d8%25b3%25d8%25aa%25d9%2581%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D9%86%DA%A9%D8%A7%D8%AA%DB%8C%20%D8%AF%D8%B1%20%D8%B2%D9%85%DB%8C%D9%86%D9%87%20%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87%20%D8%B1%D8%A7%D8%AD%D8%AA%20%D8%AA%D8%B1%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2586%25da%25a9%25d8%25a7%25d8%25aa%25db%258c-%25d8%25af%25d8%25b1-%25d8%25b2%25d9%2585%25db%258c%25d9%2586%25d9%2587-%25d8%25a7%25d8%25b3%25d8%25aa%25d9%2581%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;linkname=%D9%86%DA%A9%D8%A7%D8%AA%DB%8C%20%D8%AF%D8%B1%20%D8%B2%D9%85%DB%8C%D9%86%D9%87%20%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87%20%D8%B1%D8%A7%D8%AD%D8%AA%20%D8%AA%D8%B1%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d9%2586%25da%25a9%25d8%25a7%25d8%25aa%25db%258c-%25d8%25af%25d8%25b1-%25d8%25b2%25d9%2585%25db%258c%25d9%2586%25d9%2587-%25d8%25a7%25d8%25b3%25d8%25aa%25d9%2581%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql%2F&amp;title=%D9%86%DA%A9%D8%A7%D8%AA%DB%8C%20%D8%AF%D8%B1%20%D8%B2%D9%85%DB%8C%D9%86%D9%87%20%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87%20%D8%B1%D8%A7%D8%AD%D8%AA%20%D8%AA%D8%B1%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" id="wpa2a_4">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/' rel='bookmark' title='بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول'>بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%af%d8%a7%d8%af%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='انواع داده در MySQL'>انواع داده در MySQL</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>بدست آوردن کشور یک آدرس IP به کمک MySQL</title><link>http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/</link> <comments>http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/#comments</comments> <pubDate>Sat, 26 Feb 2011 12:56:10 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[برنامه نویسی]]></category> <category><![CDATA[پایگاه داده MySQL]]></category> <category><![CDATA[IP]]></category><guid isPermaLink="false">http://zebardast.ir/?p=1339</guid> <description><![CDATA[سلام مطلب امروز روشی برای بدست آوردن کشور یک آدرس IP (بخوانید آی پی) با استفاده از پایگاه داده MySQL را آموزش می دهد. در این مطلب ابتدا یک جدول که حاوی نام کشور و محدوده IP های آن می باشد ایجاد می کنیم. سپس با تعریف یک تابع، امکان تشخیص سریع کشور مرتبط با [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/mysql_last_insert_id/' rel='bookmark' title='روش بدست آوردن آخرین آی دی ثبت شده در دیتابیس &#8211; MySQL'>روش بدست آوردن آخرین آی دی ثبت شده در دیتابیس &#8211; MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/' rel='bookmark' title='بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول'>بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول</a></li><li><a href='http://zebardast.ir/%da%86%da%af%d9%88%d9%86%da%af%db%8c-%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%d9%84%db%8c%d8%b3%d8%aa-%d8%a8%d8%b3%d8%aa%d9%87-%d9%87%d8%a7%db%8c-%d9%86%d8%b1%d9%85-%d8%a7%d9%81%d8%b2/' rel='bookmark' title='چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند'>چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند</a></li></ol>]]></description> <content:encoded><![CDATA[<p>سلام <img src='http://zebardast.ir/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>مطلب امروز روشی برای بدست آوردن کشور یک آدرس IP (بخوانید آی پی) با استفاده از پایگاه داده MySQL را آموزش می دهد. در این مطلب ابتدا یک جدول که حاوی نام کشور و محدوده IP های آن می باشد ایجاد می کنیم. سپس با تعریف یک تابع، امکان تشخیص سریع کشور مرتبط با هر آی پی را ارائه می دهیم.</p><h3>IP چیست؟</h3><p>به نقل از صفحه «<a href="http://fa.wikipedia.org/wiki/%D9%86%D8%B4%D8%A7%D9%86%DB%8C_%D9%BE%D8%B1%D9%88%D8%AA%DA%A9%D9%84_%D8%A7%DB%8C%D9%86%D8%AA%D8%B1%D9%86%D8%AA">نشانی پروتکل اینترنت</a>» در ویکی پدیا، دانشنامه آزاد:</p><blockquote><p> نشانی پروتکل اینترنت (Internet Protocol Address) یا به اختصار نشانی آی‌پی (IP Address) نشانی‌ عددی است که به هریک از دستگاه ها و رایانه‌های متصل به شبکه ی رایانه ای که بر مبنای نمایه TCP/IP (از جمله اینترنت) کار می‌کند، اختصاص داده می‌شوند. پیام‌هایی که دیگر رایانه‌ها برای این رایانه می‌فرستند با این نشانه ی عددی همراه است و راه یاب های شبکه آن را مانند «نشانی گیرنده» در نامه‌های پستی تعبیر می‌کنند، تا بالاخره پیام به رابط شبکه رایانه مورد نظر برسد.</p></blockquote><h3>جدول پایگاه داده</h3><p>من اطلاعات مربوط به محدوده آدرس های آی پی و کشور مرتبط با آنها در جدولی با نام ip_location ذخیره کرده ام. برای ایجاد این جدول دستور زیر را در خط فرمان MySQL وارد نمایید:</p><pre class="brush: sql; title: ; notranslate">
CREATE TABLE `ip_location` (
  `from_ip` int(15) DEFAULT NULL,
  `to_ip` int(15) DEFAULT NULL,
  `country` varchar(32) DEFAULT NULL,
  KEY `from_ip` (`from_ip`,`country`),
  KEY `to_ip` (`to_ip`,`country`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
</pre><p>مرحله بعد وارد کردن فهرست کشورها و محدوده آی پی های آن هاست. برای سادگی کار من یک خروجی (Dump) از دستور ایجاد جدول ip_location و اطلاعات موجود در آن تهیه کرده ام.<br /> • <a href='http://zebardast.ir/wp-content/uploads/2011/02/ip_location.sql_.zip'>دریافت ip_location.sql</a> با حجم 165KB<br /> در صورتی که آشنایی با وارد کردن (import) چنین فایل هایی ندارید، پیشنهاد می کنم مطلب «<a href="http://zebardast.ir/%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C-%D9%88%D8%A7%D8%B1%D8%AF-%DA%A9%D8%B1%D8%AF%D9%86import-%D9%88-%D8%B5%D8%A7%D8%AF%D8%B1-%DA%A9%D8%B1%D8%AF%D9%86export-%D8%AF%D8%B1-mysql/">راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</a>» را مطالعه کنید.</p><h3>تابع getIpCountry</h3><p>مرحله بعد تعریف تابعی برای محاسبه آدرس ۳۲ بیتی هر آی پی و مقایسه آن با محدوده های موجود در جدول ip_location است. برای تعریف این تابع دستورات زیر را در خط فرمان MySQL وارد کنید:</p><pre class="brush: sql; title: ; notranslate">
DELIMITER $$
CREATE FUNCTION getIpCountry(ip varchar(15)) RETURNS varchar(64)
BEGIN
 declare a tinyint unsigned;
 declare b tinyint unsigned;
 declare c tinyint unsigned;
 declare d tinyint unsigned;
 declare total bigint;
 declare result varchar(64);
 select substring_index(ip, '.', 1 ) into a;
 select substring_index(substring_index(ip , '.', 2 ),'.',-1) into b;
 select substring_index(substring_index(ip , '.', -2 ),'.',1) into c;
 select substring_index(ip, '.', -1 ) into d;
 set total := (a*256*256*256) + (b*256*256) + (c*256) + d;
 select SQL_CACHE country into result from ip_location where total between from_ip and to_ip limit 1;
 if (result is null) or (result = '') then
 set result := 'unknown';
 end if;
 return result;
 END$$
DELIMITER ;
</pre><h3>بدست آوردن کشور</h3><p>برای مشاهده کشور مرتبط با هر آی پی کافیست تا با استفاده از دستور SELECT تابع getIpCountry را فراخوانی نماییم. مانند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; SELECT getIpCountry('79.175.165.171');
+--------------------------------+
| getIpCountry('79.175.165.171') |
+--------------------------------+
| IRAN (ISLAMIC REPUBLIC OF)     |
+--------------------------------+
1 row in set (0.03 sec)

mysql&gt; SELECT getIpCountry('4.2.2.4');
+-------------------------+
| getIpCountry('4.2.2.4') |
+-------------------------+
| UNITED STATES           |
+-------------------------+
1 row in set (0.00 sec)
</pre><h3>ایده استفاده</h3><p>فرض کنید که شما سایتی به دو زبان فارسی و انگلیسی دارید. با استفاده از این روش امکان تشخیص کشور بازدیدکننده برای شما بوجود می آید. در نتیجه می توانید کاربر بیننده را به صورت پیش فرض به سایت انگلیسی یا فارسی خود راهنمایی کنید. این روش قابل تعمیم به چندین زبان می باشد.</p><h3>پی نوشت</h3><p>• این مطلب فقط برای آدرس های آی پی نسخه ۴ قابل استفاده است.</p><p>موفق باشید <img src='http://zebardast.ir/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /></p><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25af%25d8%25b3%25d8%25aa-%25d8%25a2%25d9%2588%25d8%25b1%25d8%25af%25d9%2586-%25da%25a9%25d8%25b4%25d9%2588%25d8%25b1-%25db%258c%25da%25a9-%25d8%25a2%25d8%25af%25d8%25b1%25d8%25b3-ip-%25d8%25a8%25d9%2587-%25da%25a9%25d9%2585%25da%25a9-mysql%2F&amp;linkname=%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%DA%A9%D8%B4%D9%88%D8%B1%20%DB%8C%DA%A9%20%D8%A2%D8%AF%D8%B1%D8%B3%20IP%20%D8%A8%D9%87%20%DA%A9%D9%85%DA%A9%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25af%25d8%25b3%25d8%25aa-%25d8%25a2%25d9%2588%25d8%25b1%25d8%25af%25d9%2586-%25da%25a9%25d8%25b4%25d9%2588%25d8%25b1-%25db%258c%25da%25a9-%25d8%25a2%25d8%25af%25d8%25b1%25d8%25b3-ip-%25d8%25a8%25d9%2587-%25da%25a9%25d9%2585%25da%25a9-mysql%2F&amp;linkname=%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%DA%A9%D8%B4%D9%88%D8%B1%20%DB%8C%DA%A9%20%D8%A2%D8%AF%D8%B1%D8%B3%20IP%20%D8%A8%D9%87%20%DA%A9%D9%85%DA%A9%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25af%25d8%25b3%25d8%25aa-%25d8%25a2%25d9%2588%25d8%25b1%25d8%25af%25d9%2586-%25da%25a9%25d8%25b4%25d9%2588%25d8%25b1-%25db%258c%25da%25a9-%25d8%25a2%25d8%25af%25d8%25b1%25d8%25b3-ip-%25d8%25a8%25d9%2587-%25da%25a9%25d9%2585%25da%25a9-mysql%2F&amp;linkname=%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%DA%A9%D8%B4%D9%88%D8%B1%20%DB%8C%DA%A9%20%D8%A2%D8%AF%D8%B1%D8%B3%20IP%20%D8%A8%D9%87%20%DA%A9%D9%85%DA%A9%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25af%25d8%25b3%25d8%25aa-%25d8%25a2%25d9%2588%25d8%25b1%25d8%25af%25d9%2586-%25da%25a9%25d8%25b4%25d9%2588%25d8%25b1-%25db%258c%25da%25a9-%25d8%25a2%25d8%25af%25d8%25b1%25d8%25b3-ip-%25d8%25a8%25d9%2587-%25da%25a9%25d9%2585%25da%25a9-mysql%2F&amp;linkname=%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%DA%A9%D8%B4%D9%88%D8%B1%20%DB%8C%DA%A9%20%D8%A2%D8%AF%D8%B1%D8%B3%20IP%20%D8%A8%D9%87%20%DA%A9%D9%85%DA%A9%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25af%25d8%25b3%25d8%25aa-%25d8%25a2%25d9%2588%25d8%25b1%25d8%25af%25d9%2586-%25da%25a9%25d8%25b4%25d9%2588%25d8%25b1-%25db%258c%25da%25a9-%25d8%25a2%25d8%25af%25d8%25b1%25d8%25b3-ip-%25d8%25a8%25d9%2587-%25da%25a9%25d9%2585%25da%25a9-mysql%2F&amp;title=%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%DA%A9%D8%B4%D9%88%D8%B1%20%DB%8C%DA%A9%20%D8%A2%D8%AF%D8%B1%D8%B3%20IP%20%D8%A8%D9%87%20%DA%A9%D9%85%DA%A9%20MySQL" id="wpa2a_6">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/mysql_last_insert_id/' rel='bookmark' title='روش بدست آوردن آخرین آی دی ثبت شده در دیتابیس &#8211; MySQL'>روش بدست آوردن آخرین آی دی ثبت شده در دیتابیس &#8211; MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/' rel='bookmark' title='بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول'>بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول</a></li><li><a href='http://zebardast.ir/%da%86%da%af%d9%88%d9%86%da%af%db%8c-%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%d9%84%db%8c%d8%b3%d8%aa-%d8%a8%d8%b3%d8%aa%d9%87-%d9%87%d8%a7%db%8c-%d9%86%d8%b1%d9%85-%d8%a7%d9%81%d8%b2/' rel='bookmark' title='چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند'>چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</title><link>http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/</link> <comments>http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/#comments</comments> <pubDate>Mon, 25 Oct 2010 05:46:44 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[پایگاه داده MySQL]]></category> <category><![CDATA[import]]></category> <category><![CDATA[پایگاه داده]]></category><guid isPermaLink="false">http://zebardast.ir/</guid> <description><![CDATA[— MySQL سلام قبلا در مورد انتقال اطلاعات در MySQL توضیح دادم. مطلب امروز در زمینه وارد کردن اطلاعات (import) از یک فایل متنی (txt, csv و &#8230;) به پایگاه داده MySQL می باشد. برای وارد کردن اطلاعات از یک فایل به پایگاه داده MySQL از دستور `LOAD DATA INFILE` استفاده می کنیم. شکل کلی [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/' rel='bookmark' title='راهنمای وارد کردن(import) و صادر کردن(export) در MySQL'>راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/' rel='bookmark' title='انتقال اطلاعات در MySQL'>انتقال اطلاعات در MySQL</a></li><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li></ol>]]></description> <content:encoded><![CDATA[<div class="autocap alignleft" style="width: 110px;"><div><a href="http://zebardast.ir/wp-content/uploads/2010/10/logo-mysql-110x57.png"><img class=" size-full wp-image-1157" title="MySQL" src="http://zebardast.ir/wp-content/uploads/2010/10/logo-mysql-110x57.png" alt="" width="110" height="57" /></a><p class="autocap-text"><span class="hide">— </span>MySQL</p></div></div><p>سلام</p><p>قبلا در مورد <a href="http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/">انتقال اطلاعات در MySQL</a> توضیح دادم. مطلب امروز در زمینه وارد کردن اطلاعات (import) از یک فایل متنی (txt, csv و &#8230;) به پایگاه داده MySQL می باشد. برای وارد کردن اطلاعات از یک فایل به پایگاه داده MySQL از دستور `LOAD DATA INFILE` استفاده می کنیم. شکل کلی این دستور به صورت زیر است:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
    [REPLACE | IGNORE]
    INTO TABLE tbl_name
    [CHARACTER SET charset_name]
    [{FIELDS | COLUMNS}
        [TERMINATED BY 'string']
        [[OPTIONALLY] ENCLOSED BY 'char']
        [ESCAPED BY 'char']
    ]
    [LINES
        [STARTING BY 'string']
        [TERMINATED BY 'string']
    ]
    [IGNORE number LINES]
    [(col_name_or_user_var,...)]
    [SET col_name = expr,...]
</pre><p>ساده ترین شکل استفاده از این دستور به شکل زیر می باشد:</p><pre class="brush: sql; title: ; notranslate">mysql&gt; LOAD DATA INFILE 'data.txt' INTO TABLE my_db.my_table;
</pre><p>در صورتی که جداکننده فیلد ها (FIELDS TERMINATED) را مشخص نکنید، MySQL مقدار پیش فرض <code>\t</code> که همان تب (Tab) هست را در نظر می گیرد. همچنین مقدار پیش فرض جداکننده خطوط <code>\n</code> که همان خط جدید (New Line) می باشد را در نظر می گیرد.<br /> <strong>نکته</strong><br /> در صورتی که فایل شما دارای کاراکترهای UTF8 می باشد، علاوه بر تعریف جدول my_table با encoding مربوط به UTF8، باید نوع encoding را نیز در دستور LOAD DATE بنویسید. به صورت:</p><pre class="brush: sql; title: ; notranslate">LOAD DATA INFILE 'data.txt' INTO TABLE my_db.my_table  character set UTF8;
</pre><p>در ادامه به بررسی یک مثال عملی در مورد واردکردن اطلاعات یک فایل <abbr title="Comma Separated Values">CSV</abbr> می پردازیم.</p><h3>بررسی یک مثال عملی</h3><p>فرض کنید فایلی به نام <code>ip-list.csv</code> با محتوای زیر دارید:</p><pre>
"1.0.0.0","1.0.0.255","16777216","16777471","AU","Australia"
"1.0.1.0","1.0.3.255","16777472","16778239","CN","China"
"1.0.4.0","1.0.7.255","16778240","16779263","AU","Australia"
"1.0.8.0","1.0.15.255","16779264","16781311","CN","China"
"1.0.16.0","1.0.31.255","16781312","16785407","JP","Japan"
"1.0.32.0","1.0.63.255","16785408","16793599","CN","China"
"1.0.64.0","1.0.127.255","16793600","16809983","JP","Japan"
"1.0.128.0","1.0.255.255","16809984","16842751","TH","Thailand"
"1.1.0.0","1.1.0.255","16842752","16843007","CN","China"
"1.1.1.0","1.1.1.255","16843008","16843263","AU","Australia"
"1.1.2.0","1.1.63.255","16843264","16859135","CN","China"
"1.1.64.0","1.1.127.255","16859136","16875519","JP","Japan"
</pre><p>این فایل تعدادی آی‌پی و کشور متناظر با آن‌ها را نمایش می دهد. برای وارد کردن این اطلاعات به پایگاه داده MySQL ابتدا باید جدولی مناسب با این داده‌ها بسازیم. برای آشنایی با انتخاب نوع مناسب داده می توانید به مطلب <a href="http://zebardast.ir/%D8%A7%D9%86%D9%88%D8%A7%D8%B9-%D8%AF%D8%A7%D8%AF%D9%87-%D9%87%D8%A7-%D8%AF%D8%B1-%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87-%D8%AF%D8%A7%D8%AF%D9%87-mysql/" title="انواع داده در MySQL">انواع داده در MySQL</a> مراجعه نمایید. دستور زیر یک جدول به نام geoip ایجاد می کند:</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; CREATE TABLE `geoip` (
  `begin_ip` varchar(15) NOT NULL,
  `end_ip` varchar(15) NOT NULL,
  `begin_num` int(11) unsigned NOT NULL,
  `end_num` int(11) unsigned NOT NULL,
  `country` char(2) NOT NULL,
  `name` varchar(50) NOT NULL
) ENGINE=MyISAM;
</pre><p>دستور زیر این اطلاعات را از فایل <code>ip-list.csv</code> به جدول <code>geoip</code> وارد می‌کند. در صورت نیاز باید آدرس صحیح فایل را نیز در کنار نام آن درج کنید.</p><pre class="brush: sql; title: ; notranslate">
mysql&gt; LOAD DATA INFILE 'ip-list.csv'
 INTO TABLE geoip
 FIELDS TERMINATED BY &quot;,&quot; ENCLOSED BY '&quot;';

Query OK, 12 rows affected (0.23 sec)
Records: 12  Deleted: 0  Skipped: 0  Warnings: 0
</pre><p>در دستور بالا مشخص کرده ایم که ستون‌ها با &#8220;,&#8221; جدا شده و محتوای هر ستون نیز در داخل دو <code>"</code> قرار دارد.</p><h3>منابع</h3><ul><li><a href="http://dev.mysql.com/doc/refman/5.1/en/load-data.html">LOAD DATA INFILE</a> (سایت رسمی MySQL)</li></ul><p><strong>پی نوشت</strong></p><ul><li>متاسفانه <a href="http://dev.mysql.com/">بخش توسعه پایگاه داده MySQL</a> با استناد به قانون جرایم رایانه ای  فیلتر شده است. امیدوارم مسئولین تفکر و تعقل بیشتری نسبت به فیلتر کردن سایت ها داشته باشند.</li><li>این مطلب به بهانه فیلتر شدن بخش توسعه پایگاه داده MySQL نوشته شده است.</li></ul><p>شاد باشید</p><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25a7%25d8%25b2-%25d9%2581%25d8%25a7%25db%258c%25d9%2584-%25d8%25a8%25d9%2587-mysql%2F&amp;linkname=%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%A7%D8%B2%20%D9%81%D8%A7%DB%8C%D9%84%20%D8%A8%D9%87%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25a7%25d8%25b2-%25d9%2581%25d8%25a7%25db%258c%25d9%2584-%25d8%25a8%25d9%2587-mysql%2F&amp;linkname=%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%A7%D8%B2%20%D9%81%D8%A7%DB%8C%D9%84%20%D8%A8%D9%87%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25a7%25d8%25b2-%25d9%2581%25d8%25a7%25db%258c%25d9%2584-%25d8%25a8%25d9%2587-mysql%2F&amp;linkname=%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%A7%D8%B2%20%D9%81%D8%A7%DB%8C%D9%84%20%D8%A8%D9%87%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25a7%25d8%25b2-%25d9%2581%25d8%25a7%25db%258c%25d9%2584-%25d8%25a8%25d9%2587-mysql%2F&amp;linkname=%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%A7%D8%B2%20%D9%81%D8%A7%DB%8C%D9%84%20%D8%A8%D9%87%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25a7%25d8%25b2-%25d9%2581%25d8%25a7%25db%258c%25d9%2584-%25d8%25a8%25d9%2587-mysql%2F&amp;title=%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%A7%D8%B2%20%D9%81%D8%A7%DB%8C%D9%84%20%D8%A8%D9%87%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL" id="wpa2a_8">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/' rel='bookmark' title='راهنمای وارد کردن(import) و صادر کردن(export) در MySQL'>راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/' rel='bookmark' title='انتقال اطلاعات در MySQL'>انتقال اطلاعات در MySQL</a></li><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>انتقال اطلاعات در MySQL</title><link>http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/</link> <comments>http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/#comments</comments> <pubDate>Sat, 05 Jun 2010 08:00:07 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[پایگاه داده MySQL]]></category> <category><![CDATA[export]]></category> <category><![CDATA[import]]></category> <category><![CDATA[mysqldump]]></category> <category><![CDATA[پایگاه داده]]></category><guid isPermaLink="false">http://zebardast.ir/?p=1062</guid> <description><![CDATA[سلام یکی از مراحل انتقال اطلاعات یک پروژه مربوط به انتقال پایگاه های داده می باشد. برای اینکار روش های مختلفی وجود دارد ولی همه آنها ۲ مرحله مشابه دارند، Import و Export کردن. مرحله export کردن را می توان به عنوان درست کردن نسخه پشتیبان نیز در نظر گرفت. با فرض اینکه پایگاه داده مورد [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/' rel='bookmark' title='راهنمای وارد کردن(import) و صادر کردن(export) در MySQL'>راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</a></li><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/' rel='bookmark' title='بدست آوردن کشور یک آدرس IP به کمک MySQL'>بدست آوردن کشور یک آدرس IP به کمک MySQL</a></li></ol>]]></description> <content:encoded><![CDATA[<p>سلام <img src='http://zebardast.ir/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>یکی از مراحل انتقال اطلاعات یک پروژه مربوط به انتقال پایگاه های داده می باشد. برای اینکار روش های مختلفی وجود دارد ولی همه آنها ۲ مرحله مشابه دارند، Import و Export کردن. مرحله export کردن را می توان به عنوان درست کردن نسخه پشتیبان نیز در نظر گرفت.<br /> با فرض اینکه پایگاه داده مورد استفاده MySQL می باشد، می توانید از دستورات زیر استفاده کنید:</p><h3>Export</h3><p>دستور mysqldump برای گرفتن خروجی از پایگاه داده استفاده می شود. به عنوان مثال:</p><pre class="brush: bash; title: ; notranslate">$ mysqldump -umy_user -p -R my_database &gt; export.sql</pre><p>دستور بالا محتویات پایگاه داده my_database به همراه روتین های آن (پارامتر R) را در فایل export.sql ذخیره می کند.<br /> در صورتی که پایگاه داده شما بر روی سرور قرار دارد می توانید با استفاده از پارامتر h و کاربر خودتان بر روی سرور مستقیم و بدون نیاز به ftp و ssh نسخه پشتیبان تهیه کنید:</p><pre class="brush: bash; title: ; notranslate">$ mysqldump -umy_server_user -p -hserver_host -R my_database &gt; export.sql</pre><h3>Import</h3><p>برای وارد کردن اطلاعات از دستور mysql استفاده می کنیم:</p><pre class="brush: bash; title: ; notranslate">$ mysql -umy_user -p my_database &lt; export.sql</pre><p>* به جهت علامت &gt; توجه کنید.</p><h3>ترکیب کردن Export و Import</h3><p>برای ترکیب کردن این دو دستور از | استفاده می کنیم:</p><pre class="brush: bash; title: ; notranslate">$ mysqldump -umy_user_1 -pmy_pass_1 -R my_database \
 | mysql -umy_user_2 -pmy_pass_2 my_database</pre><p>*حداقل یکی از رمز عبورهای بالا (my_pass_1 یا my_pass_2)  را باید وارد کنید.<br /> البته Import کردن مستقیم از دستور Export خیلی جالب نیست. این دستور بیشتر زمانی کاربرد دارد که بخواهید یکی از جدول های پایگاه داده خود را بروز رسانی کنید:</p><pre class="brush: bash; title: ; notranslate">
$ mysqldump -umy_user -pmy_pass_1 -R my_database my_table \
 | mysql -umy_user -pmy_pass_2  my_database
</pre><p>دستور بالا ساختار و محتویات جدول my_table را بروزرسانی می کنید.</p><p>کاربرد دیگر ترکیب کردن Export و Import تهیه نسخه کاملا مشابه از پایگاه داده می باشد. دستورات زیر یک نسخه کاملا مشابه از پایگاه داده my_database با نام my_database_2 بر روی پایگاه داده ایجاد می کنید:</p><pre class="brush: bash; title: ; notranslate">
$ mysqladmin -umy_user -p create my_database_2
$ mysqldump -umy_user_1 -pmy_pass_1 -R my_database \
 | mysql -umy_user_2 -pmy_pass_2  my_database_2
</pre><p>برای اطلاعات بیشتر به لینک های زیر مراجعه کنید:</p><div class="ltr"><ul><li><a href="http://dev.mysql.com/doc/refman/5.1/en/mysql.html">mysql — The MySQL Command-Line Tool</a></li><li><a href="http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html">mysqldump — A Database Backup Program</a></li></ul></div><p>موفق باشید</p><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d8%25aa%25d9%2582%25d8%25a7%25d9%2584-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%AF%D8%B1%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d8%25aa%25d9%2582%25d8%25a7%25d9%2584-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%AF%D8%B1%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d8%25aa%25d9%2582%25d8%25a7%25d9%2584-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%AF%D8%B1%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d8%25aa%25d9%2582%25d8%25a7%25d9%2584-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%AF%D8%B1%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d8%25a7%25d9%2586%25d8%25aa%25d9%2582%25d8%25a7%25d9%2584-%25d8%25a7%25d8%25b7%25d9%2584%25d8%25a7%25d8%25b9%25d8%25a7%25d8%25aa-%25d8%25af%25d8%25b1-mysql%2F&amp;title=%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84%20%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%20%D8%AF%D8%B1%20MySQL" id="wpa2a_10">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/' rel='bookmark' title='راهنمای وارد کردن(import) و صادر کردن(export) در MySQL'>راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</a></li><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/' rel='bookmark' title='بدست آوردن کشور یک آدرس IP به کمک MySQL'>بدست آوردن کشور یک آدرس IP به کمک MySQL</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</title><link>http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/</link> <comments>http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/#comments</comments> <pubDate>Fri, 08 Jun 2007 10:22:51 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[پایگاه داده MySQL]]></category> <category><![CDATA[export]]></category> <category><![CDATA[import]]></category> <category><![CDATA[پایگاه داده]]></category><guid isPermaLink="false">http://itpencil.wordpress.com/2007/06/08/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/</guid> <description><![CDATA[سلام دیروز داشتم سایتی رو منتقل می کردم. برای انتقال اطلاعات هم مثل همیشه از ترمینال(کنسول؟) استفاده کردم. گفتم اینجا روش کار رو بنویسم تا اگر شما هم روزی نیاز به انتقال دیتابیس mysql (مای اس کیو ال؟) داشتید براتون مفید باشه. توجه داشته باشید که برای اینکه از این روش استفاده کنید، سرور شما [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/' rel='bookmark' title='انتقال اطلاعات در MySQL'>انتقال اطلاعات در MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/' rel='bookmark' title='بدست آوردن کشور یک آدرس IP به کمک MySQL'>بدست آوردن کشور یک آدرس IP به کمک MySQL</a></li></ol>]]></description> <content:encoded><![CDATA[<p>سلام <img src="http://www.mysql.com/common/logos/mysql_100x52-64.gif" alt="mysql" align="left" /></p><p>دیروز داشتم سایتی رو منتقل می کردم. برای انتقال اطلاعات هم مثل همیشه از ترمینال(کنسول؟) استفاده کردم. گفتم اینجا روش کار رو بنویسم تا اگر شما هم روزی نیاز به انتقال دیتابیس mysql (مای اس کیو ال؟) داشتید براتون مفید باشه.<br /> توجه داشته باشید که برای اینکه از این روش استفاده کنید، سرور شما باید لینک باشه و بتونید پورت ssh اون باز باشه. یا اینکه روی لوکال در لینوکس باشید. خلاصه اینکه بدونید یه جوری دستور رو اجرا کنید.</p><p><strong>صادر کردن (export)</strong></p><pre class="brush: bash; title: ; notranslate">$ mysqldump -u username -p password database_name &gt; FILE.sql</pre><p>برای export شما باید به عنوان کاربر ریشه (root ؟) اقدام کنید.<br /> username: نام کاربری. معمولا root<br /> password: رمز عبور. معمولا خالی است و نیاز به نوشتن ندارد.<br /> database_name: نام دیتابیس (پایگاه داده)<br /> FILE.sql: نام فایلی که اطلاعات صادر شده در آن باید ذخیره شوند. در صورتی که فایل وجود نداشته باشد، این فایل ایجاد می شود.</p><p><strong>وارد کردن (import)</strong><br /> با دستور زیر اطلاعات خود را وارد می کنید:</p><pre class="brush: bash; title: ; notranslate">$ mysql -u username -p password database_name  &amp;lt; FILE.sql </pre><p>توضیحات این قسمت نیز مانند بخش صادر کردن(export) است.</p><p>موفق باشید</p><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25b1%25d8%25a7%25d9%2587%25d9%2586%25d9%2585%25d8%25a7%25db%258c-%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586import-%25d9%2588-%25d8%25b5%25d8%25a7%25d8%25af%25d8%25b1-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586export-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C%20%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%28import%29%20%D9%88%20%D8%B5%D8%A7%D8%AF%D8%B1%20%DA%A9%D8%B1%D8%AF%D9%86%28export%29%20%D8%AF%D8%B1%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25b1%25d8%25a7%25d9%2587%25d9%2586%25d9%2585%25d8%25a7%25db%258c-%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586import-%25d9%2588-%25d8%25b5%25d8%25a7%25d8%25af%25d8%25b1-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586export-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C%20%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%28import%29%20%D9%88%20%D8%B5%D8%A7%D8%AF%D8%B1%20%DA%A9%D8%B1%D8%AF%D9%86%28export%29%20%D8%AF%D8%B1%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25b1%25d8%25a7%25d9%2587%25d9%2586%25d9%2585%25d8%25a7%25db%258c-%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586import-%25d9%2588-%25d8%25b5%25d8%25a7%25d8%25af%25d8%25b1-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586export-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C%20%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%28import%29%20%D9%88%20%D8%B5%D8%A7%D8%AF%D8%B1%20%DA%A9%D8%B1%D8%AF%D9%86%28export%29%20%D8%AF%D8%B1%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25b1%25d8%25a7%25d9%2587%25d9%2586%25d9%2585%25d8%25a7%25db%258c-%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586import-%25d9%2588-%25d8%25b5%25d8%25a7%25d8%25af%25d8%25b1-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586export-%25d8%25af%25d8%25b1-mysql%2F&amp;linkname=%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C%20%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%28import%29%20%D9%88%20%D8%B5%D8%A7%D8%AF%D8%B1%20%DA%A9%D8%B1%D8%AF%D9%86%28export%29%20%D8%AF%D8%B1%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d8%25b1%25d8%25a7%25d9%2587%25d9%2586%25d9%2585%25d8%25a7%25db%258c-%25d9%2588%25d8%25a7%25d8%25b1%25d8%25af-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586import-%25d9%2588-%25d8%25b5%25d8%25a7%25d8%25af%25d8%25b1-%25da%25a9%25d8%25b1%25d8%25af%25d9%2586export-%25d8%25af%25d8%25b1-mysql%2F&amp;title=%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C%20%D9%88%D8%A7%D8%B1%D8%AF%20%DA%A9%D8%B1%D8%AF%D9%86%28import%29%20%D9%88%20%D8%B5%D8%A7%D8%AF%D8%B1%20%DA%A9%D8%B1%D8%AF%D9%86%28export%29%20%D8%AF%D8%B1%20MySQL" id="wpa2a_12">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/' rel='bookmark' title='انتقال اطلاعات در MySQL'>انتقال اطلاعات در MySQL</a></li><li><a href='http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/' rel='bookmark' title='بدست آوردن کشور یک آدرس IP به کمک MySQL'>بدست آوردن کشور یک آدرس IP به کمک MySQL</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>بازیابی داده از پایگاه داده MySQL &#8211; قسمت اول</title><link>http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/</link> <comments>http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/#comments</comments> <pubDate>Tue, 08 May 2007 18:50:53 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[پایگاه داده MySQL]]></category><guid isPermaLink="false">http://itpencil.wordpress.com/2007/05/08/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/</guid> <description><![CDATA[بازیابی داده از پایگاه داده توسط دستور SELECT انجام می شود. در واقع سطرهایی را که با معیار های مشخص شده مطابقت داشته باشند را انتخاب کرده و آنها را بازیابی می کنیم. شکل کلی این دستور عبارت است از : دستور زیر فهرست محتویان دو ستون column_1 و column_2 که در جدول table_1 قرار [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%af%d8%a7%d8%af%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='انواع داده در MySQL'>انواع داده در MySQL</a></li></ol>]]></description> <content:encoded><![CDATA[<p>بازیابی داده از پایگاه داده توسط دستور SELECT انجام می شود. در واقع سطرهایی را که با معیار های مشخص شده مطابقت داشته باشند را انتخاب کرده و آنها را بازیابی می کنیم.<br /> شکل کلی این دستور عبارت است از :</p><pre class="brush: sql; title: ; notranslate">mysql&gt;  SELECT [options] items
[INTO file_details]
FROM tables
[WHERE conditions]
[GROUP BY group_type]
[HAVING where_definition]
[ORDER BY order_type]
[LIMIT limit_criteria]
[PROCEDURE proc_name(arguments)]
[lock_options]
</pre><p>دستور زیر فهرست محتویان دو ستون column_1 و column_2 که در جدول table_1 قرار دارند را نمایش می دهد:</p><pre class="brush: sql; title: ; notranslate">mysql&gt; SELECT column_1, column_2
FROM table_1;</pre><p>اگر از * استفاده کنید همه ستون های جدول مربوطه را انتخاب کرده اید. مثلا برای بازیابی داده های همه سطر ها و ستون های جدول table_1 از کد زیر استفاده کنید:</p><pre class="brush: sql; title: ; notranslate">mysql&gt; SELECT *
FROM table_1;</pre><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25a7%25d8%25b2%25db%258c%25d8%25a7%25d8%25a8%25db%258c-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql-%25d9%2582%25d8%25b3%25d9%2585%25d8%25aa-%25d8%25a7%25d9%2588%25d9%2584%2F&amp;linkname=%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL%20%26%238211%3B%20%D9%82%D8%B3%D9%85%D8%AA%20%D8%A7%D9%88%D9%84" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25a7%25d8%25b2%25db%258c%25d8%25a7%25d8%25a8%25db%258c-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql-%25d9%2582%25d8%25b3%25d9%2585%25d8%25aa-%25d8%25a7%25d9%2588%25d9%2584%2F&amp;linkname=%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL%20%26%238211%3B%20%D9%82%D8%B3%D9%85%D8%AA%20%D8%A7%D9%88%D9%84" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25a7%25d8%25b2%25db%258c%25d8%25a7%25d8%25a8%25db%258c-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql-%25d9%2582%25d8%25b3%25d9%2585%25d8%25aa-%25d8%25a7%25d9%2588%25d9%2584%2F&amp;linkname=%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL%20%26%238211%3B%20%D9%82%D8%B3%D9%85%D8%AA%20%D8%A7%D9%88%D9%84" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25a7%25d8%25b2%25db%258c%25d8%25a7%25d8%25a8%25db%258c-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql-%25d9%2582%25d8%25b3%25d9%2585%25d8%25aa-%25d8%25a7%25d9%2588%25d9%2584%2F&amp;linkname=%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL%20%26%238211%3B%20%D9%82%D8%B3%D9%85%D8%AA%20%D8%A7%D9%88%D9%84" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d8%25a8%25d8%25a7%25d8%25b2%25db%258c%25d8%25a7%25d8%25a8%25db%258c-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-%25d8%25a7%25d8%25b2-%25d9%25be%25d8%25a7%25db%258c%25da%25af%25d8%25a7%25d9%2587-%25d8%25af%25d8%25a7%25d8%25af%25d9%2587-mysql-%25d9%2582%25d8%25b3%25d9%2585%25d8%25aa-%25d8%25a7%25d9%2588%25d9%2584%2F&amp;title=%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C%20%D8%AF%D8%A7%D8%AF%D9%87%20%D8%A7%D8%B2%20%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87%20%D8%AF%D8%A7%D8%AF%D9%87%20MySQL%20%26%238211%3B%20%D9%82%D8%B3%D9%85%D8%AA%20%D8%A7%D9%88%D9%84" id="wpa2a_14">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%a7%d8%b2-%d9%81%d8%a7%db%8c%d9%84-%d8%a8%d9%87-mysql/' rel='bookmark' title='وارد کردن اطلاعات از فایل به پایگاه داده MySQL'>وارد کردن اطلاعات از فایل به پایگاه داده MySQL</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%af%d8%a7%d8%af%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='انواع داده در MySQL'>انواع داده در MySQL</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d8%a8%d8%a7%d8%b2%db%8c%d8%a7%d8%a8%db%8c-%d8%af%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql-%d9%82%d8%b3%d9%85%d8%aa-%d8%a7%d9%88%d9%84/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>روش بدست آوردن آخرین آی دی ثبت شده در دیتابیس &#8211; MySQL</title><link>http://zebardast.ir/mysql_last_insert_id/</link> <comments>http://zebardast.ir/mysql_last_insert_id/#comments</comments> <pubDate>Sun, 07 Jan 2007 13:29:03 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[جاوا]]></category> <category><![CDATA[پایگاه داده MySQL]]></category> <category><![CDATA[پی اچ پی (PHP)]]></category><guid isPermaLink="false">http://itpencil.wordpress.com/2007/01/07/mysql_last_insert_id/</guid> <description><![CDATA[سلام گاهی اوقات شما نیاز دارید تا آی دی آخرین رکورد ثبت شده در دیتابیس را بدست آورید. برای این کار شما می توانید query زیر را جهت نمایش آخرین آی دی ثبت شده استفاده نمائید:(در MySQL) این query آی دی رکورد ثبت شده را بر می گرداند. البته توجه داشته باشید که این دستور [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/' rel='bookmark' title='بدست آوردن کشور یک آدرس IP به کمک MySQL'>بدست آوردن کشور یک آدرس IP به کمک MySQL</a></li><li><a href='http://zebardast.ir/%da%86%da%af%d9%88%d9%86%da%af%db%8c-%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%d9%84%db%8c%d8%b3%d8%aa-%d8%a8%d8%b3%d8%aa%d9%87-%d9%87%d8%a7%db%8c-%d9%86%d8%b1%d9%85-%d8%a7%d9%81%d8%b2/' rel='bookmark' title='چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند'>چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند</a></li><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li></ol>]]></description> <content:encoded><![CDATA[<p>سلام<br /> گاهی اوقات شما نیاز دارید تا آی دی آخرین رکورد ثبت شده در دیتابیس را بدست آورید.<br /> برای این کار شما می توانید query زیر را جهت نمایش آخرین آی دی ثبت شده استفاده نمائید:(در MySQL)</p><pre class="brush: sql; title: ; notranslate">mysql&gt; SELECT LAST_INSERT_ID();</pre><p>این query آی دی رکورد ثبت شده را بر می گرداند. البته توجه داشته باشید که این دستور درست بعد از دستور INSERT فراخوانده شود.</p><p><strong>نکته</strong><br /> در اکثر زبان های برنامه نویسی تابع یا متد آماده ای جهت اینکار وجود دارد. به عنوان مثال:</p><ul><li> <a href="http://www.php.net/manual/en/function.mysql-insert-id.php">تابع <span>mysql_insert_id()</span> در php</a></li><li> <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/sql/Statement.html">متد <span>getGeneratedKeys()</span> در Java</a></li></ul><p>موفق و سربلند باشید</p><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2Fmysql_last_insert_id%2F&amp;linkname=%D8%B1%D9%88%D8%B4%20%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%D8%A2%D8%AE%D8%B1%DB%8C%D9%86%20%D8%A2%DB%8C%20%D8%AF%DB%8C%20%D8%AB%D8%A8%D8%AA%20%D8%B4%D8%AF%D9%87%20%D8%AF%D8%B1%20%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3%20%26%238211%3B%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2Fmysql_last_insert_id%2F&amp;linkname=%D8%B1%D9%88%D8%B4%20%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%D8%A2%D8%AE%D8%B1%DB%8C%D9%86%20%D8%A2%DB%8C%20%D8%AF%DB%8C%20%D8%AB%D8%A8%D8%AA%20%D8%B4%D8%AF%D9%87%20%D8%AF%D8%B1%20%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3%20%26%238211%3B%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2Fmysql_last_insert_id%2F&amp;linkname=%D8%B1%D9%88%D8%B4%20%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%D8%A2%D8%AE%D8%B1%DB%8C%D9%86%20%D8%A2%DB%8C%20%D8%AF%DB%8C%20%D8%AB%D8%A8%D8%AA%20%D8%B4%D8%AF%D9%87%20%D8%AF%D8%B1%20%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3%20%26%238211%3B%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2Fmysql_last_insert_id%2F&amp;linkname=%D8%B1%D9%88%D8%B4%20%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%D8%A2%D8%AE%D8%B1%DB%8C%D9%86%20%D8%A2%DB%8C%20%D8%AF%DB%8C%20%D8%AB%D8%A8%D8%AA%20%D8%B4%D8%AF%D9%87%20%D8%AF%D8%B1%20%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3%20%26%238211%3B%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2Fmysql_last_insert_id%2F&amp;title=%D8%B1%D9%88%D8%B4%20%D8%A8%D8%AF%D8%B3%D8%AA%20%D8%A2%D9%88%D8%B1%D8%AF%D9%86%20%D8%A2%D8%AE%D8%B1%DB%8C%D9%86%20%D8%A2%DB%8C%20%D8%AF%DB%8C%20%D8%AB%D8%A8%D8%AA%20%D8%B4%D8%AF%D9%87%20%D8%AF%D8%B1%20%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3%20%26%238211%3B%20MySQL" id="wpa2a_16">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%da%a9%d8%b4%d9%88%d8%b1-%db%8c%da%a9-%d8%a2%d8%af%d8%b1%d8%b3-ip-%d8%a8%d9%87-%da%a9%d9%85%da%a9-mysql/' rel='bookmark' title='بدست آوردن کشور یک آدرس IP به کمک MySQL'>بدست آوردن کشور یک آدرس IP به کمک MySQL</a></li><li><a href='http://zebardast.ir/%da%86%da%af%d9%88%d9%86%da%af%db%8c-%d8%a8%d8%af%d8%b3%d8%aa-%d8%a2%d9%88%d8%b1%d8%af%d9%86-%d9%84%db%8c%d8%b3%d8%aa-%d8%a8%d8%b3%d8%aa%d9%87-%d9%87%d8%a7%db%8c-%d9%86%d8%b1%d9%85-%d8%a7%d9%81%d8%b2/' rel='bookmark' title='چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند'>چگونگی بدست آوردن لیست بسته های نرم افزاری که بیشتری فضا را استفاده کرده اند</a></li><li><a href='http://zebardast.ir/%d9%86%da%a9%d8%a7%d8%aa%db%8c-%d8%af%d8%b1-%d8%b2%d9%85%db%8c%d9%86%d9%87-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%da%af%d8%a7%d9%87-%d8%af%d8%a7%d8%af%d9%87-mysql/' rel='bookmark' title='نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL'>نکاتی در زمینه استفاده راحت تر از پایگاه داده MySQL</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/mysql_last_insert_id/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>مقدمه MySQL</title><link>http://zebardast.ir/%d9%85%d9%82%d8%af%d9%85%d9%87-mysql/</link> <comments>http://zebardast.ir/%d9%85%d9%82%d8%af%d9%85%d9%87-mysql/#comments</comments> <pubDate>Fri, 19 May 2006 19:43:53 +0000</pubDate> <dc:creator>سعید زبردست</dc:creator> <category><![CDATA[پایگاه داده MySQL]]></category><guid isPermaLink="false">http://itpencil.wordpress.com/2006/05/19/%d9%85%d9%82%d8%af%d9%85%d9%87-mysql/</guid> <description><![CDATA[MySQL چیست؟ MySQL یک سیستم مدیریت پایگاه داده رابطه ای (RDBMS) است که امکان ذخیره سازی، جستجو، مرتب کردن و بازیابی داده ها را فراهم می کند. سرور MySQL به چندین کاربر اجازه استفاده همزمان از داده ها را می دهد و دسترسی افراد معتبر به داده ها را تسریع می کند. بنابراین MySQL یک [...] <strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%85%d9%82%d8%af%d9%85%d9%87-php/' rel='bookmark' title='مقدمه PHP'>مقدمه PHP</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/' rel='bookmark' title='انتقال اطلاعات در MySQL'>انتقال اطلاعات در MySQL</a></li><li><a href='http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/' rel='bookmark' title='راهنمای وارد کردن(import) و صادر کردن(export) در MySQL'>راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</a></li></ol>]]></description> <content:encoded><![CDATA[<p style="line-height: 200%;" dir="rtl"><strong><span style="font-family: Times New Roman;"><span> MySQL </span>چیست؟</span></strong></p><p style="line-height: 200%;" dir="rtl"><span style="font-family: Tahoma; font-size: x-small;">MySQL <span> یک سیستم مدیریت پایگاه داده رابطه ای (</span>RDBMS<span>) است که امکان  ذخیره سازی، جستجو، مرتب کردن و بازیابی داده ها را فراهم می کند.</span></span><strong><span style="font-family: Times New Roman;"><img src="http://dev.mysql.com/common/logos/mysql_100x52-64.gif" border="0" alt="" align="right" /></span></strong><span style="font-family: Tahoma; font-size: x-small;"><span> سرور </span> MySQL<span> به چندین کاربر اجازه استفاده همزمان از داده ها را می دهد و  دسترسی افراد معتبر به داده ها را تسریع می کند. بنابراین </span>MySQL <span>یک سرور چند کاربره و چند ریسمانه است. اگرچه تاریخچه پیدایش </span>MySQL <span>به سال1979 بر می گردد اما عرضه عمومی آن از سال 1996  آغاز شده است. این سیستم مدیریتی پایگاه داده، رایج ترین پایگاه داده کد باز (</span>open  Source<span>) محسوب می شود.</span></span></p><p style="line-height: 200%;" dir="rtl"><span style="font-family: Times New Roman;"><strong>برتری های </strong></span> <strong><span style="font-family: Times New Roman;">MySQL</span></strong></p><p style="line-height: 200%;" dir="rtl"><span style="font-size: x-small;"><span>رقبای اصلی </span> MySQL <span>عبارتند از: </span>PostgreSQL, SQL Server, <span> و </span>Oracle<span>.</span> <span>در برابر این رقبا، </span> MySQL <span>از مزیت های زیر بهره مند است:</span></span></p><ul><li><p style="line-height: 200%;" dir="rtl"><span style="font-size: x-small;">کارائی بالا</span></p></li><li><p style="line-height: 200%;" dir="rtl"><span style="font-size: x-small;">هزینه پائین</span></p></li><li><p style="line-height: 200%;" dir="rtl"><span style="font-size: x-small;">سهولت <span>پیکربندی و  	یادگیری</span> </span></p></li><li><p style="line-height: 200%;" dir="rtl"><span style="font-size: x-small;">قابلیت حمل </span></p></li><li><p style="line-height: 200%;" dir="rtl"><span style="font-size: x-small;">در دسترس بودن کد<span> </span>اصلی</span></p></li><li><p style="line-height: 200%;" dir="rtl"><span style="font-size: x-small;">خدمات پشتیبانی مناسب</span></p></li></ul><p><a class="a2a_button_google_plus" href="http://www.addtoany.com/add_to/google_plus?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2585%25d9%2582%25d8%25af%25d9%2585%25d9%2587-mysql%2F&amp;linkname=%D9%85%D9%82%D8%AF%D9%85%D9%87%20MySQL" title="Google+" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google+"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2585%25d9%2582%25d8%25af%25d9%2585%25d9%2587-mysql%2F&amp;linkname=%D9%85%D9%82%D8%AF%D9%85%D9%87%20MySQL" title="Facebook" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2585%25d9%2582%25d8%25af%25d9%2585%25d9%2587-mysql%2F&amp;linkname=%D9%85%D9%82%D8%AF%D9%85%D9%87%20MySQL" title="Twitter" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_identi_ca" href="http://www.addtoany.com/add_to/identi_ca?linkurl=http%3A%2F%2Fzebardast.ir%2F%25d9%2585%25d9%2582%25d8%25af%25d9%2585%25d9%2587-mysql%2F&amp;linkname=%D9%85%D9%82%D8%AF%D9%85%D9%87%20MySQL" title="Identi.ca" rel="nofollow" target="_blank"><img src="http://zebardast.ir/wp-content/plugins/add-to-any/icons/identica.png" width="16" height="16" alt="Identi.ca"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzebardast.ir%2F%25d9%2585%25d9%2582%25d8%25af%25d9%2585%25d9%2587-mysql%2F&amp;title=%D9%85%D9%82%D8%AF%D9%85%D9%87%20MySQL" id="wpa2a_18">اشتراک‌گذاری</a></p><p><strong>مطالب مرتبط:</strong><ol><li><a href='http://zebardast.ir/%d9%85%d9%82%d8%af%d9%85%d9%87-php/' rel='bookmark' title='مقدمه PHP'>مقدمه PHP</a></li><li><a href='http://zebardast.ir/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-%d8%af%d8%b1-mysql/' rel='bookmark' title='انتقال اطلاعات در MySQL'>انتقال اطلاعات در MySQL</a></li><li><a href='http://zebardast.ir/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d9%88%d8%a7%d8%b1%d8%af-%da%a9%d8%b1%d8%af%d9%86import-%d9%88-%d8%b5%d8%a7%d8%af%d8%b1-%da%a9%d8%b1%d8%af%d9%86export-%d8%af%d8%b1-mysql/' rel='bookmark' title='راهنمای وارد کردن(import) و صادر کردن(export) در MySQL'>راهنمای وارد کردن(import) و صادر کردن(export) در MySQL</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://zebardast.ir/%d9%85%d9%82%d8%af%d9%85%d9%87-mysql/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced
Database Caching 25/125 queries in 0.062 seconds using disk: basic
Object Caching 7115/7202 objects using disk: basic

Served from: zebardast.ir @ 2012-02-11 04:47:35 -->
