วันอังคารที่ 16 ธันวาคม พ.ศ. 2557

คำสั่งต่างๆใน MySQL

ในบทนี้จะไดเรียนรูเกี่ยวกับคําสั่งตางๆ ใน MySQL ซึ่งเปนการรวมคําสั่งทั้งหมดไมวาจะเปนคําสั่งที่ใช
สําหรับการกําหนด (Data Definition Language), คําสั่งที่ใชสําหรับทํางานขอมูล (Data Manipulation Language)
และคําสั่งที่ใชสําหรับการควบคุมการทํางาน (Data Control Language)


คําสั่ง CREATE DATABASE
CREATE DATABASE demo
เปนคําสั่งสราง database ชื่อ db_name ขึ้นมาใหมในกรณีที่มี database นั้นอยูแลว ก็จะปรากฏขาวสาร
แสดงความผิดพลาด (Error Message) Can't create database 'demo'. Database exists


คําสั่ง DROP DATABASE
DROP DATABASE demo
เปนคําสั่งลบ database ชื่อ db_name ออกไปจากระบบ


คําสั่ง CREATE TABLE
CREATE TABLE phonebook (id INT (4) NOT NULL
AUTO_INCREMENT, fname VARCHAR (35) , lname VARCHAR (35) ,
email VARCHAR (50) , office VARCHAR (200) , province CHAR (2) ,
PRIMARY KEY(id), UNIQUE(id), INDEX(id)) ศูนยเทคโนโลยีสารสนเทศและการสื่อสาร สป. การใชงานฐานขอมูล MySQL 57
โดยทั่วไปขนาดของตารางขอมูลหนึ่งๆ จะมีขนาดไมเกิน 2G หรือ 4G ขึ้นอยูกับระบบปฏิบัติการ เรา
สามารถทําใหประหยัดเนื้อที่ไดอีกโดยการบีบอัด (PACK) ขอมูลดัชนีซึ่งสามารถใหบีบอัดโดยกําหนดคา
PACK_KEYS=1 การบีบอัดนี้จะทําใหการทํางานชาลง แตก็ประหยัดเนื้อที่ขึ้น และตามปกติถาผูใชไมได
กําหนดใหบีบอัดขอมูลที่เปนสตริงหรือตัวอักษรก็จะไดรับการบีบอัดขอมูลอยูแลว สําหรับขอมูลตัวเลขคาการ
ทํางานปกติจะไมรับการบีบอัดเวนแตกําหนดการบีบอัดดวย
การใช UNION จะใชกรณีที่ตองการรวมตารางขอมูลหลายๆ ตารางเขาดวยกันเปนอันเดียว ซึ่งจะทํางาน
กับตารางประเภท MERGE เทานั้น
คําสั่ง ALTER TABLE
ALTER TABLE phonebook ADD tel VARCHAR(30)
 ALTER TABLE เปนคําสั่งสําหรับการปรับเปลี่ยนแกไขโครงสรางของตารางขอมูลเชน การเพิ่ม-ลบ
ฟลด, การสราง-ลบดัชนี, การเปลี่ยนประเภทขอมูลของฟลด, การเปลี่ยนชื่อฟลดเปนตน


คําสั่ง RENAME TABLE
RENAME TABLE phonebook to phone
เปนคําสั่งเพื่อเปลี่ยนชื่อตารางขอมูลเปนชื่อใหม


คําสั่ง DROP TABLE
DROP TABLE phonebook
เปนคําสั่งเพื่อใหลบตารางขอมูลออกจากระบบ สําหรับออปชัน RESTRICT และ CASCADE ยังไม
สามารถงานไดในปจจุบัน เนื่องจากเปนความสามารถที่มีแผนจะรองรับในอนาคต สําหรับการใชคําสั่ง DROP
TABLE จะตองใหความระมัดระวังในการใชงานเปนอยางยิ่งโดยเฉพาะการทํางานกับตารางขอมูลประเภท nontransaction
เพราะจะทําการ commit การทางานโดยอ ํ ัตโนมัติ
คําสั่ง OPTIMIZE TABLE
OPTIMIZE TABLE phonebook ศูนยเทคโนโลยีสารสนเทศและการสื่อสาร สป. การใชงานฐานขอมูล MySQL 58
เปนคําสั่งสําหรับจัดระเบียบขอมูลใหเปนระเบียบ หรือการทําดีแฟรกเมนตนั่นเองนั่นเอง เพราะถา
ตารางขอมูลมีการใชงานมานาน มีการใชงานที่ทําใหขอมูลมีการเปลี่ยนแปลงความยาว หรือเปลี่ยนขนาดของเนื้อ
ที่เก็บขอมูลโดยเฉพาะกับขอมูลประเภทท่ียืดหยุนไปตามขอมูลเชน VARCHAR, BLOB หรือ TEXT การใช
คําสั่ง OPTIMIZE TABLE ก็จะชวยใหมีการจัดระเบียบขอมูลใหดียิ่งขึ้น หากปลอยระยะเวลานานๆ จะเกิด
ชองวางระหวางขอมูลการอานขอมูลของสื่อจะไมราบรื่น ชา เนื่องจากเสียเวลาในการกระโดดขามชองวางนั้น
นั่นเอง


คําสั่ง DELETE
DELETE FROM phonebook WHERE id=4
เปนคําสั่งสําหรับลบขอมูลจากตาราง โดยสามารถกําหนดเงื่อนไขสําหรับการลบไดซึ่งถาไมไดระบุ
เงื่อนไขจะเปนการลบขอมูลทั้งหมดออกจากตารางและถาอยูใน AUTOCOMMIT mode (กรณีปกติทั่วไป) จะไม
สามารถทําการยกเลิกการลบครั้งนี้ได


คําสั่ง TRUNCATE
TRUNCATE phonebook
เปนคําสั่งที่ใหผลเชนเดียวกับ DELETE FROM table_name แตมีขอแตกตางดังนี้
- จะทําการดรอปตารางขอมูลกอน แลวทําการสรางใหมซึ่งจะใหผลที่เร็วกวาการลบ
ตารางทั้งหมด
- การทํางานเปน non-transaction ไมสามารถทําการยกเลิกได
คําสั่ง SELECT
SELECT id, fname FROM phonebook ORDER BY fname DESC
เปนคําสั่งสําหรับการแสดงผล หรือการดึงขอมูลจากตาราง โดยสามารถกําหนดเงื่อนไข รูปแบบและ
วิธีการไดอยางหลากหลายการดึงขอมูลสามารถระบุวาจะเลือกจากตารางเดียว หรือหลายตารางก็ได
การใชLIMIT rows ก็จะชวยกําหนดใหทําการดึงขอมูลจากตารางไดไมเกินจํานวนแถว rows ที่ระบุ
การใชคําสั่งคียเวิรดตามหลัง SELECT จะตองใชใหถูกตอง มีบางคียเวิรดที่ตองใชเรียงลําดับกัน เชน
HAVING clause ตองใชตามหลัง GROUP BY clause และใชกอน ORDER BY clause เปนตน
ตามปกติหากไมไดระบุวิธีการจัดเรียงขอมูลก็จะเปนการเรียงจากนอยไปมาก (Ascending) หรือคียเวิรด
ASC แตถาตองการเรียงจากมากไปนอย (Descending) ใหใชคียเวิรด DESC ศูนยเทคโนโลยีสารสนเทศและการสื่อสาร สป. การใชงานฐานขอมูล MySQL 59
การใชคียเวิรด HAVING จะใชในกรณีรวมกับ GROUP BY ซึ่งก็เปนการกําหนดเงื่อนไขในการดึง
ขอมูลดวยคําสั่ง SELECT
SELECT id,fname FROM phonebook GROUP BY fname HAVING id>2


คําสั่ง INSERT
INSERT INTO phonebook (id, fname, lname, email, office, province)
VALUES (6, 'sineenat', 'phradmali', 'sineenat@health.moph.go.th', 'ศทส.', '12')
เปนคําสั่งสําหรับการเพิ่มแถวขอมูล หรือระเบียนใหมเขาตารางขอมูล


คําสั่ง UPDATE
UPDATE phonebook SET office= 'ศูนยเทคโนโลยีสารสนเทศและการสื่อสาร' WHERE id=6
เปนคําสั่งเพื่อทําการเปลี่ยนแปลงขอมูลในตารางใหเปนตามที่ตองการ
คําสั่ง USE
USE demo
 USE เปนคําสั่งสําหรับเลือกใช database SHOW TABLES แสดงตารางที่อยูใน database demo
ทั้งหมด
คําสั่ง FLUSH
FLUSH TABLES phonebook
เปนคําสั่งที่ใชสําหรับการลบหนวยความจําภายใน (Internal Cache) ที่ใชงาน ทั้งนี้การใชคําสั่ง FLUSH
จะอนุญาตเฉพาะ user ที่มีสิทธิ์ (Privilege) เทานั้น
Flush_option สามารถระบุไดดังนี้
 HOSTS ทําการลาง hose cache table เพื่อปรับปรุงขอมูลของ host หรือ client ที่
 คอนเน็กตเขาใชงาน ซึ่งอาจมีการเปลี่ยนแปลง IP address หรืออื่นๆ
 โดยเมื่อทําการ flush เรียบรอยแลวก็จะอนุญาตให host นั้นๆ ทําการศูนยเทคโนโลยีสารสนเทศและการสื่อสาร สป. การใชงานฐานขอมูล MySQL 60
 คอนเน็กตเขามาใหมอีกครั้งหนึ่ง
LOGS ปดและเปด log files ใหม
PRIVILEGES ทําการ reload สิทธิ์ตางๆ ของ user จาก grant tables ของ MySQL Server
TABLES ปด tables ทั้งหมด หากตารางใดยังถูกเปดอยูก็จะถูก force ใหปดลง


คําสั่ง SHOW
SHOW DATABASES
เปนคําสั่งสําหรับแสดงรายละเอียด (Information) ของ databases, tables, columns หรือ สถานะตางๆ
ของ Server
แสดงรายละเอียดของ Databases, Tables, Columns และ Indexes
 SHOW DATABASES แสดงรายชื่อ databases ทั้งหมดในระบบฐานขอมูล
SHOW TABLES แสดงรายชื่อ tables ทั้งหมดของ current database
SHOW OPEN TABLES แสดงรายชื่อ tables ที่ถูกเปดอยูในปจจุบัน
SHOW COLUMNS แสดงรายละเอียดฟลดทั้งหมดใน table นั้น
 (ใหผลลัพธเชนเดียวกับคําสั่ง DESCRIBE)
SHOW FIELDS ใหผลลัพธเชนเดียวกับ SHOW COLUMNS
SHOW INDEX แสดงรายละเอียดวามีดัชนีอะไรบางสําหรับ table นั้นๆ
SHOW KEYS ใหผลลัพธเชนเดียวกับ SHOW INDEX
คําสั่ง GRANT และ REVOKE
GRANT ALL PRIVILEGES ON demo TO user1@localhost WITH GRANT OPTION
REVOKE ALL PRIVILEGES ON demo FROM user1@localhost
- คําสั่ง GRANT เปนคําสั่งสําหรับการกําหนดสิทธิ์หรือความสามารถใดๆ ใหกับ user
- คําสั่ง REVOKE หรือคําสั่งที่ตรงกันขามกับ GRANT คือเปนการถอนหรือยกเลิกสิทธิ์ใดๆ จาก
user
การใชคําสั่ง GRANT หรือ REVOKE จะอนุญาตเฉพาะผูบริหารระบบในการกําหนดสิทธิ์ตางๆ สําหรับ
ผูใช ศูนยเทคโนโลยีสารสนเทศและการสื่อสาร สป. การใชงานฐานขอมูล MySQL 61
 MySQL จะแบงสิทธิ์ (Privilege) เปน 4 ระดับ คือ
1. Global level
ระดับบนสุด ครอบคลุมทุก database รายละเอียดสําหรับสิทธิ์ของระดับนี้จะถูกเก็บไวในตาราง
mysql.user
2. Database level
ระดับ database ครอบคลุมเฉพาะใน database อันใดอันหนึ่ง เชน ความสามารถในการกระทําใดๆ
ภายใน database นั้นๆ รายละเอียดสําหรับสิทธิ์ของระดับนี้จะถูกเก็บไวในตาราง mysql.db และ mysql.host
3. Table level
ระดับ table ครอบคลุมเฉพาะภายในตารางนั้นๆ เชน ความสามารถในการกระทํากับ table นั้นๆ
สามารถทําการ select, insert, delete, update ไดหรือไม เปนตน รายละเอียดสําหรับสิทธิ์ของระดับนี้จะถูกเก็บอยู
ในตาราง mysql.tables_priv
4. Column level
ระดับ column ครอบคลุมเฉพาะฟลดใดฟลดหนึ่งภายในตารางขอมูลรายละเอียดสําหรับสิทธิ์ของระดับ
นี้จะถูกเก็บอยูในตาราง mysql.columns_priv
รายละเอียด priv_type มดีังตอไปนี้
ALL PRIVILEGES FILE RELOAD
ALTER INDEX SELECT
CREATE INSERT SHUTDOWN
DELETE PROCESS UPDATE
DROP USAGE
- เราสามารถใช ALL หรือ ALL PRIVILEGES ไดอยางใดอยางหนึ่ง
- USAGE มีความหมายเทากับ no privileges โดยใชกรณีที่เราตองการ create user และกําหนดใหมี
สิทธิ์เปน no privileges
- การถอนสิทธิ์การ GRANT ของ user ใดๆ ใหใช priv_type เปน GRANT OPTION
ตัวอยาง: REVOKE GRANT OPTION ON … FROM …;
- การใช priv_type สําหรับ table: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP,
GRANT, INDEX และ ALTER
- การใช priv_type สําหรับฟลด SELECT, INSERT, UPDATE
- การกาหนดส ํ ิทธิ์ระดับ database ใช ON *.*
- สําหรับ user_name สามารถระบุไดถึงโฮสตที่ใชงาน เชน mysql@localhost หรือ root@’%’
 ศูนยเทคโนโลยีสารสนเทศและการสื่อสาร สป. การใชงานฐานขอมูล MySQL 62


วันอังคารที่ 2 ธันวาคม พ.ศ. 2557

แนวข้อสอบ o-net คอมพิวเตอร์

1.ข้อใดเป็นการเรียงลำดับวิวัฒนาการของวงจรคอมพิวเตอร์จากอดีตจนถึงปัจจุบัน(O-net 52')
 ก. หลอดสุญญกาศ วงจรไอซี ทรานซิสเตอร์ วงจรรวมความจุสูง 
 ข.  ทรานซิสเตอร์ หลอดสุญญากาศ วงจรไอซี วงจรรวมความจุสูง
 ค.  หลอดสุญญากาศ ทรานซิสเตอร์ วงจรไอซี วงจรรวมความจุสูง
 ง.  ทรานซิสเตอร์ วงจรไอซี หลอดสูญญากาศ วงจรรวมความจุสูง


2.ทำไมอุปกรณ์คอมพิวเตอร์จึงใช้ระบบเลขฐานสอง
    ก. เนื่องจากอุปกรณ์คอมพิวเตอร์ใช้ภาษาเครื่อง    
    ข. เนื่องจากอุปกรณ์คอมพิวเตอร์ไม่เข้าใจภาษามนุษย์    
    ค.เนื่องจากอุปกรณ์คอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ที่ทำงานแบบแอนะล็อก    
    ง.เนื่องจากอุปกรณ์คอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ที่ทำงานแบบดิจิทัลโดยใช้แรงดันไฟฟ้าแสดงสถานะเพียงสองสถานะ


3.กระบวนงานในข้อใดเกิดขึ้นเป็นสิ่งแรกเมื่อเปิดเครื่องคอมพิวเตอร์
    ก. เช็คสถานะของอาร์ดแวร์
    ข. โหลดระบบปฏิบัติการเข้าสู่หน่วยความจำหลัก
    ค. หน่วยประมวลผลกลางประมวลชุดคำสั่งในหน่วยความจำหลักแบบแก้ไขได้ ( RAM )
    ง. หน่วยประมวลผลกลางประมวลชุดคำสั่งในหน่วยความจำหลักแบบอ่านได้อย่างเดียว( ROM )


4.สื่อกลางที่ใช้มากในการสื่อสารข้อมูลในระบบเครือข่ายแลนคือข้อใด
    ก. สายคู่บิดเกลี่ยว
    ข. สายโคแอกเชียล
    ค. สายเส้นใยนำแสง
    ง.  สายโทรศัพท์


5.ความละเอียดของจอภาพสามารถบอกได้ด้วยปัจจัยในข้อใด
    ก. CRT
    ข. Dot Pitch
    ค. Refresh Rate
    ง. Color Quality


6. การวัดขนาดข้อมูล 8 Bit มีค่าเท่ากับ
    ก. 10 Byte
    ข. 100 Byte
    ค. 1 Byte
    ง. 1024 Byte


 7.ข้อมูลสารสนเทศ คืออะไร
  
ก. ข้อมูลที่ได้รับการกรอง และเรียบเรียง ที่สามารถนำไปใช้งานได้
   ข. ความเป็นจริงที่ยังเป็นข้อมูลดิบซึ่งไม่ได้ผ่านการประมวลผลใด ๆ
   ค. ข้อมูลที่ประมวลผลแล้ว
   ง. ผลลัพท์ของการทำงาน


8.   ในปัจจุบันนิยมใช้ระบบปฏิบัติการอะไรมากที่สุด (O-net 49)
    ก. Microsoft Windows98
    ข. Microsoft Windows ME
    ค. Microsoft Windows XP
    ง. Microsoft Office 


9.  โปรโตคอล คืออะไร
     ก. ระบบที่แปลงภาษาเครื่องคอมพิวเตอร์
     
ข. ระเบียบวิธีที่กำหนดสำหรับการสื่อสารข้อมูลระหว่างเครื่องคอมพิวเตอร์
     ค. ระบบที่จำลองการทำงานของเครื่องคอมพิวเตอร์
     ง. ระบบรับส่งข้อมูล
10. โปรแกรม Microsoft Office XPใช้ทำงานเกี่ยวกับด้านใด
     ก. ด้านเอกสาร
     ข. พิมพ์จดหมาย
     ค. การบันทึกไฟล์
     ง. การแนบไฟล์


วันอังคารที่ 25 พฤศจิกายน พ.ศ. 2557

การหยุดประมวลผลภายในฟังก์ชัน

คีย์เวิร์ด return หยุดการประมวลผลฟังก์ชัน ฟังก์ชันสิ้นสุดได้เพราะประโยคคำสั่งทั้งหมดได้รับการประมวลผล หรือ ใช้คีย์เวิร์ด return การประมวลผลกลับไปยังประโยคคำสั่งต่อจากการเรียกฟังก์ชัน
<?php
function division($x, $y)
{
if ($y == 0 || !isset($y))
{
echo " ตัวหาร y ต้องไม่เป็นศูนย์หรือไม่มีค่า" ;
return;
}
$result = $x / $y;
echo $result;
}
?>
ถ้าประโยคคำสั่ง return ได้รับการประมวลผล บรรทัดคำสั่งต่อไปในฟังก์ชันจะถูกข้ามไป และกลับไปยังผู้เรียกฟังก์ชันนี้ ในฟังก์ชันนี้ ถ้า y เป็น 0 จะหยุดการประมวลผล ถ้า y ไม่เท่ากับ 0 จะคำนวณผลหาร
สมมติป้อนค่าเป็น
x = 4, y = 0
x = 4
x = 4, y = 2
ผลลัพธ์ของคำสั่ง คือ
x = 4, y = 0 ผลลัพธ์ ตัวหาร y ต้องไม่เป็นศูนย์หรือไม่มีค่า
x = 4, y = ผลลัพธ์ ตัวหาร y ต้องไม่เป็นศูนย์หรือไม่มีค่า
x = 4, y = 2 ผลลัพธ์ 2

การตั้งชื่อฟังก์ชัน

สิ่งสำคัญมากในการพิจารณาเมื่อตั้งชื่อฟังก์ชันคือชื่อต้องสั้นแต่มีความหมาย ถ้าฟังก์ชันสร้างส่วนตัวของเพจควรตั้งชื่อเป็น pageheader () หรือ page_header ()
ข้อจำกัดในการตั้งชื่อคือ
  • ฟังก์ชันไม่สามารถมีชื่อเดียวกับฟังก์ชันที่มีอยู่
  • ชื่อฟังก์ชันสามารถมีได้เพียงตัวอักษรตัวเลข และ underscore
  • ชื่อฟังก์ชันไม่สามารถเริ่มต้นด้วยตัวเลข
หลายภาษายอมให้ใช้ชื่อฟังก์ชันได้อีก ส่วนการทำงานนี้เรียกว่า function overload อย่างไรก็ตาม PHP ไม่สนับสนุน function overload ดังนั้นฟังก์ชันไม่สามารถมีชื่อเดียวกันกับฟังก์ชันภายใน หรือฟังก์ชันกำหนดเองที่มีอยู่


หมายเหตุ ถึงแม้ว่าทุกสคริปต์ PHP รู้จักฟังก์ชันภายในทั้งหมด ฟังก์ชันกำหนดเองอยู่เฉพาะในสคริปต์ที่ประกาศสิ่งนี้หมายความว่า ชื่อฟังก์ชันสามารถใช้ในคนละไฟล์แต่อาจจะไปสู่ความสับสน และควรหลีกเลียง
ชื่อฟังก์ชันต่อไปนี้ถูกต้อง
name ()
name2 ()
name_three ()
_namefour ()
ชื่อไม่ถูกต้อง
5name ()
Name-six ()
fopen ()
การเรียกฟังก์ชันไม่มีผลจากชนิดตัวพิมพ์ ดังนั้นการเรียก function_name (), Function_Name() หรือ FUNCTION_NAME() สามารถทำได้และมีผลลัพธ์เหมือนกัน แต่แบบแผนการกำหนดชื่อฟังก์ชันใน PHP ให้ใช้ตัวพิมพ์เล็ก
ชื่อฟังก์ชันแตกต่างจากชื่อตัวแปร โดยชื่อตัวแปรเป็นชนิดตัวพิมพ์มีผล ดังนั้น $Name และ $name เป็น 2 ตัวแปร แต่ Name () และ name () เป็นฟังก์ชันเดียวกัน

การกำหนดฟังก์ชันและการเรียกฟังก์ชัน

การประกาศฟังก์ชันเริ่มต้นด้วยคีย์เวิร์ด function กำหนดชื่อฟังก์ชัน พารามิเตอร์ที่ต้องการ และเก็บคำสั่งที่จะประมวลผลแต่ละครั้งเมื่อเรียกฟังก์ชันนี้
<?php
function function_name(parameter1,…)
{
ชุดคำสั่ง …
}
?>
ชุดคำสั่งต้องเริ่มต้นและสิ้นสุดในวงเล็บปีกกา ({ }) ตัวอย่างฟังก์ชัน my_function
<?php
function my_function()
{
$mystring =<<<BODYSTRING
my function ได้รับการเรียก
BODYSTRING;
echo $mystring;
}
?>
การประกาศฟังก์ชันนี้ เริ่มต้นด้วย function ดังนั้นผู้อ่านและตัวกระจาย PHP ทราบว่าต่อไปเป็นฟังก์ชันกำหนดเอง ชื่อฟังก์ชันคือ my_function การเรียกฟังก์ชันนี้ใช้ประโยคคำสั่งนี้
my_function ();
การเรียกฟังก์ชันนี้จะให้ผลลัพธ์เป็นข้อความ "my function ได้รับการเรียก " บน browser

ฟังก์ชันใน PHP

ฟังก์ชันในโปรแกรมส่วนใหญ่ได้รับการเรียกคำสั่งเพื่อทำงานอย่างเดียว สิ่งนี้ทำให้คำสั่งอ่านได้ง่ายและยอมให้ใช้คำสั่งใหม่แต่ละครั้งเมื่อต้องการทำงานเดียวกัน
ฟังก์ชันเป็นโมดูลเก็บคำสั่งที่กำหนดการเรียกอินเตอร์เฟซ ทำงานเดียวกัน และตัวเลือกส่งออกค่าจากการเรียกฟังก์ชัน คำสั่งต่อไปเป็นการเรียกฟังก์ชันอย่างง่าย


my_function ();


คำสั่งเรียกฟังก์ชันชื่อ my_function ที่ไม่ต้องการพารามิเตอร์ และไม่สนใจค่าที่อาจจะส่งออกโดยฟังก์ชันนี้

ฟังก์ชันจำนวนมากได้รับการเรียกด้วยวิธีนี้ เช่น ฟังก์ชัน phpinfo () สำหรับแสดงเวอร์ชันติดตั้งของ PHP สารสนเทศเกี่ยวกับ PHP การตั้งค่าแม่ข่ายเว็บ ค่าต่างๆ ของ PHP และตัวแปร ฟังก์ชันนี้ไม่ใช้พารามิเตอร์และโดยทั่วไปไม่สนใจค่าส่งออก ดังนั้นการเรียก phpinfo () จะประกอบขึ้นดังนี้



phpinfo ();

วันเสาร์ที่ 1 พฤศจิกายน พ.ศ. 2557

การบริหารฐานข้อมูล

ในระบบฐานข้อมูลนอกจากจะมีระบบการจัดการฐานข้อมูล ซึ่งเป็นซอฟต์แวร์ที่สร้างขึ้นเพื่อจัดการกับข้อมูลให้เป็นระบบ จะได้นำไปเก็บรักษา เรียกใช้ หรือนำมาปรับปรุงให้ทันสมัยได้ง่ายแล้ว ในระบบฐานข้อมูลยังต้องประกอบด้วยบุคคลที่มีหน้าที่ควบคุมดูแลระบบฐานข้อมูล คือ ผู้บริหารฐานข้อมูล

       เหตุผลสำหรับประการหนึ่งของการจัดทำระบบจัดการฐานข้อมูล คือ การมีศูนย์กลางควบคุมทั้งข้อมูลและโปรแกรมที่เข้าถึงข้อมูลเหล่านั้น บุคคลที่มีอำนาจหน้าที่ดูแลการควบคุมนี้ เรียกว่า ผู้บริหารฐานข้อมูล หรือ DBA (data base administor) คือ ผู้มีหน้าที่ควบคุมการบริหารงานของฐานข้อมูลทั้งหมด

1. หน้าที่ของผู้บริหารฐานข้อมูล
1.1 กำหนดโครงสร้างหรือรูปแบบของฐานข้อมูล โดยทำการวิเคราะห์และตัดสินใจว่าจะรวมข้อมูลใดเข้าไว้ในระบบใดบ้าง ควรจะจัดเก็บข้อมูลด้วยวิธีใด และใช้เทคนิคใดในการเรียกใช้ข้อมูลอย่างไร
1.2 กำหนดโครงสร้างของอุปกรณ์เก็บข้อมูลและวิธีการเข้าถึงข้อมูล โดยกำหนดโครงสร้างของอุปกรณ์เก็บข้อมูลและวิธีการเข้าถึงข้อมูล พร้อมทั้งกำหนดแผนการในการสร้างระบบข้อมูลสำรองและการฟื้นสภาพ โดยการจัดเก็บข้อมูลสำรองไว้ทุกระยะ และจะต้องเตรียมการไว้ว่าถ้าเกิดความผิดพลาดขึ้นแล้วจะทำการฟื้นสภาพได้อย่างไร
1.3 มอบหมายขอบเขตอำนาจหน้าที่ของการเข้าถึงข้อมูลของผู้ใช้ โดยการประสานงานกับผู้ใช้ ให้คำปรึกษา ให้ความช่วยเหลือแก่ผู้ใช้ และตรวจตราความต้องการของผู้ใช้5.ระบบการจัดการฐานข้อมูล (data base management system, DBMS)


                         

2. หน้าที่ของระบบการจัดการฐานข้อมูล
2.1ระบบจัดการฐานข้อมูลเป็นซอฟต์แวร์ที่ทำหน้าที่ดังต่อไปนี้ ดูแลการใช้งานให้กับผู้ใช้
ในการติดต่อกับตัวจัดการระบบแฟ้มข้อมูลได้ ในระบบฐานข้อมูลนี้ข้อมูลจะมีขนาดใหญ่ ซึ่งจะถูกจัดเก็บไว้ในหน่วยความจำสำรองเมื่อผู้ใช้ต้องการจะใช้ฐานข้อมูล ระบบการจัดการฐานข้อมูลจะทำหน้าที่ติดต่อกับระบบแฟ้มข้อมูลซึ่งเสมือนเป็นผู้จัดการแฟ้มข้อมูล (file manager) นำข้อมูลจากหน่วยความจำสำรองเข้าสู่หน่วยความจำหลักเฉพาะส่วนที่ต้องการใช้งาน และทำหน้าที่ประสานกับตัวจัดการระบบแฟ้มข้อมูลในการจัดเก็บ เรียกใช้ และแก้ไขข้อมูล
2.2 ควบคุมระบบความปลอดภัยของข้อมูลโดยป้องกันไม่ให้ผู้ที่ไม่ได้รับอนุญาตเข้ามาเรียกใช้หรือแก้ไขข้อมูลในส่วนป้องกันเอาไว้ พร้อมทั้งสร้างฟังก์ชันในการจัดทำข้อมูลสำรอง โดยเมื่อเกิดมีความขัดข้องของระบบแฟ้มข้อมูลหรือของเครื่องคอมพิวเตอร์เกิดการเสียหายนั้น ฟังก์ชันนี้จะสามารถทำการฟื้นสภาพของระบบข้อมูลกลับเข้าสู่สภาพที่ถูกต้องสมบูรณ์ได้
2.3 ควบคุมการใช้ข้อมูลในสภาพที่มีผู้ใช้พร้อม ๆ กันหลายคน โดยจัดการเมื่อมีข้อผิดพลาดของข้อมูลเกิดขึ้น