PHP MySQL तालिका बनाएँ
एक डेटाबेस तालिका का अपना विशिष्ट नाम होता है और इसमें कॉलम और पंक्तियाँ होती हैं।
MySQLi और PDO का उपयोग करके एक MySQL तालिका बनाएं
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
)
उपरोक्त तालिका पर नोट्स:
डेटा प्रकार निर्दिष्ट करता है कि कॉलम किस प्रकार का डेटा रख सकता है। सभी उपलब्ध डेटा प्रकारों के संपूर्ण संदर्भ के लिए, हमारे डेटा प्रकार संदर्भ पर जाएं ।
डेटा प्रकार के बाद, आप प्रत्येक कॉलम के लिए अन्य वैकल्पिक विशेषताएँ निर्दिष्ट कर सकते हैं:
- न्यूल नहीं - प्रत्येक पंक्ति में उस कॉलम के लिए एक मान होना चाहिए, शून्य मानों की अनुमति नहीं है
- डिफ़ॉल्ट मान - एक डिफ़ॉल्ट मान सेट करें जो तब जोड़ा जाता है जब कोई अन्य मान पास नहीं होता है
- अहस्ताक्षरित - संख्या प्रकारों के लिए उपयोग किया जाता है, संग्रहीत डेटा को सकारात्मक संख्याओं और शून्य तक सीमित करता है
- ऑटो वृद्धि - MySQL हर बार एक नया रिकॉर्ड जोड़े जाने पर स्वचालित रूप से फ़ील्ड के मान को 1 से बढ़ा देता है
- प्राथमिक कुंजी - किसी तालिका में पंक्तियों को विशिष्ट रूप से पहचानने के लिए उपयोग किया जाता है। प्राथमिक कुंजी सेटिंग वाला कॉलम अक्सर एक आईडी नंबर होता है, और अक्सर AUTO_INCREMENT के साथ प्रयोग किया जाता है
प्रत्येक तालिका में प्राथमिक कुंजी कॉलम होना चाहिए (इस मामले में: "आईडी" कॉलम)। तालिका में प्रत्येक रिकॉर्ड के लिए इसका मान अद्वितीय होना चाहिए।
निम्नलिखित उदाहरण दिखाता है कि PHP में तालिका कैसे बनाई जाती है:
उदाहरण (MySQLi ऑब्जेक्ट-ओरिएंटेड)
<?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
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 प्रक्रियात्मक)
<?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
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);
?>
उदाहरण (पीडीओ)
<?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
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;
?>