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

คําสั่ง UPDATE,คําสั่ง SHOW

คําสั่ง 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

ไม่มีความคิดเห็น:

แสดงความคิดเห็น