جدول قاعدة البيانات واسم فريدة من نوعها، ويتألف من الأعمدة والصفوف.
إنشاء جدول الخلية عن طريق MySQLi وشركة تنمية نفط عمان
يتم استخدام عبارة CREATE TABLE لإنشاء جدول في الخلية.
سوف نقوم بإنشاء جدول يسمى "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
)
Notes on the table above:
يحدد نوع البيانات نوع البيانات عمود يمكن أن تعقد. للإشارة كاملة لجميع أنواع البيانات المتاحة، انتقل إلى لدينا مرجعية أنواع البيانات .
بعد نوع البيانات، يمكنك تحديد سمات أخرى اختيارية لكل عمود:
- NOT NULL - كل صف يجب أن يحتوي على قيمة لهذا العمود، لا يسمح القيم الخالية
- قيمة DEFAULT - تعيين قيمة افتراضية التي يتم إضافتها عندما يتم تمرير أي قيمة أخرى
- غير موقعة - يستخدم لأنواع عدة، ويحد من البيانات المخزنة على الأرقام الموجبة والصفر
- AUTO INCREMENT - الخلية تلقائيا يزيد من قيمة الحقل بنسبة 1 في كل مرة يتم إضافة سجل جديد
- المفتاح الأساسي - يستخدم لتحديد فريد الصفوف في جدول. العمود مع وضع المفتاح الأساسي هو غالبا ما يكون رقم الهوية، وغالبا ما يستخدم مع AUTO_INCREMENT
يجب أن يكون كل جدول عمود المفتاح الأساسي (in this case: the "id" column) . يجب أن تكون قيمة فريدة من نوعها لكل سجل في الجدول.
الأمثلة التالية توضح كيفية إنشاء جدول في PHP:
مثال (MySQLi Object-oriented)
<?php
$servername = "localhost";
$username = "username";
$password =
"password";
$dbname =
"myDB";
// Create connection
$conn =
new mysqli($servername, $username, $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
)";
if ($conn->query($sql) === TRUE) {
echo "Table
MyGuests created successfully";
} else {
echo
"Error creating table: " . $conn->error;
}
$conn->close();
?>
مثال (MySQLi Procedural)
<?php
$servername = "localhost";
$username = "username";
$password =
"password";
$dbname =
"myDB";
// Create connection
$conn = mysqli_connect($servername, $username, $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
)";
if (mysqli_query($conn, $sql)) {
echo "Table MyGuests
created successfully";
} else {
echo "Error
creating table: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
مثال (PDO)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname =
"myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname",
$username, $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
)";
// 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;
?>