ساخت جدول در MySQL به وسیلهٔ PHP

از ویکی‌کد
پرش به ناوبری پرش به جستجو
Main Page Tutorial
Php-menu.png
موارد آموزشی
فرم‌ها در PHP
PHP پیشرفته
شیء گرایی در PHP
پایگاه داده MySQL
۱پایگاه داده MySQL
۲اتصال به MySQL
۳ساخت پایگاه داده
۴ساخت جدول
۵وارد کردن داده
۶دریافت شناسهٔ آخرین سطر
۷وارد کردن چندین داده
۸دستور Prepared
۹انتخاب داده
۱۰دستور Where
۱۱دستور Order By
۱۲حذف داده
۱۳بروزرسانی داده
۱۴محدودسازی داده
XML در PHP
AJAX در PHP
مثال‌های PHP
مرجع PHP

یک جدول پایگاه داده نام منحصر به فرد خود را دارد و شامل ستون‌ها و سطرهاست. [۱]

ساخت یک جدول MySQL با استفاده از MySQLi و PDO

دستور CREATE TABLE برای ایجاد یک جدول در MySQL کاربرد دارد.

ما یک جدول به نام "myGuests"، با پنج ستون: "شناسه"، "نام"، "نام خانوادگی"، "آدرس پست الکترونیکی" و "reg_date" را خواهیم ساخت:

1 CREATE TABLE MyGuests (
2 id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
3 firstname VARCHAR(30) NOT NULL,
4 lastname VARCHAR(30) NOT NULL,
5 email VARCHAR(50),
6 reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
7 )

نکته‌هایی در مورد جدول فوق:

نوع داده مشخص کننده داده‌ای است که ستون می‌توانند آن را نگهداری کند. برای مشاهده مرجع کاملی از تمام نوع داده‌های در دسترس، به مرجع نوع داده مراجعه کنید.

بعد از نوع داده، شما سایر خاصیت‌های اختیاری را برای هر ستون مشخص می‌کنید:

  • NOT NULL - هر سطر می‌بایست شامل یک مقدار برای آن ستون باشد، مقادیر null مجاز نیستند
  • DEFAULT VALUE - یک مقدار پیشفرض را برای زمانی که مقدار دیگری برای آن ستون وجود ندارد، تنظیم می‌کند
  • UNSIGNED - برای نوع داده‌های عددی استفاده می‌شود، داده‌های ذخیره شده را به اعداد مثبت و صفر محدود می‌کند
  • AUTO INCREMENT - MySQL به صورت خودکار مقدار فیلد را بعد از هر بار که رکورد جدید اضافه می‌شود ۱ واحد افزایش می‌دهد
  • PRIMARY KEY - برای شناسایی سطر منحصر به فردی درون یک جدول استفاده می‌شود. ستونی که به عنوان PRIMARY KEY تنظیم می‌شود، اغلب یک ID (به فارسی: شناسه) عددی است، و اغلب با خاصیت AUTO_INCREMENT استفاده می‌شود

هر جدول می‌بایست یک ستون primary key (کلید اصلی) داشته باشد (که در این مثال این ستون، ستون "id" (به فارسی: شناسه) است). مقدار این ستون می‌بایست برای هر رکورد جدول منحصر به فرد باشد.

مثال‌های زیر به شما نحوه ایجاد جدول در PHP را نشان می‌دهد:

مثال (شیء گرایی در MySQLi)

 1 <?php
 2 $servername = "localhost";
 3 $username = "username";
 4 $password = "password";
 5 $dbname = "myDB";
 6 
 7 // Create connection
 8 $conn = new mysqli($servername, $username, $password, $dbname);
 9 // Check connection
10 if ($conn->connect_error) {
11     die("Connection failed: " . $conn->connect_error);
12 }
13 
14 // sql to create table
15 $sql = "CREATE TABLE MyGuests (
16 id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
17 firstname VARCHAR(30) NOT NULL,
18 lastname VARCHAR(30) NOT NULL,
19 email VARCHAR(50),
20 reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
21 )";
22 
23 if ($conn->query($sql) === TRUE) {
24     echo "Table MyGuests created successfully";
25 } else {
26     echo "Error creating table: " . $conn->error;
27 }
28 
29 $conn->close();
30 ?>

مثال (برنامه نویسی رویه ای در MySQLi)

 1 <?php
 2 $servername = "localhost";
 3 $username = "username";
 4 $password = "password";
 5 $dbname = "myDB";
 6 
 7 // Create connection
 8 $conn = mysqli_connect($servername, $username, $password, $dbname);
 9 // Check connection
10 if (!$conn) {
11     die("Connection failed: " . mysqli_connect_error());
12 }
13 
14 // sql to create table
15 $sql = "CREATE TABLE MyGuests (
16 id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
17 firstname VARCHAR(30) NOT NULL,
18 lastname VARCHAR(30) NOT NULL,
19 email VARCHAR(50),
20 reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
21 )";
22 
23 if (mysqli_query($conn, $sql)) {
24     echo "Table MyGuests created successfully";
25 } else {
26     echo "Error creating table: " . mysqli_error($conn);
27 }
28 
29 mysqli_close($conn);
30 ?>

مثال (PDO)

 1 <?php
 2 $servername = "localhost";
 3 $username = "username";
 4 $password = "password";
 5 $dbname = "myDBPDO";
 6 
 7 try {
 8     $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
 9     // set the PDO error mode to exception
10     $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
11 
12     // sql to create table
13     $sql = "CREATE TABLE MyGuests (
14     id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
15     firstname VARCHAR(30) NOT NULL,
16     lastname VARCHAR(30) NOT NULL,
17     email VARCHAR(50),
18     reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
19     )";
20 
21     // use exec() because no results are returned
22     $conn->exec($sql);
23     echo "Table MyGuests created successfully";
24     }
25 catch(PDOException $e)
26     {
27     echo $sql . "<br>" . $e->getMessage();
28     }
29 
30 $conn = null;
31 ?>


منابع آموزشی