درج داده (MySQL Insert Data)
اینجا «درج داده» را یاد می گیریم. «درج داده (Insert)» یعنی اضافه کردن رکورد جدید. رکورد مثل یک سطر در جدول است. حالا با مثال های ساده جلو می رویم.
قوانین مهم درج داده
هنگام نوشتن دستور «INSERT INTO»، چند قانون ساده داریم.
- کوئری SQL در PHP باید داخل کوتیشن باشد.
- رشته ها در SQL باید کوتیشن شوند.
- اعداد نباید کوتیشن شوند.
- کلمه NULL نباید کوتیشن شود.
نکته: ستون های «AUTO_INCREMENT» و «TIMESTAMP با مقدار پیش فرض»، نیاز به ذکر در INSERT ندارند. مقدارشان خودکار پر می شود.
نمونه ها: درج داده با MySQLi و PDO
نمونه: MySQLi شی گرا (Object-Oriented)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
نمونه: MySQLi رویه ای (Procedural)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')";
if (mysqli_query($conn, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . 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);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')";
$conn->exec($sql);
echo "New record created successfully";
} catch (PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>
مراحل عملی درج داده
- ابتدا به پایگاه داده متصل شو.
- جدول آماده «MyGuests» را بررسی کن.
- کوئری INSERT را اجرا کن و نتیجه را ببین.
نکته امنیتی: برای داده کاربر از «Prepared Statement» استفاده کن تا تزریق SQL رخ ندهد.
گام های بعدی مرتبط
- ایجاد جدول را مرور کن تا ستون ها را بشناسی.
- درج داده را با داده های مختلف تمرین کن.
- گرفتن آخرین شناسه درج شده را دنبال کن.
جمع بندی سریع
- INSERT رکورد جدید اضافه می کند.
- رشته ها را کوتیشن کن.
- اعداد و NULL را کوتیشن نکن.
- AUTO_INCREMENT را در INSERT نیاور.