تبلیغات
Fact World - ساخت دیتابیس، جدول و ردیف با دستور CREATE در MySQL

آموزش برنامه نویسی و مهارتهای وب

article 

ساخت دیتابیس، جدول و ردیف با دستور CREATE در MySQL

mysql-create-table در بخش آموزش مقدماتی MySQL و در مطلب گذشته با کلیاتی از پرکاربرد ترین سیستم مدیریت پایگاه داده یعنی MySQL آشنا شدیم، گفتیم که دستورات مربوط به پایگاه داده از طریق برنامه phpMyAdmin به طور مستقیم قابل اعمال هستند و از طرفی کدهای php قابلیت های فراوانی برای مدیریت و اعمال همان دستورات در اختیارمان می گذارند، از آنجایی که یک برنامه خوب بیشتر تکیه بر کدها و ابزار های داینامیک دارد، لذا ما از طرح مباحث مربوط به phpMyAdmin می گذریم و به نحوه اجرای دستورات در php می پردازیم، در این مطلب نیز می خواهیم در رابطه با آموزش ساخت دیتابیس، جدول و ردیف با دستور CREATE در MySQL صحبت کنیم.

ساخت دیتابیس با دستور CREATE


اگر چه ساخت دستی دیتابیس با برنامه phpMyAdmin بیشتر کاربرد دارد، اما کدهای PHP نیز این قابلیت را با دستور CREATE DATABASE دارا هستند.
<?php
$con = mysql_connect("localhost","username","password");
if (!$con){
    die('اتصال برقرار نشد: ' . mysql_error());
}
if (mysql_query("CREATE DATABASE db_name",$con)){
    echo "دیتابیس ساخته شد!";
}
else{
    echo "خطایی رخ داده است: " . mysql_error();
}
mysql_close($con);
?>
توضیح:
- پیش از اجرای هر دستوری، ابتدا باید به MySQL متصل شویم.
- mysql_connect، mysql_error، mysql_query و mysql_close از توابع درونی php هستند که برای کار با پایگاه داده مورد استفاده قرار می گیرند.

ساخت جدول و چند ردیف (ستون) با دستور CREATE


پس از ساختن دیتابیس نوبت به ایجاد جداول و ردیف ها است که این کار با دستور CREATE TABLE انجام می شود.
<?php
$con = mysql_connect("localhost","username","password");
if (!$con){
    die('اتصال برقرار نشد: ' . mysql_error());
}
mysql_select_db("db_name", $con);
mysql_query("CREATE TABLE tb_name(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
name VARCHAR(255)) ENGINE=MyISAM ")
or die(mysql_error());
echo "جدول با موفقیت ساخته شد!";
mysql_close($con);
?>
توضیح:
- در کد بالا ما query ساخت یک جدول با دو ردیف (ستون) id و table را اجرا کردیم و به هر کدام ویژگی هایی را نسبت دادیم.
- INT و VARCHAR نشان دهنده نوع داده ای است که در آن ردیف (ستون) ذخیره می شود.
- ENGINE=MyISAM برای قرار دادن موتور MyISAM به صورت پیش فرض برای جدولی است که ایجاد می کنیم (در برخی نسخه ها به صورت TYPE=MyISAM قابل قبول است)، برخی نسخه های MySQL به جای MyISAM از موتور INNODB به صورت پیش فرض استفاده می کنند.

تغییر یونیکد به UTF8 برای کار با داده های زبان فارسی با دستور ALTER TABLE


برای اینکه بتوانیم داده های خود را به زبان فارسی به درستی در دیتابیس ذخیره و بازیابی کنیم، توصیه می شود همواره از یونیکد استاندارد UTF8 استفاده کنید، لذا بعد از ایجاد جدول تکه کد زیر را هم در ادامه، برای آن جدول اجرا نمائید.
<?php
$con = mysql_connect("localhost","username","password");
if (!$con){
    die('اتصال برقرار نشد: ' . mysql_error());
}
mysql_select_db("db_name", $con);
mysql_query("ALTER TABLE tb_name
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci;")
or die(mysql_error());
mysql_close($con);
?>
توضیح:
- ALTER TABLE یک دستور ثانویه است که می توانید به کمک آن روی جداول موجود تغییراتی اعمال نمائید یا به فرض آنها را حذف کنید.
- DEFAULT CHARACTER SET به همراه COLLATE utf8_general_ci، یونیکد پیش فرض یک جدول و ستون های زیر مجموعه آن را تغییر می دهد.
- پس از اینکه یونیکد را بر روی UTF8 تنظیم کردیم برای ارتباط صحیح و مقایسه یکسان کاراکترها باید از COLLATE و قانون utf8_general_ci استفاده کنیم که در مثال بالا این کار انجام شده است.
section دسته بندی: آموزش مقدماتی - آموزش مقدماتی MySQL -


یکشنبه 13 مهر 1393

نظرات ()


پنجشنبه 16 شهریور 1396 04:38 ق.ظ
When some one searches for his essential thing, so he/she needs to
be available that in detail, so that thing is maintained over here.
چهارشنبه 7 تیر 1396 08:03 ب.ظ
Thanks for finally talking about >Fact World - ساخت دیتابیس،
جدول و ردیف با دستور CREATE در MySQL <Loved it!
سه شنبه 6 تیر 1396 01:36 ق.ظ
First of all I would like to say superb blog! I had a quick question in which I'd like
to ask if you do not mind. I was curious to find out how
you center yourself and clear your thoughts before writing.
I've had a hard time clearing my thoughts in getting my
thoughts out there. I do take pleasure in writing however it just
seems like the first 10 to 15 minutes tend to be lost simply just trying to figure out how to begin. Any ideas or hints?
Kudos!
پنجشنبه 21 اردیبهشت 1396 11:38 ق.ظ
We're a bunch of volunteers and opening a brand new scheme in our
community. Your website provided us with helpful info to work on. You have performed an impressive process and our entire neighborhood shall be thankful to you.
دوشنبه 4 اردیبهشت 1396 08:16 ق.ظ
BHW
My family every time say that I am killing my time here at
web, however I know I am getting experience every day by reading thes good
articles.

نظر خود را ثبت کنید:

 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر



آگهی
آموزش طراحی سایت
webgoo.ir

آموزش برنامه نویسی و مهارتهای وب
امکانات جانبی


IP شما: ( )