შინაარსზე გადასვლა

PHP/MYSQL - მონაცემთა ბაზების და ცხრილების შექმნა

ვიკიწიგნებიდან
< PHP

მონაცემთა ბაზის შექმნა

[რედაქტირება]

CREATE DATABASE ოპერატორი გამოიყენება MySQL მონაცემთა ბაზის შესაქმნელად.
სინტაქსი

CREATE DATABASE database_name

იმისათვის რომ PHP-მ ამუშავოს ზემოთ მოყვანილი ოპერატორი, უნდა გამოვიყენოთ mysql_query() ფუნქცია. ეს ფუნქცია გამოიყენება მოთხოვნის, ან ბრძანების MySQL კავშირზე გასაგზავნად.
მაგალითი
მიმდინარე მაგალითში ჩვენ შევქმნით ბაზას სახელად "my_db":

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
if (mysql_query("CREATE DATABASE my_db",$con))
  {
  echo "Database created";
  }
else
  {
  echo "Error creating database: " . mysql_error();
  }
mysql_close($con);
?>

ცხრილის შექმნა

[რედაქტირება]

CREATE TABLE ოპერატორი გამოიყენება MySQL-ში მონაცემთა ბაზების ცხრილების შესაქმნელად.
სინტაქსი

CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name3 data_type,
.......
)

აუცილებელია დავამატოთ CREATE TABLE ოპერატორი mysql_query() ფუნქციაში, რათა შესრულდეს ბრძანება.
მაგალითი
მაგალითი გვიჩვენებს როგორ შევქმნატ ცხრილი სახელად "person", სამი სვეტით. სვეტების სახელები იქნება "FirstName", "LastName" და "Age":

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
// Create database
if (mysql_query("CREATE DATABASE my_db",$con))
  {
  echo "Database created";
  }
else
  {
  echo "Error creating database: " . mysql_error();
  }
// Create table in my_db database
mysql_select_db("my_db", $con);
$sql = "CREATE TABLE person 
(
FirstName varchar(14),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
mysql_close($con);
?>

აუცილებელი: სანამ შეიქმნება ცხრილები უნდა აირჩეს მონაცემთა ბაზა. მონაცემთა ბაზა ირჩევა mysql_select_db() ფუნქციით.
შენიშვნა: როდესაც ვქმნით varchar ტიპის მონაცემთა ბაზის ველს, ჩვენ უნდა მივუთითოთ ველის მაქსიმალური ზომა, მაგ.: varchar(15).

MYSQL მონაცემთა ტიპები

[რედაქტირება]

ქვემოთ მოყვანილია სხვადასვხა MySQL მონაცემთა ტიპები:

მონაცემთა ტიპები
რიცხობრივი მონაცემთა ტიპები აღწერა
int(size)
smallint(size)
tinyint(size)
mediumint(size)
bigint(size)
შეიცავს მხოლოდ მთელ რიცხვებს. ციფრთა მაქსიმალური რაოდენობის სპეციფიკაცია შესაძლებელია size პარამეტრში
decimal(size,d)
double(size,d)
float(size,d)
შეიცავს არამთელ რიცხვებს. ციფრთა მაქსიმალური რაოდენობის სპეციფიკაცია შესაძლებელია size პარამეტრში. რიცხვის მარჯვენა მხარეს ციფრთა მაქსიმალური რაოდენობის სპეციფიკაცია შესაძლებელია d პარამეტრში


მონაცემთა ტიპები
ტექსტური მონაცემთა ტიპები აღწერა
char(size) შეიცავს ფიქსირებულ სიგრძის სტრინგს. ფიქსირებული ზომის სპეციფიკაცია ხდება ფრჩხილებში
varchar(size) შეიცავს ცვლადი სიგრძის სტრინგს. მაქსიმალური ზომის სპეციფიკაცია ხდება ფრჩხილებში
tinytext შეიცავს ცვლად სტრინგს, მაქსიმუმ 255 სიმბოლოს
text
blob
შეიცავს ცვლად სტრინგს, მაქსიმუმ 65535 სიმბოლოს
mediumtext
mediumblob
შეიცავს ცვლად სტრინგს, მაქსიმუმ 16777215 სიმბოლოს
longtext
longblob
შეიცავს ცვლად სტრინგს, მაქსიმუმ 4294967295 სიმბოლოს



მონაცემთა ტიპები
თარიღის მონაცემთა ტიპები აღწერა
date(yyyy-mm-dd)
datetime(yyyy-mm-dd hh:mm:ss)
timestamp(yyyymmddhhmmss)
time(hh:mm:ss)
შეიცავს თარიღს და/ან დროს



მონაცემთა ტიპები
Misc. მონაცემთა ტიპები აღწერა
enum(value1,value2,ect) ENUM არის ENUMERATED სიის შემოკლებული ვარიანტი. შეუძლია შეაგროვოს 65535 მნიშვნელობა. თუ მნიშვნელობა ჩამატებულია, ის არ არის სიაში, ჩაისმება ცარიელი მნიშვნელობა
set SET ანალოგიურია ENUM-სა. თუმცა, SET შეუძლია ქონდეს 64 სია.