قبلی
فهرست
بعدی
با استفاده از MySQLi و PDO یک جدول MySQL ایجاد کنید(Create a MySQL Table Using MySQLi and PDO)
در تاریخ
1402/10/17
ساعت
10:12
دستور CREATE TABLE برای ایجاد جدول در MySQL استفاده می شود.
ما جدولی با نام MyGuests ایجاد خواهیم کرد پنج ستون: "id"، "firstname"، "Lastname"، "email" و "reg_date":
CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )
یادداشت ها در جدول بالا:
نوع داده مشخص می کند که ستون چه نوع داده ای را می تواند نگه دارد. برای کامل مرجع همه انواع داده های موجود، به ما برویدمرجع انواع داده .
بعد از نوع داده، می توانید ویژگی های اختیاری دیگری را برای هر کدام مشخص کنید ستون:
NOT NULL - هر ردیف باید دارای یک مقدار برای آن ستون باشد، مقادیر null مجاز نیستند مقدار پیشفرض - یک مقدار پیشفرض تنظیم کنید که وقتی مقدار دیگری ارسال نشود اضافه میشود UNSIGNED - برای انواع اعداد استفاده می شود، داده های ذخیره شده را به اعداد مثبت و صفر محدود می کند افزایش خودکار - MySQL هر بار که یک رکورد جدید اضافه می شود به طور خودکار مقدار فیلد را 1 افزایش می دهد کلید اولیه - برای شناسایی منحصر به فرد ردیف ها در جدول استفاده می شود. ستون با تنظیم کلید اصلی اغلب یک شماره شناسه است و اغلب با AUTO_INCREMENT استفاده می شودهر جدول باید یک ستون کلید اصلی داشته باشد (در این مورد: ستون "id"). مقدار آن باید برای هر رکورد در جدول منحصر به فرد باشد.
مثال های زیر نحوه ایجاد جدول در PHP را نشان می دهد:
مثال (MySQLi Object-oriented) <?php $serve ame = "localhost"; $use ame = "use ame"; $password = "password"; $dbname = "myDB"; // Create connection $conn = new mysqli($serve ame, $use ame, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // sql to create table $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )"; if ($conn->query($sql) === TRUE) { echo "Table MyGuests created successfully"; } else { echo "Error creating table: " . $conn->error; } $conn->close(); ?>
مثال (MySQLi Procedural) <?php $serve ame = "localhost"; $use ame = "use ame"; $password = "password"; $dbname = "myDB"; // Create connection $conn = mysqli_connect($serve ame, $use ame, $password, $dbname); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } // sql to create table $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )"; if (mysqli_query($conn, $sql)) { echo "Table MyGuests created successfully"; } else { echo "Error creating table: " . mysqli_error($conn); } mysqli_close($conn); ?>
مثال (PDO) <?php $serve ame = "localhost"; $use ame = "use ame"; $password = "password"; $dbname = "myDBPDO"; try { $conn = new PDO("mysql:host=$serve ame;dbname=$dbname", $use ame, $password); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // sql to create table $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )"; // use exec() because no results are returned $conn->exec($sql); echo "Table MyGuests created successfully"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>