1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

آموزش MySQL > اضافه کردن اطلاعات مورد نظر به پایگاه داده > دستور Insert Into

شروع موضوع توسط hector2141 ‏26/7/13 در انجمن SQL

  1. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    دستور Insert Into :

    از این دستور در My SQL برای اضافه کردن اطلاعات یک رکورد جدید به جدول مورد نظرتان در پایگاه داده استفاده میشود. اطلاعات رکورد جدید میتواند از قبل توسط طراح صفحه تعیین شده باشد و یا از یک فرم ورود اطلاعات دریافت گردد.
    در دستور Insert Into مقادیر فیلدهای رکورد جدیدی را که می خواهیم به جدول وارد کنیم را به ترتیب در پرانتز مقابل عبارت values در دستور Insert Into قرار میدهیم.
    شکل کلی دستورInsert Into بصورت زیر است :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] < ? php
    INSERT INTO table_name
    VALUES ( value1 , value2 , value3 ,... ) ;
    ? >

    مثال : INSERT INTO Student
    VALUES ( "Ali" , "Rezaee" , 22 ) [/TD]
    [/TR]
    [/TABLE]
    شکل دیگر نوشتن دستور Insert Into :
    دستور Insert Into را می توان به شکل دیگری نیز نوشت. در این حالت نام فیلدهای مورد نظرمان که می خواهیم مقادیر در آنها وارد شوند را به ترتیب در پرانتز جلوی نام جدول تعیین میکنیم.
    در این حالت مقادیر بصورت متناظر وارد فیلدهای تعیین شده وارد شده و بایستی تعداد فیلدها و مقادیر یکسان باشند.
    شکل کلی حالت دوم دستور Select Into بصورت زیر است :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] < ? php
    INSERT INTO table_name ( Column 1 , Column 2 , Column 3 , ... )
    VALUES ( value1 , value2 , value3 ,... ) ;
    ? >

    مثال : INSERT INTO Student ( Name , Family , Age )
    VALUES ( "Ali" , "Rezaee" , 22 ) [/TD]
    [/TR]
    [/TABLE]
    مثال عملی : اضافه کردن اطلاعات به پایگاه داده MySQL در یک صفحه PHP :
    برای اینکه دستور Insert Into اجرا شود باید ان را در یک تابع( ) mysql_query قرار دهیم. همانطور که در بخش های قبل نیز اشاره کردیم تابع ( ) mysql_query برای ارسال یک query یا دستور به یک ارتباط My SQL است.
    مثال : در مثال زیر نحوه نوشتن و اجرای یک دستور Insert Into در صفحات PHP را در عمل نمایش داده ایم .
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Example [/TD]
    [TD="class: prdes, align: left"] < ? php
    $My_Connection = mysql_connect ( " localhost " , " developer " , " Est1381 " ) ;
    if ( ! $My_Connection )
    {
    die( ' Could not connect : ' . mysql_error( ) ) ;
    }
    // در این دستور پایگاه داده مورد نظر را انتخاب کرده ایم
    mysql_select_db ( "my_db", $My_Connection );
    // با این دستور اطلاعات یک دانشجو را به جدول اضافه کرده ایم
    mysql_query("INSERT INTO Student ( Name, Family , Age )
    VALUES ( "Ali" , "Rezaee" , 35 ) " ) ;
    mysql_close ( $My_Connection ) ;
    ? > [/TD]
    [/TR]
    [/TABLE]
    وارد نمودن اطلاعات رکورد جدید از طریق یک فرم در صفحه :
    در مثال قبل اطلاعات رکورد جدیدی که می خواستیم به جدول اضافه کنیم از قبل در کد صفحه تعیین شده بود.ولی در برنامه های کاربردی معمولا طراح در نظر دارد تا اطلاعات از طریق یک فرم ورود داده از کاربر دریافت کرده و سپس انها را به جدول اضافه کند.
    در مثال زیر یک فرم ساده HTML طراحی کرده ایم که کاربر باید اطلاعات خواسته شده را در ان وارد نماید سپس با کلیک بر روی دکمه فرمان تعیین شده دستورات SQL اجرا شده و اطلاعات از فرم دریافت و سپس به جدول ارسال میشوند.
    مثال : در مثال زیر ، یک فرم HTML طراحی کرده ایم که اطلاعاتی را از کاربر دریافت می کند . سپس با استفاده از یک دستور Insert Into ، اطلاعات دریافتی از فرم را به پایگاه داده ارسال می کند .
    کد فرم HTML دریافت اطلاعات به صورت زیر است :

    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] HTML کد فرم [/TD]
    [TD="class: prdes, align: left"] <html>
    <body>
    <form action="insert.php" method="post">
    Name :
    < input type="text" name="Name">
    Family :
    <input type="text" name="Family">
    Age:
    <input type="text" name="Age">
    <input type="submit">
    </form>
    </body>
    </html> [/TD]
    [/TR]
    [/TABLE]
    توضیح کد فرم : هنگامی که کاربر اطلاعات خواسته شده را در فرم HTML وارد کرده ، بایستی بر روی دکمه فرمان submit کلیک نماید . این دکمه فرمان اطلاعات فرم را گرفته و سپس به وسیله متد post به صفحه insert.php ارسال می کند .
    صفحه insert.php که کد آن در جدول زیر نمایش داده شده است ، اطلاعات ارسالی از فرم را دریافت می کند . سپس تابع ( ) mysql_query ، دستور Insert Into تعیین شده برای آن را اجرا کرده و اطلاعات را در جدول پایگاه داده وارد می کند :

    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] HTML کد فرم [/TD]
    [TD="class: prdes, align: left"] < ?php
    $con = mysql_connect( " localhost " , " developer " , " Est1381 " );
    if (!$con)
    {
    die('Could not connect: ' . mysql_error());
    }
    mysql_select_db("my_db", $con);
    $sql = " INSERT INTO Student ( Name , Family , Age )
    VALUES ( ' $_POST[ Name ] ' , ' $_POST[ Family] ' , '$_POST[ Age ] ' ) " ;

    if (!mysql_query($sql,$con))
    {
    die('Error: ' . mysql_error());
    }
    echo "1 record added";
    mysql_close($con);
    ? > [/TD]
    [/TR]
    [/TABLE]