شروعي ساده با MySQL پایگاه داده
S h a b g a r d . O R G
.::Security Group::.

*Nix *Nix *Nix *Nix *Nix *Nix *Nix مبتدی مبتدی مبتدی

    Search for in  

  خانه

  *Nix

      مبتدی

      متوسط

      تخصصی

  Windows

      مبتدی

      متوسط

      تخصصی

  network

  Programming

      PHP

  Security

  Hacking

  Program

      MS-Word

      Graphic

  Cisco

  Hardware



شروعي ساده با MySQL پایگاه داده
Posted by شيلان جوانمردي on Jan 16, 2005, 22:09

مقدمه:
در اين مقاله سعي شده است كه اصول و مباني كار با MySQL به صورتي ساده و قابل
فهم براي كساني كه تازه شروع به كار با پايگاه‌هاي داده را كرده‌اند، گفته شود.


PHP به صورت از پيش تعريف شده، اكثر پايگاه‌هاي داده را پشتيباني مي‌كند‌: dBase,
FilePro, mSQL, MySQL,Oracle, PostgreSQL,Sybase.اگر شما بخواهيد از پايگاه‌ هاي
داده‌اي كه
به صورت از پيش تعريف شده پشتيباني نمي شوند، استفاده كنيد (مانند Access و يا
SQL Server) بايد از توابع PHP ODBC (Open DataBase Connectivity) به همراه راه‌اندازهاي
پايگاه داده (ODBC Drivers) استفاده كنيد.
MySQL يكي از انواع سرويس دهنده‌هاي پايگاه داده است كه با وجود اينكه نسبت به
ساير‌DBMS هاي موجود زياد قدرتمند نميباشد، اما به علت قيمت و عملكرد مناسب آن،
مورد استفاده گسترده قرار مي‌گيرد.

طريقه اتصال به MySQL

قبل از شروع هر كاري بايد به ‌MySQL متصل شويم. براي اين كار از دستور


<?
  $Conn
=mysql_connect($Location,$Username,$Password); ?>


استفاده مي‌كنيم. تابع mysql_connect داراي سه آرگومان مي‌باشد. آرگومان اول ،
ميزبان (Host) را مشخص مي‌كند. دو آرگومان بعدي، نام كاربري و كد رمز را براي اتصال
به پايگاه داده، ارسال مي‌كنند. در صورتي كه اتصال با شكست مواجه شود، پيغام خطايي
درbrowser نشان داده مي‌شود.
با استفاده از دستور


<? mysql_select_db($database)?>



بانك اطلاعاتي مورد نظر انتخاب خواهد شد و از اين پس كارهاي شما همه بر روي اين
بانك انجام خواهد گرفت. در صورتي كه بانك مورد نظر پيدا نشد، پيغام خطايي نشان
داده مي‌شود.

ايجاد يك بانك اطلاعاتي در MySQL


<? if (mysql_creat_db($database,$Conn)
{ print(
“The database,$database,was { successfully created!<BR>n”);
else
{ print(
" The database,$database, could not be created! <BR>\n”);}

?>



پس از اتصال به MySQL شما مي‌توانيد با استفاده از دستور


<? mysql_creat_db($database,$Conn); ?>



يك بانك اطلاعاتي جديد ايجاد كنيد. اين دستور شامل دو آرگومان : نام بانك اطلاعاتي
و نام لينك مورد نظربه پايگاه داده مي‌‌باشد. در صورتي كه عمل ايجاد با موفقيت
انجام شده باشد، پيغامي مبني بر اين موضوع نمايش داده مي‌شود و در غير اينصورت،
به كاربر اعلام مي‌شود كه عمليات نتيجه نداشته است.

انجام كارهاي مختلف بر روي بانك اطلاعاتي در MySQL

براي انجام كارهاي مختلف بر روي بانك اطلاعاتي ازدستورات SQL استفاده مي‌كنيم.
روند استخراج اطلاعات از يك پايگاه داده به اين صورت است كه ابتدا يك query به
زبان SQL نوشته مي‌شود وسپس اين query با استفاده ازدستور


mysql_db_query($database,$Query);



عمليات لازم را بر روي بانك اطلاعاتي انتخاب شده، انجام مي‌دهد.
فرم كلي به صورت زير است:


<?$Query=”text for the query goes here in SQL format";
if (mysql_db_query($database,$Query))
}
print( “The query was successfully executed!<BR>\n”);
{
else
}
print(“The query could not be executed!<BR>\n”);
{ ?>



· ايجاد يك جدول

براي ايجاد يك جدول ، اين query را مي نويسيم:


<?
  $Query
=”CREATE table $Tablename(id INT PRIMARY KEY ,
  
Firstname char(12), Lastname char(15));
  
?>



با استفاده ازاين query، جدول جديدي ايجاد مي‌شود كه شامل يك فيلد به نام id (
كه Primary keyاست) و فيلدي به نام Firstname از نوع كاراكتري با طول 12 و همچنين
فيلدي به نام Lastname با طول 15 مي باشد.

· ارسال داده‌ها به بانك اطلاعاتي

براي ارسال داده‌ها به بانك اطلاعاتي اين q uery را مي‌ نويسيم:



  <?$Query=“INSERT into $Tablename(‘value1’, ‘value2’, ‘value3’,);?>
  



توجه داشته باشيد كه تعداد مقاديري كه در اين q uery مشخص
مي‌شوند، بايد با تعداد ستونهاي جدول و همچنين نوع آن برابر باشد. در غيراينصورت
query كارنمي‌كند.

· بازيابي اطلاعات و نمايش آن

به قطعه كد زير توجه كنيد:


<?
  $query
= "SELECT * FROM $Tablename“;
  $result = mysql_query($query);
  $numrows = mysql_num_rows($result);
  while($row = mysql_fetch_array($result))
  {
  echo \"You have $numrows user(s) in the database”;
  echo \"ID number : $row[id]”;
  echo \"firstname: $row[firstname]”;
  echo \"Lastname: $row[lastname]”;
  }
  ?>



در خط اول، queryاي نوشته شده است كه تمام ركوردهاي موجود درTable را انتخاب مي‌كند
و سپس در خط دوم، اين query برروي بانك اطلاعاتي اجرا مي‌شود و در خط سوم تعداد
ركوردهاي موجود درTable ، در متغيير numrows ذخيره مي‌گردد و سپس با استفاده از
حلقهً while ( كه تعداد loop آن به اندازه ركوردهاي Table است) ركوردها، خوانده
شده و نمايش داده مي‌شود.

· تغيير اطلاعات موجود در بانك اطلاعاتي
براي اين كار كافي است كه از queryاي استفاده كنيم كه در آن دستورUPDATE به كار
برده شده باشد.بطور مثال:


<?$Query=“UPDATE $Tablename SET firstname=’mina’ WHERE
  firstname
=’maryam’”; ?>



اين query ، اسامي موجود درTable مورد نظر را در صورتي كه برابر با mina باشد،
به maryam تغيير مي‌دهد.



نكته:
· بعد از اتمام كار، به وسيله دستور


<?mysql_close($Conn);?>



اتصال بهMySQL را قطع كنيد. اين دستور شامل يك
آرگومان است، كه همان متغيراشاره گر،به MySQL مي‌باشد.

· بيشترين اشتباهات و خطاهاي به وجود آمده، مربوط به نحوه
نوشتن queryها مي‌ باشد. چنانچه در دستورات PHP ‌، هيچ
نوع اشكال منطقي‌اي مشاهده نكرديد، q uery مورد نظر را
بررسي كنيد. به احتمال زياد مشكل حل خواهد شد.

· شما مي‌ توانيد به جاي دستور


<?mysql_db_query( );


از دستور


<?mysql_query( );?>



استفاده كنيد. البته هر كدام از اين دستورات، كاربردهاي خاص خود را دارند كه توصيه
مي‌شود براي آگاهي،h elp مربوطه را در PHP ، مطالعه بفرماييد.

· توجه داشته باشيد كه باز و بسته شدن‌هاي متعدد Database موجب به وجود آمدن
حفره‌هايي مي‌شود كه امنيت اطلاعات را به خطر مي‌اندازد ( براي آگاهي بيشتر، مي‌توانيد
از منابعي در مورد Security، استفاده كنيد.) لذا توصيه مي‌شود با دسته‌بندي مناسب
عمليات مورد نياز روي D atabase،تعداد دفعات باز و بسته شدن D atabase را به حداقل
برسانيد.

· يك نكته ساده و در عين حال جالب(مخصوص مبتدي‌‌‌ها):

يك Database و يا يك Table را نمي‌شود بيش از يك باربه وجود آورد.!! بنابراين
در صورتي كه هنگام به وجود آوردن Database و يا Tableاي ، مدام با Error برخورد
مي‌كنيد و هيچ نوع توجيه‌اي براي آن نمي‌يابيد، پيشنهاد مي‌شود كه با بررسي Mysql_Front
از وجود نداشتن Database و يا Tableمورد نظر مطمئن شويد.



شيلان جوانمردي
Sh_javanmardi@srtnet.net
بهمن 81






---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
Latest Headlines

 *Nix
 نصب سيستم عامل لينوكس وفارسي نويسي در محيط
kavoshgar.blogsky.com
 نصب سيستم عامل لینوکس مندریک 9.2 Mandrake linux
 راهنماي كاربران جديد لينوكس
 راهنماي كاربران جديد لينوكس
 تعاريف پايه و نكات كاربردي در لينوكس و يونيكس
 تنظیماتIP و شبکه در گنو / لینوکس
 تعیین سطوح دسترسی کاربران در لینوکس
 تاریخچه لینوکس
 ظاهر پوسته فرمان
 استفاده از پوسته فرمان در لینوکس
 Windows
 بازگرداندن ویندوز خراب شده به حالت قبل از بروز مشکل
 چگونه میتوان در ويندوز 98 و ME به درايو NTFS دسترسي داشت
 با افزودن پسورد دوم براي ورود به ویندوز XP امنیت خود را تا حد زیادی افزایش دهید
 برنامه های تحت داس و قدیمی را چگونه در XP اجرا کنیم
 نصب ويندوز 98 يا ME در محیط ويندوز NT يا XP فقط در یک دقیقه و نیم
 مقدمات و نيازهاي شما براي يادگيري TCP/IP
 امكانات شبكه اي ويندوز
 SSL چيست ؟
 آموزش HyperTerminal
 آموزش كرك فايل هاي SAM
 network
 كارت شبكه يا LAN Card
 شبكه سرى يا BNC
 شبكه Hub
 تنظيم و كنترل برنامه Network Neighborhood
 استفاده از شبكه و عمل Sharing
 نصب و تنظيم برنامه Wingate جهت اتصال شبكه به سرور و اينترنت
 AAA (Authentication, Authorization and Accounting)
 مقدمه ای بر شبکه خصوصی مجازی (VPN)
 ip و port
  RFC چيست؟
 Programming
 زبان برنامه نویسی D قسمت اول
 زبان برنامه سازی D تحت لینوکس قسمت دوم
 زبان برنامه‌نويسی D بخش سوم
 زبان برنامه نویسی D بخش چهارم
 زبان برنامه نویسی D بخش پنجم
 زبان برنامه‌نویسی D بخش ششم
 نرم‌افزار آزاد یا باز‌متن چیست؟
 مقدمه ای بر برنامه نويسی شی گراء در دات نت
 آموزش رتينا
 ايجاد فايل XML با استفاده از يک بانک اطلاعاتی
 Security
 بررسی نحوه عملکرد فایروال Firewallیا ديواره آتش
 مقايسه سرورهای لينوکس و ويندوز
 چه فایلهائی میتوانند برای کاربران مخاطره آمیز باشند !
 امنيت برنامه های وب ( بخش اول )
 امنيت برنامه های وب ( بخش دوم )
 امنيت برنامه های وب ( بخش سوم )
 امنيت برنامه های وب ( بخش چهارم )
 امنيت برنامه های وب ( بخش پنچم )
 امنيت نامه های الکترونيکی ( بخش اول )
 مفاهيم اوليه پروتکل TCP/IP ( بخش اول )
 Hacking
 چگونه هکر شویم؟ بخش اول
 چگونه هکر شویم؟ بخش دوم
 هنر هشتم : كرك كردن
 مقدمات قبل از شروع يادگيری هک
 Port Scanning
 Port Scanning
  کاربرد نرم‌افزار nmap
 IP Scanning
 پورت ۷۹
 پورت ۸۰ چيست؟
 Program
  آموزشهاي افكتهاي فتوشاپ
 Shocking Text
 مبانی آشنايی با Word
  آموزش ساخت متن یخی
 نصب تم در موزیلا فایرفاکس
 کلید های میانبر در فایرفاکس
 Cisco
 آشنايي با مدارک سيسکو
 Cisco Systems
 Hardware
 آشنايي با پورت USB
 نحوه انتخاب يك كارت صدا