วันอาทิตย์ที่ 3 มกราคม พ.ศ. 2559

ภัยใกล้ตัวจากโทรศัพท์

          นอกเหนือไปจากอวัยวะครบ 32 ประการในร่างกายคนเราแล้ว ปัจจุบันดูเหมือนว่า “โทรศัพท์มือถือ” กำลังจะกลายเป็นส่วน
หนึ่งของคนยุคโลกาภิวัฒน์ที่จะขาดเสียมิได้ เพียงแต่ว่าอวัยวะส่วนนี้โดยมาก จะเริ่มงอกเงยขึ้นมาในช่วงที่เป็น “วัยรุ่น” ซึ่งข้อดีของโทรศัพท์มือถือก็มีอยู่ไม่น้อย อาทิ ทำให้เราสามารถสื่อสารถึงกันและกันได้ตลอดเวลา และแทบทุกสถานที่ ทำให้เราสามารถโทรนัดสถานที่ หรือโทรเรียกช่าง/บริษัทประกันมาได้ทันท่วงที เมื่อรถเสีย รถชนบนทางด่วนหรือในบางสถานที่ที่ไม่มีโทรศัพท์สาธารณะ ฯลฯอย่างไรก็ดี สิ่งใดมีคุณอนันต์ สิ่งนั้นก็มักมีโทษมหันต์ด้วย หากผู้ใช้นำไปใช้ในทางที่ผิด หรือใช้ไม่เป็น โทษของโทรศัพท์มือถือได้ก่อให้เกิดโรคใหม่ๆ หลายประการ ดังนี้ 
โรคทรัพย์จาง ดิ้นรนหาเงินเพิ่มหรือไปกู้หนี้ยืมสินมาซื้อมือถือ ค่าใช้จ่ายที่เพิ่มมากขึ้นจากค่าโทรศัพท์และค่าบริการต่างๆ
โรคขาดความอดทนและใจร้อน เพราะความสะดวกสบายในการใช้โทรศัพท์มือถือ ที่ว่าตรงไหนก็ได้ เวลาใดก็ได้ กดปุ๊บ
ติดปั๊บนี่เอง ทำให้หลายๆ คนกลายเป็นคนที่ทนรอใครนานไม่ได้ หรือไม่ยอมทนแม้แต่เรื่องเล็กๆ น้อยๆ
โรคขาดกาลเทศะและมารยาท เช่น การใช้โทรศัพท์เวลาประชุม อาจเป็นการรบกวนผู้อื่นในเวลานอน เวลารับประทาน
อาหาร เวลาพักผ่อน หรือเป็นวันหยุด กำลังใช้เวลาอยู่กับครอบครัว เป็นต้น
โรคขาดมนุษยสัมพันธ์ หากวันไหนไม่ได้โทรศัพท์ไปหาเพื่อน ก็อาจจะเกิดอาการเฉาหรือเหงาหงอย โดยไม่คิดจะมีมนุษยสัมพันธ์กับเพื่อนคนอื่นหรือคนที่อยู่รอบข้าง กลายเป็นคนแยกตัวออกจากสังคม นอกจากโรคดังกล่าวข้างต้นแล้ว โทรศัพท์มือถือยังมีผลข้างเคียงทำให้เสียสุขภาพในด้านอื่นๆ อีก เช่น ทำให้เกิดอาการอ่อนเพลีย ไม่สดชื่น เพราะมัวแต่คุยทั้งวันทั้งคืนเลยนอนดึก นอนไม่พอ ทำให้หูตึงหรือมีโรคเกี่ยวกับหู เกิดอาการปวดหัว ไมเกรนหรือมีปัญหาทางเส้นประสาท เพราะคลื่นจากมือถือที่มีกำลังส่งแรงสูง ทำให้เกิดพวกโรคจิตเพิ่มขึ้น คือพวกที่ชอบแอบถ่าย หรือบางคนก็ถ่ายภาพหวิวของตัวเองไปลงตามอินเตอร์เน็ต เพราะทำได้ง่ายและสะดวกสบายขึ้น หลายๆ ครั้ง มือถือทำให้ขาดความระมัดระวัง ขับไปพูดไป จนทำให้เกิดอุบัติเหตุ รถชนกัน หรือชนคนอื่น
นอกจากนี้ มือถือยังก่อให้เกิดอาชญากรรม ถูกคนร้ายติดตามมาทำร้ายร่างกายหรือแย่งชิงทรัพย์ได้ง่ายอีกด้วย
การแผ่รังสี ของตัวโทรศัพท์มือถือ
          โดยสิ่งที่ได้รับการกล่าวถึง ในด้านอันตรายที่สุดก็คือ การแผ่รังสี ของตัวโทรศัพท์เอง ซึ่งเป็นที่ทราบกันดีอยู่แล้วว่า สิ่งมีชีวิตหาก
ได้รับรังสีในปริมาณมากๆ ยิ่งมีความเข้มของรังสีสูงแล้ว ย่อมทำอันตรายถึงชีวิตได้ โดยโรคที่คาดว่าจะก่อให้เกิดได้จากการรับรังสี
จากมือถือ ก็คือ มะเร็งในสมอง องค์การอาหารและยาของอเมริกา ยอมรับว่า คลื่นความถี่รังสีวิทยุ ก่อให้เกิดการเปลี่ยนแปลงในสิ่งมี
ชีวิต (เช่น ไมโครเวฟ) และในโทรศัพท์มือถือ ก็ก่อให้เกิดรังสีประเภทนี้ แม้ในภาวะปกติ จะพบรังสีนี้อยู่น้อยมาก แต่เมื่อเกิดการ
สื่อสาร พูดคุย ปริมาณรังสีก็จะมากขึ้น โดยในปีหนึ่งๆ มีผู้ป่วยด้วยมะเร็งในสมองเป็นอัตรา 6 คนต่อ 1 แสนคน ถ้ามีผู้ใช้โทรศัพท์
80 ล้านคน ก็จะมีผู้ป่วยถึง 4800 คนในแต่ละปี แต่ก็ไม่ได้ฟันธงลงไปว่า ผู้ป่วยเป็นมะเร็งเพราะใช้มือถือ ได้แต่เพียงเตือนว่า ผู้ใช้
มือถือมีโอกาสเป็นมะเร็งในสมองสูงกว่าผู้ไม่ได้ใช้เท่านั้นเอง นายแพทย์สักกะ ณ ตะกั่วทุ่ง แพทย์หู คอ จมูก ประจำโรงพยาบาล
พญาไท กล่าวว่า สิ่งที่วงการแพทย์สามารถยืนยันได้ถึงผลกระทบดังกล่าวในขณะนี้ก็คือ การคุยโทรศัพท์เคลื่อนที่นานๆ ผู้ใช้อาจเกิด
อาการปวดศีรษะ, ผิวหนังเหี่ยวย่น, ความจำแย่ลง ขณะเดียวกัน ยังมีข้อสมมติฐานที่ว่า คลื่นแม่เหล็กไฟฟ้าของโทรศัพท์เคลื่อนที่ อาจ
ทำให้เกิดการรั่วของฮีโมโกลบินในเม็ดเลือดแดง ซึ่งจะสะสมในระบบหมุนเวียนโลหิต ส่งผลให้เกิดโรคความดันสูง นอกจากนี้ ยังทำ
ให้เยื่อหุ้มสมองเสื่อม เป็นผลให้เกิดโรคความจำเสื่อม และอัลไซเมอร์ได้ นักวิทยาศาสตร์กล่าวแจ้งว่า มะเร็งของสมองต้องใช้เวลา
ก่อตัวหลายสิบปี ก่อนหน้านี้ราชสมาคมในลอนดอน ก็เคยเปิดเผยรายงานผลการศึกษาว่า ผู้ใหญ่ที่ใช้โทรศัพท์มือถือมาก่อนอายุ 20 ปี
เสี่ยงกับการจะเป็นมะเร็งสมองเมื่อตอนอายุ29 ปี ยิ่งกว่าคนที่ไม่ได้ใช้ถึง 5 เท่า ดร.คาร์เปนเตอร์ ชี้ว่า“มันอาจจะเป็นกับศีรษะทาง
ด้านที่ใช้พูดโทรศัพท์” และกล่าวว่า “เด็กทุกคนพากันใช้มันตลอดเวลา และทั้งโลกพากันใช้โทรศัพท์มือถือมากถึง 3 พันล้านเครื่อง
เขาเรียกร้องว่า ควรจะมีการติดคำเตือนให้กับโทรศัพท์มือถือ เหมือนกับตามซองบุหรี่เสีย นอกจากนี้ยังมีคำเตือนจากแพทย์ว่า ผู้ชาย
ไม่ควรพกมือถือที่เอว เสี่ยงรับผลกระทบต่อไขกระดูก และอัณฑะ ส่วนกรณีโรคหัวใจไม่ควรพกใส่กระเป๋าเสื้อ แม้ไม่มีผลยืนยันชัดเจน
แต่ต้องป้องกันไว้ก่อน อีกทั้งไม่ควรโทรนานเกิน 15 นาที เพราะอาจส่งผลต่อการทำงานของสมองและระบบเม็ดเลือดแดง
โทรศัพท์มือถือที่ใช้อยู่ทุกวันนี้ก่อให้เกิดขยะได้
          คงมีน้อยคนที่รู้ว่าในแบตเตอรี่โทรศัพท์มือถือที่เราใช้กันอยู่ทุกวันนี้ จะมีส่วนประกอบที่เป็นสารโลหะหนักผสมอยู่ ไส้แบตเตอรี่
ที่ใช้กันอยู่ทุกวันนี้มี 2 ชนิดคือ... ชนิด NICAD (Nickel Cadmium Cells) และชนิด HYDRIDE (Nickel Metal Hydride Cells)
สารประกอบที่ใช้ในถ่านชนิด NICAD จัดเป็นขยะอันตรายที่ก่อให้เกิดโทษกับสุขภาพของคน และเกิดมลพิษในสิ่งแวดล้อม เนื่องจาก
ขั้วลบของถ่านชนิดนี้เป็น "แคดเมียม ไฮดรอกไซด์" เมื่อบรรจุไฟแล้วจะกลายสภาพเป็นแคดเมียม เป็นสารก่อพิษในสิ่งมีชีวิตทุกชนิด
ในโลก แคดเมียมเป็นโลหะหนัก มีอยู่ในธรรมชาติแต่เป็นจำนวนน้อย ซึ่งหากร่างกายได้รับเข้าไปทีละน้อยจากการ หายใจ-กิน-ดื่ม ก็
จะเกิดพิษเรื้อรัง ทีละน้อย จนที่สุดอาจก่อให้เกิดอาการ... ระบบหายใจผิดปกติ ไตอักเสบ ไตวาย ข้อเสื่อม ถุงลมโป่งพอง และทำให้
เกิด มะเร็ง ในอวัยวะได้หลายชนิด "แคดเมียมที่ถูกทิ้งหรือปนเปื้อนเข้าใน ดิน-น้ำ หาก สัตว์ หรือ พืช รับเข้าไป เมื่อ คน กินสัตว์หรือ
พืชเข้าไปก็จะได้รับแคดเมียมสะสมเข้าไปในปริมาณที่เกิดพิษได้ง่าย" นิกเกิลกับแคดเมียมก็เป็นอีกสาเหตุ ที่ก่อให้เกิด
"โรคชนิดใหม่" ขึ้นมา ซึ่งกว่าจะรู้ตัวก็อาจสายไปเสียแล้ว และแม้ว่าบางบริษัทผู้ผลิตจะบอกว่าโทรศัพท์หรือแบตเตอรี่ทำมาจาก
"แมงกานีส" ซึ่งมีพิษน้อย จึงไม่เรียกคืน แต่แมงกานีสนี้ก็เป็นอันตรายต่อมนุษย์เหมือนกัน
สารโลหะหนักที่อยู่ในแบตเตอรี่ประกอบด้วย
          1. แคดเมียม ซึ่งหากสะสมในร่างกายในปริมาณถึงระดับหนึ่งก็จะก่อให้เกิดโรคไตวายได้ และเป็นสารที่ก่อให้เกิดมะเร็งโดย
การสูดดม
          2. ตะกั่ว เป็นสารก่อมะเร็ง และมีผลต่อระบบประสาทส่วนกลางระบบย่อยอาหาร ไต โลหิต หัวใจ การพัฒนาของทารกในครรภ์
          3. ลิเธียม ก่อให้เกิดการการระเคืองต่อจมูก ลำคอ ทำให้หายใจติดขัดถ้ากลืนกินเข้าไปจะมีฤทธิ์ กัดกร่อนทำให้เกิดอาการ
เจ็บคอ ปวดท้องและอาเจียนได้ ถ้าเข้าตาจะทำให้เกิดการระคายเคืองและอาจทำให้ตาบอด
          4. ทองแดง ทำให้เกิดการระคายเคืองต่อระบบหายใจ และเป็นอันตรายหากกลืนกิน
          5. นิเกิล เป็นสารก่อมะเร็ง เมื่อหายใจเข้าไปอาจทำให้เกิดอาการหอบหืด หลอดลมอักเสบ หายใจติดขัดและทำให้ผิวหนัง
อักเสบ และถ้ากลืนหรือกินเข้าไปอาจก่อให้เกิดอันตรายได้
วิธีใช้โทรศัพท์มือถืออย่างเหมาะสม
          1.ใช้อุปกรณ์แฮนด์ฟรีทุกครั้ง เพื่อให้โทรศัพท์มือถืออยู่ห่างจากสมอง
          2. ขณะที่มีสายเรียกเข้า ควรกดรับสายให้ห่างจากตัวสักพัก แล้วค่อยนำโทรศัพท์มาแนบหู เพราะขณะที่มีสายเรียกเข้าจะมี
คลื่นแม่เหล็กจากโทรศัพท์ ซึ่งเป็นพลังแรงมากที่สุด
          3. อย่าติดหรือแขวนโทรศัพท์ ติดตัวไว้ตลอดเวลา เพราะคลื่นรังสีจะแผ่มาถูกอวัยวะที่สำคัญ โดยเฉพาะกระดูกซึ่งมีไขกระดูก
ที่ทำหน้าที่สร้างเม็ดเลือดต่างๆ เช่น กระดูกเชิงกราน และกระดูกที่หน้าอก อาจทำให้มีผลกระทบต่อการสร้างเม็ดเลือดแดงและเม็ด
เลือดขาวได้
          4. ควรใช้โทรศัพท์มือถือให้น้อยที่สุดและไม่ควรใช้ติดต่อกันเป็นเวลานาน
          5. ควรเก็บมือถือให้มิดชิด จะได้ไม่เป็นที่ล่อตาล่อใจเหล่ามิจฉาชีพ

เลือดขาวได้
          4. ควรใช้โทรศัพท์มือถือให้น้อยที่สุดและไม่ควรใช้ติดต่อกันเป็นเวลานาน
          5. ควรเก็บมือถือให้มิดชิด จะได้ไม่เป็นที่ล่อตาล่อใจเหล่ามิจฉาชีพ
          1. หากใช้บริการแบบเหมาจ่าย ควรตั้งระบบจำกัดการโทรออก ให้อยู่ในงบที่ตั้งไว้
          2. หากใช้ระบบเติมเงิน ก็ควรเติมให้อยู่ในงบที่จำกัดและจัดสรรการโทรตามเวลาที่กำหนด
          3. ควรใช้มือถือเท่าที่จำเป็นเท่านั้น
          4. ควรรู้จักประหยัด ไม่สิ้นเปลืองเงินทองไปกับเกมส์และการโหลดริงโทน


โรคเห่อตามแฟชั่น นิยมเปลี่ยนมือถือไปตามแฟชั่นเพื่อให้อินเทรน ดูทันสมัย ไม่ตกรุ่น
วิธีง่ายๆ ที่ช่วยประหยัดงบไม่ให้บานปลาย
“ การใช้มือถืออย่างถูกวิธี จะช่วยยืดอายุการใช้งานและเป็นการประหยัดค่าใช้จ่ายได้อีกทางหนึ่ง ”

วันพุธที่ 17 ธันวาคม พ.ศ. 2557

ตัวอย่าง: คำสั่ง SELECT ที่ใช้ SQL descriptor ที่ถูกจัดสรรแล้ว

สมมติว่า แอ็พพลิเคชันของคุณจำเป็นต้องจัดการกับคำสั่ง SELECT แบบ dynamic เมื่อค่าหนึ่งเปลี่ยนเป็นอีกค่าหนึ่งสำหรับใช้ต่อไป คำสั่งนี้สามารถอ่านได้จากจอแสดงผล ซึ่งถูกส่งผ่านจากแอ็พพลิเคชันอื่น หรือถูกสร้างขึ้นจากแอ็พพลิเคชันของคุณแบบ dynamic

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

ยกตัวอย่างเช่น, คำสั่งต่อไปนี้จำเป็นจะต้องถูกประมวลผล:

   SELECT WORKDEPT, PHONENO
     FROM CORPDATA.EMPLOYEE
     WHERE LASTNAME = 'PARKER'
หมายเหตุ: คำสั่ง SELECT นี้ไม่มี INTO clause. คำสั่ง SELECT แบบ dynamic จะต้องไม่ มี INTO clause, ถึงแม้ว่าจะส่งค่าคืนมาเพียงแถวเดียว.
คำสั่งจะถูกกำหนดค่าให้กับตัวแปรโฮสต์. ตัวแปรโฮสต์, ในกรณีนี้มีชื่อว่า DSTRING, จะถูกทำการประมวลผลโดยใช้คำสั่ง PREPARE ตามที่ได้แสดงไว้ดังนี้:

EXEC SQL
PREPARE S1 FROM :DSTRING;
ขั้นถัดไป, คุณจำเป็นจะต้องหาค่าจำนวนของคอลัมน์ผลลัพธ์และชนิดของข้อมูล. หากต้องการทำสิ่งนี้, คุณจำเป็นต้องจัดสรรจำนวน entry ขนาดใหญ่สุดสำหรับ SQL descriptor ที่คุณคิดว่าคุณต้องการ. สมมติว่า มีคอลัมน์ไม่เกิน 20 คอลัมน์ถูกเรียกใช้โดยคำสั่ง SELECT เดียว.
EXEC SQL
ALLOCATE DESCRIPTOR 'mydescr' WITH MAX 20;
ถึงตอนนี้ descriptor จะถูกจัดสรร, คำสั่ง DESCRIBE สามารถเรียกใช้เพื่อรับข้อมูลคอลัมน์.
EXEC SQL
DESCRIBE S1 USING DESCRIPTOR 'mydescr';
เมื่อคำสั่ง DESCRIBE ถูกรัน, SQL จะใส่ค่าที่ได้เตรียมข้อมูลเกี่ยวกับรายการที่เลือกของคำสั่งเข้าไปใน SQL descriptor area ซึ่งถูกนิยามโดย 'mydescr'.

ถ้า DESCRIBE กำหนดว่า มี entry ไม่เพียงพอที่จะถูกจัดสรรใน descriptor, SQLCODE +239 จะถูกเรียกใช้. ส่วนหนึ่งของการวินิจฉัยนี้, การแทนที่ค่าข้อความที่สองจะบ่งชี้ถึงจำนวนของ entry ที่ต้องการ. ตัวอย่างโค้ดต่อไปนี้แสดงวิธีที่เงื่อนไขนี้สามารถตรวจพบ และแสดง descriptor ที่ถูกจัดสรรด้วยขนาดที่ใหญ่กว่า.
/* Determine the returned SQLCODE from the DESCRIBE statement */
EXEC SQL
  GET DIAGNOSTICS CONDITION 1: returned_sqlcode = DB2_RETURNED_SQLCODE;

if returned_sqlcode = 239 then do;

/* Get the second token for the SQLCODE that indicated
     not enough entries were allocated */

EXEC SQL
    GET DIAGNOSTICS CONDITION 1: token = DB2_ORDINAL_TOKEN_2;            
  /* Move the token variable from a character host variable into an integer host variable */
  EXEC SQL
    SET :var1 = :token;                            
  /* Deallocate the descriptor that is too small */
  EXEC SQL
    DEALLOCATE DESCRIPTOR 'mydescr';               
  /* Allocate the new descriptor to be the size indicated by the retrieved token */
  EXEC SQL
    ALLOCATE DESCRIPTOR 'mydescr' WITH MAX :var1;  
  /* Perform the describe with the larger descriptor */
  EXEC SQL
   DESCRIBE s1 USING DESCRIPTOR 'mydescr';        
end;           
ถึงตอนนี้ descriptor จะมีข้อมูล เกี่ยวกับคำสั่ง SELECT และคุณพร้อมที่จะดึงผลลัพธืของคำสั่ง SELECT ออกมา. สำหรับ SQL แบบ dynamic, คำสั่ง SELECT INTO จะไม่อนุญาตให้ใช้. คุณต้องใช้เคอร์เซอร์.
EXEC SQL
  DECLARE C1 CURSOR FOR S1;
คุณจะสังเกตว่า ชื่อคำสั่งที่ถูกจัดเตรียมจะถูกใช้ในการประกาศเคอร์เซอร์แทนการทำคำสั่ง SELECT ให้สมบูรณ์. ถึงตอนนี้ คุณสามารถวนซ้ำแถวที่เลือก, ประมวลผลแถวเหล่านั้นตามที่คุณอ่านได้. ตัวอย่างโค้ดต่อไปนี้แสดงถึงวิธีการทำสิ่งนี้.
EXEC SQL
  OPEN C1;

EXEC SQL
    FETCH C1 USING SQL DESCRIPTOR 'mydescr';
do while not at end of data;

 /* process current data returned  (see below for discussion of doing this) */

/* then read the next row */

 EXEC SQL
    FETCH C1 USING SQL DESCRIPTOR 'mydescr';
end;

EXEC SQL
  CLOSE C1;
เคอร์เซอร์ถูกเปิด. แถวที่เป็นผลลัพธ์จากคำสั่ง SELECT จะถูกส่งคืนมาครั้งละหนึ่งแถวโดยใช้คำสั่ง FETCH. ในคำสั่ง FETCH, จะไม่มีรายชื่อของตัวแปรโฮสต์อยู่. แทนที่จะเป็นเช่นนั้น, คำสั่ง FETCH จะบอกให้ SQL ส่งคืนผลลัพธ์เข้าไปใน descriptor area.

หลังจากประมวลผล FETCH แล้ว, คุณสามารถใช้คำสั่ง GET DESCRIPTOR เพื่ออ่านค่าเหล่านั้น. อันดับแรก, คุณต้องอ่านค่าส่วนหัวที่บ่งชี้ถึงจำนวน descriptor entry ที่ถูกใช้.
EXEC SQL
  GET DESCRIPTOR 'mydescr' :count = COUNT;
หลังจากนั้น คุณสามารถอ่านข้อมูลเกี่ยวกับ descriptor entry แต่ละตัว. หลังจากที่คุณกำหนดชนิดข้อมูลของคอลัมน์ผลลัพธ์แล้ว, คุณสามารถทำให้ GET DESCRIPTOR อื่นส่งคืนค่าที่เป็นจริง. หากต้องการรับค่าของตัวบ่งชี้, ให้ระบุไอเท็ม INDICATOR. ถ้าค่าของไอเท็ม INDICATOR เป็นลบ, ค่าของไอเท็ม DATA จะไม่ถูกนิยาม. จนกว่า FETCH อื่นจะถูกทำ, ไอเท็ม descriptor จะยังคงรักษาค่าเหล่านั้นไว้.
do i = 1 to count;
  GET DESCRIPTOR 'mydescr' VALUE :i  /* set entry number to get */
                         :type = TYPE,                    /* get the data type */
                         :length = LENGTH,                /* length value */
                         :result_ind = INDICATOR;           
 if result_ind >= 0 then
    if type = character
     GET DESCRIPTOR 'mydescr' VALUE :i
                        :char_result = DATA;       /* read data into character field */
    else
    if type = integer
       GET DESCRIPTOR 'mydescr' VALUE :i     
                        :int_result = DATA;       /* read data into integer field */
  else
      /* continue checking and processing for all data types that might be returned */
end;
มีไอเท็ม descriptor อื่นๆ หลายไอเท็มที่คุณอาจต้องการตรวจสอบ เพื่อกำหนดวิธีการจัดการกับข้อมูลผลลัพธ์. PRECISION, SCALE, DB2_CCSID, และ DATETIME_INTERVAL_CODE อยู่ระหว่างกัน. ตัวแปรโฮสต์ที่มีการอ่านค่า DATA เข้าไปในตัวแปรต้องมีชนิดข้อมูลเดียวกัน และ CCSID ต้องเป็นข้อมูลที่อ่านได้. ถ้าชนิดข้อมูลมีความยาวผันแปร, ตัวแปรโฮสต์จะถูกประกาศความยาวได้ยาวกว่าข้อมูลจริง. สำหรับชนิดข้อมูลอื่นๆ ทั้งหมด, ความยาวต้องตรงกัน.


NAME, DB2_SYSTEM_COLUMN_NAME, และ DB2_LABEL จะถูกใช้เพื่อรับค่าชื่อที่สัมพันธ์กันสำหรับคอลัมน์ผลลัพธ์. โปรดดู GET DESCRIPTOR สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไอเท็มที่ถูกส่งคืนสำหรับคำสั่ง GET DESCRIPTOR และสำหรับ definition ของค่า TYPE

ข้อสอบ O-NET วิชาคอมพิวเตอร์

ข้อสอบ คอมพิวเตอร์

คำสั่ง  ให้นักศึกษาเลือกคำตอบที่ถูกต้องที่สุด แล้วกากบาทลงในกระดาษคำตอบ


1.   ข้อใดไม่ใช่ ขั้นตอนหลักในการทำงานของคอมพิวเตอร์


   ก.  ประมวลผล            ข.  เก็บข้อมูล 

   ค.  รับข้อมูล               ง.  แสดงผลลัพธ์     

   จ.  นำข้อมูลเข้า 


2.  หน่วยข้อมูลที่เล็กที่สุดในระบบคอมพิวเตอร์เรียกว่า

   ก.  บิต                                  ข.  ไบต์ 

   ค. ฟิลด์                              ง.  เร็คคอร์ด

   จ. ไฟล์

3.  ข้อมูลเมื่อผ่านการประมวลผลแล้ว จะได้อะไร

   ก.  Document                ข.   Report

   ค.  Information            ง.  Output

   จ.  Database

4.  สัญญาณในคอมพิวเตอร์เป็นสัญญาณชนิดใด

   ก.  อนาล็อก               ข.  ดิจิตอล  

   ค.  ไฮบริค                  ง.  ไฟฟ้า

   จ. อิเล็กทรอนิกส์

5. สิ่งใดที่หุ่นยนต์ไม่สามารถทำได้

   ก.  การเปิดกล่องระเบิด            ข.  การเลือกผลไม้

   ค.  การก่อการร้าย                     ง.  การปอกเลือกไข่ต้ม 

   จ.  การเก็บกู้ระเบิด

6.  IP Address คือ

   ก.  หมายเลยประจำตัวเครื่องคอมพิวเตอร์ต่างๆ ที่เชื่อมต่ออยู่ในเครือข่าย

   ข.  โพรโทคอลที่ใช้ในการเชื่อมโยงเครือข่ายอินเทอร์เน็ต

   ค.  หมายเลขประจำของเครื่องเซิร์ฟเวอร์

   ง.  ที่อยู่บนอินเทอร์เน็ต

   จ. ถูกทุกข้อ


7. ข้อใดกล่าวถึง Protocol ได้ถูกต้อง

    ก.  การสืบค้นข้อมูลบนอินเทอร์เน็ต

    ข. การใช้เครื่องคอมพิวเตอร์ที่อยู่ห่างไกล

    ค.  การบริหารวารสารและข่าวสารบนอินเทอร์เน็ต

     ง. เครื่องมือที่ช่วยในการสืบค้นข้อมูลในรูปแบบเอกสาร

     จ.  ภาษาการสื่อสารระหว่างเครื่องคอมพิวเตอร์ในระบบอินเทอร์เน็ต


8.  ส่วนประกอบใดของโปรแกรม Internet Explorer ที่ทำหน้าที่แสดงที่อยู่ของเว็ปไซด์

    ก.  แถบชื่อ                       ข.  แถบสื่อสาร   

    ค.  แถบสถานะ               ง.  พื้นที่แสดงเว็บเพจ

    จ. แถบที่อยู่ของเว็บไซต์



9.   s15550036@student.rit.ac.th  ข้อความ “s1555036” หมายถึงข้อใด

    ก.  Domain Name            ข.  Password   

    ค.  Sub Domain                ง.  Username   

     จ.  ISP


10. ไฟล์ที่ถูกบีบอัดด้วยโปรแกรม WinZip จะมีส่วนขยายหรือนามสกุลไฟล์ตามข้อใด

   ก.  .doc               ข.  .zip 

   ค.  .com               ง.  .txt 

   จ.  .exe

วันพุธที่ 5 พฤศจิกายน พ.ศ. 2557

ระบบฐานข้อมูล

ระบบฐานข้อมูล 

       งานในองค์การไม่ว่าจะเป็นองค์การขนาดเล็ก ขนาดกลาง หรือขนาดใหญ่ ต่างก็ต้องมีข้อมูลของการทำงาน หรือข้อมูลทางธุรกิจในลักษณะต่าง ๆ  ซึ่งข้อมูลเหล่านั้นอาจมีทั้งข้อมูลพนักงาน ข้อมูลลูกค้า ข้อมูลที่เป็นความลับทางธุรกิจ เป็นต้น นอกจากนั้นข้อมูลขององค์การดังกล่าวยังอาจมีความสำคัญมากน้อยต่างกัน มีผู้ใช้ข้อมูลเฉพาะกลุ่ม หรือทุกกลุ่มได้ตามความจำเป็นและตามลำดับชั้นความลับ สิ่งสำคัญคือ ข้อมูลขององค์การหนึ่งย่อมมีความเกี่ยวข้องกันและควรที่จะนำมารวมไว้ใน ฐานข้อมูล” (Database)
 ความหมาย
        มีคำอธิบายความหมายของ ฐานข้อมูลอยู่มากมายหลายคามหมาย ตัวอย่างเช่น
        ฐานข้อมูลอาจถือได้ว่าเป็นตู้เก็บเอกสารอิเล็กทรอนิคส์ชนิดหนึ่ง เช่น  เป็นที่รวมหรือเป็นที่บรรจุแฟ้มข้อมูลคอมพิวเตอร์ชุดหนึ่ง เป็นต้น (A database can be regarded as a kind of electronic filing cabinet.)
        ฐานข้อมูลเป็นชุดของข้อมูลที่คงทน (Persistent Data) ซึ่งถูกเรียกใช้โดยระบบโปรแกรมของกิจการใดกิจการหนึ่ง (A database is a collection of persistent data that is used by the application systems of some given enterprise.) ข้อมูลจะคงทนอยู่ในฐานข้อมูลเพราะเมื่อระบบจัดการฐานข้อมูลรับข้อมูลนั้นเข้าสู่ฐานข้อมูลแล้ว ใครจะขจัดหรือเอาข้อมูลออกไปจากฐานข้อมูลได้ต้องมีการร้องขอต่อระบบจัดการฐานข้อมูลเท่านั้น ตัวอย่างข้อมูลที่คงทนในฐานข้อมูล เช่น 
           กิจการ                                                                               ข้อมูลคงทน
บริษัทผู้ผลิตสินค้า                                                                   ข้อมูลผลิตภัณฑ์
ธนาคาร                                                                                   ข้อมูลบัญชี
โรงพยาบาล                                                                            ข้อมูลผู้ป่วย
มหาวิทยาลับ                                                                           ข้อมูลนักศึกษา
หน่วยราชการ                                                                          ข้อมูลการวางแผน





เอ็นทิตี้ 
        คำว่า เอ็นทิตี้” (Entity) หมายถึง วัตถุใด ๆ ที่เราสามารถระบุ หรือแยกแยะออกจากกันได้ ซึ่งแทนอยู่ในฐานข้อมูล (An entity is any distinguishable object that is to be represented in the database.)

สัมพันธภาพ 
        คำว่า สัมพันธภาพ” (Relationship) บางที่เรียกว่า ความสัมพันธ์หมายถึง การเชื่อมโยงหรือความเกี่ยวข้องระหว่างเอ็นทิตี้ต่าง ๆ ซึ่งความสัมพันธภาพเป็นตัวเชื่อมโยงเอ็นทิตี้เหล่านั้นเข้าไว้ด้วยกัน (Relationship links those basic entities together.)

รูปแบบของฐานข้อมูล

รูปแบบของฐานข้อมูล 
        รูปแบบของฐานข้อมูล ในที่นี้หมายถึง ตัวแบบข้อมูล (Data Model) ของฐานข้อมูลชนิดต่าง ๆ ซึ่งมีผู้รู้คิดค้นขึ้นมา
        ก่อนอื่นเราควรต้องทราบความหมายของคำว่า ข้อมูลก่อน
        ข้อมูล คือ ข้อเท็จจริงที่ให้มา ซึ่งสามารถอนุมานข้อเท็จจริงเพิ่มเติมขึ้นมาได้ (“Data” refers to given facts from which additional facts can be inferred.)
         ข้อเท็จจริงที่ให้มา คือ ประพจน์ที่เป็นจริงเชิงตรรกศาสตร์ (“Given fact” is a logically true proposition.) ดังนั้น ความหมายฐานข้อมูลในมุมมองนี้ ก็คือ ชุดของประพจน์ที่เป็นจริงดังกล่าว (A database is a collection of such true propositions.)
        ตัวแบบข้อมูล เป็นคำจำกัดความเชิงตรรกะ เป็นนามธรรม บริบูรณ์ในตัวเอง ของวัตถุ ตัวกระทำทางคณิตศาสตร์ และ ฯลฯ ซึ่งรวมกันแล้วประกอบเข้าเป็นเครื่องจักรนามธรรมที่ผู้ใช้โต้ตอบได้ วัตถุดังกล่าวทำให้เราสามารถจำลองโครงสร้างข้อมูลได้ ส่วนตัวกระทำทางคณิตศาสตร์ทำให้เราสามารถจำลองพฤติกรรมของมันได้ (Data Model is an abstrach, self –contained, logical definition of the objects, operators, and so forth, that together constitute the abstract machine with which users interact. The objects allow us to model the structure of data. The operators allow us to model its behaviour.)
        ตัวแบบข้อมูล เป็นเหมือนภาษาในการเขียนโปรแกรม แม้ว่าค่อนข้างจะเป็นนามธรรม แต่โครงสร้างของมันสามารถใช้แก้ปัญหาได้ (Data Model is like a programming language-albeit one that is somewhat abstract – whose constructs con be used to solve problems.)

ตัวแบบข้อมูลมี 3 ประเภทที่สำคัญ คือ
  • ตัวแบบเชิงสัมพันธ์ (Relational Model)
  • ตัวแบบเครือข่าย (Network Model)
  • ตัวแบบลำดับชั้น หรือแตกสาขา(Hierarchic Model)
        1. ตัวแบบเชิงสัมพันธ์ (จะกล่าวถึงละเอียดในบทต่อไป) ผู้ใช้ทั่วไปจะมองเห็นตัวแบบเชิงสัมพันธ์ว่า คือ การเก็บข้อมูลเป็นตาราง (Table) หรือถ้าเรียกอย่างเป็นทางการตามทฤษฎีทางคณิตศาสตร์ก็คือ รีเลชั่น (Relation) นั่นเอง ลักษณะของตารางจะมี 2 มิติ คือ แถว (Row) และคอลัมน์ (Column)โดยเอ็นทิตี้ (Entity) ต่าง ๆ จะมีข้อมูลถูกนำมาจัดเก็บในลักษณะเป็นตาราง กล่าวคือ จะไม่มีแฟ้มข้อมูลแม่หรือแฟ้มข้อมูลลูก แฟ้มข้อมูลแต่ละส่วนเป็นอิสระต่อกัน ตัวอย่างผลิตภัณฑ์ระบบบริหารฐานข้อมูลเชิงสัมพันธ์เรียงตามลำดับอักษร ได้แก่
        DB2 (มีหลายรุ่น) ของบริษัท IBM Corp.
        Ingres II ของบริษัท Computer Associates International Inc.
        Informix Dynamic Server ของบริษัท Informix Software Inc.       
        Microsoft SQL Server ของบริษัท Microsoft Corp.           
        Oracle 8i ของบริษัท Oracle Corp.และ
        Sybase Adaptive Server ของบริษัท Sybase Inc.
        2.  ตัวแบบเครือข่าย บางที่เรียกว่า CODASYL Systems หรือ DBTG Systems ตามชื่อคณะทำงานที่เสนอแนะ กล่าวคือ กลุ่มงานฐานข้อมูลแห่งการประชุมว่าด้วยเรื่องภาษาระบบฐานข้อมูล(the Data Base Task Group of the conference on Data Systems Languages) ตัวอย่างเช่น ระบบ IDMS ของบริษัท Computer Associates International Inc. ตัวแบบเครือข่ายนี้ไม่ได้เกี่ยวข้องกับเรื่องการสื่อสารข้อมูล (Data Communication) แต่อย่างใด โดยตัวแบบนี้ในแง่การมองของผู้ใช้จะเป็นไปในรูปของการรวบรวม ระเบียนต่าง ๆ และความสัมพันธ์ระหว่างระเบียน ความแตกต่างที่เห็นได้ชัดเจนระหว่างตัวแบบเชิงสัมพันธ์และแบบเครือข่าย คือ ในตัวแบบเชิงสัมพันธ์จะแฝง (Implicit) การแสดงความสัมพันธ์เอาไว้ (หมายความว่า ระเบียนที่มีความสัมพันธ์กันจะต้องมีค่าของข้อมูลในเขตข้อมูลใด เขตข้อมูลหนึ่งเหมือนกัน) ส่วนการแสดงความสัมพันธ์ในตัวแบบเครือข่ายจะเป็นไปอย่างโจ่งแจ้ง (Explicit) คือ แสดงได้ในโครงสร้างอย่างชัดเจน ตัวอย่างเช่น
                                                                                                                                         



        ในรูปจะเห็นว่า กรอบสี่เหลี่ยมแสดงถึงชนิดของระเบียนในฐานข้อมูลซึ่งจะมี 1 อันต่อ 1 Entity เครื่องหมายลูกศรแสดงถึงความสัมพันธ์ ซึ่งในรูปนี้แสดงความสัมพันธ์แบบหนึ่งต่อกลุ่ม โดยที่หัวลูกศรจะออกจากส่วนของ หนึ่งไปยังส่วนของ กลุ่ม
        วิธีการค้นหาข้อมูลที่ต้องการ จะใช้หัวลูกศรเป็นแนวทาง ซึ่งอาจวิ่งทวนทิศทางกับหัวลูกศรก็ได้ เช่น ถ้าต้องการแสดงรายชื่อของอาจารย์ที่ทำงานอยู่แผนกวิชาที่ 4 ก็เริ่มด้วยการออกคำสั่งแก่ระบบจัดการฐานข้อมูลไห้ค้นหาแผนกที่ 4 ก่อน จากระเบียนของแผนกวิชา จากนั้นให้วิ่งตามลูกศรซึ่งจะเชื่อม (Link) ข้อมูลของแผนกที่ 4 นี้เข้ากับข้อมูลในส่วนของอาจารย์ ซึ่งได้แก่บรรดาระเบียนของอาจารย์ที่ทำงานอยู่แผนกที่ 4 สังเกตว่า ในการค้นหานี้เราจะค้นโดยใช้ลูกศร หรือทางเชื่อมในการโยงความสัมพันธ์ ดังนั้นเราจึงไม่จำเป็นต้องเก็บเขตข้อมูลรหัสแผนกไว้ในระเบียนของอาจารย์อย่างในตัวแบบเชิงสัมพันธ์
     1.ตัวแบบแตกสาขา หรือตัวแบบลำดับ ตัวแบบนี้พัฒนาขึ้นโดยไอบีเอ็ม เมื่อปี พ.ศ. 2511 ตัวอย่างเช่น ระบบ IMS ของ IBM มีความสัมพันธ์ระหว่างแฟ้มข้อมูลเป็นระดับชั้นหรือตามอาวุโส แฟ้มข้อมูลจะมีตำแหน่งจากบนลงล่าง โดยแฟ้มที่อยู่ในระดับที่สูงกว่าจะเป็นแม่ของแฟ้มที่อยู่ในระดับต่ำกว่า ข้อสังเกต คือ แฟ้มหนึ่งจะมีแฟ้มข้อมูลลูก (Child File) ได้หลายแฟ้ม ขณะที่แฟ้มลูกจะมีแฟ้มแม่เพียงแฟ้มเดียว เมื่อมองในลักษณะนี้จะเห็นว่าตัวแบบนี้มีโครงสร้างเหมือนต้นไม้ (Tee) ซึ่งอันที่จริงตัวแบบนี้คล้ายแบบเครือข่าย แต่ต่างกันตรงที่ ตัวแบบแตกสาขามีกฎเกณฑ์เพิ่มขึ้นมาอีก 1 ข้อ คือ ในแต่ละกรอบจะมีหัวลูกศรวิ่งเข้าหาได้ไม่เกิน 1 หัว จากตัวอย่างในภาพของตัวแบบเครือข่าย จะเห็นว่ากรอบอาจารย์มีลูกศรเข้ามา 2 ทาง ดังนั้น เราจะสร้างฐานข้อมูลเดียวกันนี้ด้วยตัวแบบแตกสาขาไม่ได้ แต่ต้องเปลี่ยนแปลงให้เหมาะสม เช่น

        นอกจากนั้น ยังมีลักษณะอีกประการหนึ่งที่สองตัวแบบหลังนี้แตกต่างจากตัวแบบเชิงสัมพันธ์ ก็คือ ในตัวแบบลำกับชั้น และตัวแบบเครือข่ายนั้น จะมีการใช้ตัวชี้  (Pointers) เพื่อแทนเส้นทางขึ้นลงไปตามแผนภาพต้นไม้สำหรับตัวแบบลำดับชั้น และแทนเส้นทางเชื่อมต่อในแผนภาพเครือข่ายของตัวแบบเครือข่าย แต่ในตัวแบบเชิงสัมพันธ์จะไม่มีการเกี่ยวข้องกับตัวชี้ดังกล่าวเลย (C.J. Date, 2000, p. 26)
        นอกจากตัวแบบทั้ง 3 ดังกล่าวแล้ว เมื่อไม่นานมานี้เริ่มมีผลิตภัณฑ์ระบบบริหารฐานข้อมูลแบบใหม่ปรากฏขึ้นมาบ้าง คือ
  • ระบบบริหารฐานข้อมูลเชิงวัตถุ (Object DBMS) เช่น Gemstone ของบริษัท Gemstone Systems Inc.และ Versant ODBMS ของบริษัท Versant Object Technology
  • ระบบบริหารฐานข้อมูลแบบผสมระหว่างเชิงวัตถุและเชิงสัมพันธ์ (Object/Relational DBMS) ตัวอย่างเช่น DB2 และ Informix

ในตำราเล่มนี้จะไม่กล่าวถึงระบบฐานข้อมูลเชิงวัตถุ (Object-oriented Database Systems)
ไปกว่านี้ แม้ว่าจะจัดเป็นตัวแบบหนึ่งของระบบฐานข้อมูล เนื่องจากเป็นเรื่องที่ยังใหม่และอยู่นอกเหนือขอบเขต
ระบบฐานข้อมูล
        ระบบฐานข้อมูล (Database System) เป็นคำประสมระหว่างคำว่า ระบบ” (System) กับคำว่า ฐานข้อมูล” (Database) มีความหมายและองค์ประกอบดังต่อไปนี้