เฉลยคำถามท้ายบท [5]


Home Page  |   รายการบทความ   |   ลิงค์ที่เกี่ยวข้อง   |   laploy.com  |  เกี่ยวกับผู้เขียน

 

เฉลยคำถามท้ายบท [5]

บทที่ 22

1. คำว่า Store Procedure เขียนและอ่านโดยย่อว่าอย่างไร

เขียนย่อว่า SProc อ่านว่า "สพร็อกซ์"

2. สพร็อกซ์คืออะไร

คิวรีที่เก็บไว้ในฐานข้อมูลเพื่อให้เรียกใช้งานได้ตลอดเวลา

3. SSMS คืออะไร

โปรแกรม Microsoft SQL Server Management Studio

4. SSMS ปรกติจะถูกติดตั้งไว้ในโฟลเดอร์ใด

C:\Program Files\ Microsoft SQL Server\ 100\ Tools\ Binn\ VSShell\ Common7\ IDE\

5. Windows Authentication คืออะไร

ระบบกำหนดสิทธิของวินโดวส์เพื่อลงชื่อเข้าใช้งาน

6. AdventureWorks คืออะไร

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

7. ไอคอน Programmability คืออะไร

เป็นไอคอนในหน้าจอ Object Explorer ของ SSMS มีหน้าที่เก็บรายการสิ่งต่างๆ ที่เกี่ยวข้องกับการสร้างโปรแกรม

8. โปรแกรม SSMS จะบันทึกคิวรีใหม่ไว้เป็นแฟ้มชั่วคราวที่โฟลเดอร์ใด

C:\Documents and Settings\user\Local Settings\Temp

9. ปุ่มที่มีรูปเครื่องหมายตกใจสีแดงทำหน้าที่อะไร

รันคิวรี

10. หากไม่บันทึกแฟ้มคำสั่งสร้างสพร็อกซ์นี้ไว้ในฮาร์ดดิสก์จะเป็นอย่างไร

ไม่เป็นอย่างไร ถึงไม่ได้บันทึกไว้ สพร็อกซ์ที่ถูกสร้างขึ้นแล้วก็จะยังอยู่ในฐานข้อมูลไม่ได้หายไปไหน

11. จะเรียนใช้สพร็อกซ์ได้จากที่ใด

สามารถเรียกใช้สพร็อกซ์ที่สร้างไว้จากคิวรีใดๆ ก็ได้

12. คำสั่ง use ใช้ทำอะไร

ทำหน้าที่ระบุฐานข้อมูลที่ท่านต้องการติดต่อ

13. ใช้วิธีการใดแทนคำสั่ง USE ได้

ใช้วิธีระบุเส้นทางเต็มหรือชื่อเต็ม (fully qualified name)

14. อะไรคือ MSVC#

Microsoft Visual C# 2008 Express Edition (หรือเวอร์ชันอื่นๆ)

15. DataGridView คืออะไร

คอนโทร์ลในวินฟอร์มทำหน้าที่แสดงข้อมูลจากฐานข้อมูล

16. พารามิเตอร์มีประโยชน์อย่างไร

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

 

บทที่ 23

1. Loose Coupling คืออะไร

ระบบงานสองระบบที่เป็นอิสระต่อกัน แต่มีความสัมพันธ์ต่อกันอย่างหลวมๆ

2. hard code คืออะไร

การอ้างถึงชื่อตาราง คอลัมน์ และออพเจ็กต์ดาต้าเบสอื่นๆ ในโค้ดโดยตรง

3. hard code มีข้อเสียอย่างไร

หากมีการเปลี่ยนแปลงโครงสร้างของดาต้าเบส ผลกระทบจะลามไปทั่วโปรแกรม

4. สพร็อกซ์มีความชื่อถือได้เพราะอะไร

เพราะปรกติคนสร้างสพร็อกซ์จะเป็นเจ้าหน้าที่ผู้ชำนาญฐานข้อมูล

5. สพร็อกซ์ปรับแต่งง่ายเพราะอะไร

เพราะคิวรีทั้งหลายรวมอยู่ในที่เดียวกันภายในฐานข้อมูล

6. การตั้งชื่อสพร็อกซ์ควรทำอย่างไร

ควรใช้วิธีเขียนแบบปาสคาล

7. การแก้ไขสพร็อกซ์ทำได้โดยใช้คำสั่งอะไร

ALTER PROC

8. การ CREATE และ DROP สพร็อกส์ต่างจากการใช้คำสั่ง ALTER PROC อย่างไร

การ CREATE และ DROP จะทำให้สถานะสิทธิและความสัมพันธ์กับออพเจ็กต์อื่นของสพร็อกซ์หายไป ขณะที่การแก้ไขสพร็อกซ์ด้วยคำสั่ง ALTER PROC ความสัมพันธ์ต่างๆ จะยังคงอยู่

9. พารามิเตอร์ของสพร็อกซ์คืออะไร

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

10. อินพุตพารามิเตอร์มีประโยชน์อย่างไร

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

11. เอาท์พุตพารามิเตอร์มีประโยชน์อย่างไร

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

12. หากต้องการให้สพร็อกซ์คืนค่าผลลัพธ์ที่เป็นสองค่าหรือมากกว่าจะทำได้อย่างไร

ใช้อินพุตพารามิเตอร์หลายๆ ตัว

13. คำสั่ง RETURN ใช้ทำอะไร

เพื่อบังคับให้สพร็อกซ์จบการทำงานและส่งค่ากลับเพื่อยืนยันความสำเร็จของการทำงานของสพร็อกซ์

14. ตัวแปร @@ERROR ทำหน้าที่อะไร

ทำหน้าที่เก็บข้อมูลสถานะความผิดพลาดที่เกิดขึ้นในการทำคิวรี

15. พบความผิดพลาด SQL2008 จะทำอย่างไร

แสดงข้อความแจ้งสิ่งผิดพลาดแล้วทำงานคำสั่งบรรทัดที่เหลือต่อไป

 

บทที่ 24

1. UDF คืออะไร

User-Defined Function ฟังก์ชันที่ผู้ใช้นิยามเอง

2. BF คืออะไร

Build-in Function ฟังก์ชันฝังตัวเป็นฟังก์ชันที่มีอยู่ภายใน SQL2008

3. RS คืออะไร

Row Set แถวข้อมูลผลลัพธ์ที่ได้จากคิวรี

4. การนิยาม UDF ทำได้โดยใช้ภาษาอะไร

ภาษา T-SQL และภาษา CLR เช่น C# และ VB.NET

5. การใช้ UDF ช่วยให้คิวรีทำงานได้เร็วขึ้นเพราะอะไร

เพราะ SQL2008 สามารถทำแคชและวางแผนการทำออพติไมซ์ต่อ UDF ล่วงหน้าได้ ไม่ต้องทำแคชและออพติไมซ์ทุกครั้งที่เรียกใช้งาน

6. UDF จะมีคำสั่งแบบใดไม่ได้

คำสั่งแบบ DML คือ INSERT, UPDATE และ DELETE

7. DF และ NDF คืออะไร

Deterministic Function ฟังก์ชันแบบคืนค่าตายตัว Non-Deterministic Function ฟังก์ชันแบบคืนค่าไม่ตายตัว

8. UDF จะต้องคืนค่าเป็นอะไร

เป็นสเกลลาร์หรือตาราง

9. เมื่อเกิดเออเรอร์ UDF จะทำอะไร

จะหยุดการทำงาน

10. UDF ทำคำสั่ง DML ได้กับอะไร

ทำได้กับตารางเทียม

11. SF คืออะไร

Scalar Functions ฟังก์ชันแบบสเกลาร์

12. การตั้งชื่อฟังก์ชันควรใช้แบบใด

แบบคาเมลโนเตชัน

13. การหาค่ายกกำลังสองใช้ฟังก์ชันอะไร

POWER

14. คำสั่ง RETURN ทำหน้าที่อะไร

ส่งผลลัพธ์ของการคำนวณกลับไปให้ผู้เรียกใช้

15. UDF ถูกเก็บไว้ที่ใด

ภายใต้หัวข้อ Programmability / Functions / Scalar-valued Functions

16. พารามิเตอร์ของ UDF แตกต่างจาก Sproc อย่างไร

หาก Sproc ไม่ต้องการพารามิเตอร์ท่านไม่ต้องใส่วงเล็บไว้ในทั้งในนิยามและเมื่อเรียกใช้ ส่วน UDF แม้ไม่ต้องการพารามิเตอร์ก็ต้องใส่วงเล็บว่างๆ ไว้ทั้งในนิยามและตอนเรียกใช้ด้วย

17. ฟังก์ขันแฟกทอเรียลคืออะไร

คือฟังก์ชันที่ให้ผลคูณของสมาชิกทั้งหมดที่น้อยกว่าหรือเท่ากับ n เมื่อ n มากกว่าศูนย์

18. SQL2008 จำกัดการรีเคอร์ซีฟของ UDF ไว้เท่าใด

32 ระดับ

19. SQL2008 จำกัดการรีเคอร์ซีฟของ CTE ไว้เท่าใด

100 ระดับ

20. TVF คืออะไร

Table-Valued Function ฟังก์ชันที่ให้ค่าเป็นตาราง

21. ตัวแปรท้องถิ่นของฟังก์ชันมี scope อย่างไร

มีชีวิตอยู่เพียงแค่ภายในฟังก์ชันนี้เท่านั้น

22. คำสั่ง CROSS APPLY ใช้ทำอะไร

มีไว้เพื่อให้จอยตารางจริงกับ TVF ได้

23. ITVF คือะไร

Inline Table-Valued Function เป็น UDF ซึ่งทำหน้าที่เหมือนวิวแบบมีพารามิเตอร์

24. เมื่อนิยาม UDF ด้วยภาษา C# จะสามารถสร้าง UDF ได้กี่แบบ

สี่แบบ คือ สเกลาร์, TVF, ITVF และแอกริเกต

 

บทที่ 25

1. รายงานแบบ tabular คืออะไร

คือรายงานที่แสดงเป็นตารางมีคอลัมน์และแถวเหมือนข้อมูลที่ได้จากการคิวรี

2. นอกจากรายงานแบบ tabular แล้ว SSRS ยังสามารถสร้างรายงานแบบใดได้อีก

รายงานแบบ Matrix ซึ่งจะมีลักษณะคล้าย Pivot table ในโปรแกรม Excel และ List ที่ใช้เพื่อแสดงรายละเอียดของข้อมูลหนึ่งชิ้น

3. FULL JOIN ทำงานอย่างไร

นำข้อมูลจากสองตารางมาจอยกันโดยเอาทั้งแถวที่สัมพันธ์กันและไม่สัมพันธ์กัน

4. โซลูชัน (solution) คืออะไร

ที่เก็บโครงการระดับสูงสุด

5. Project types สำหรับการสร้างรายงาน SSRS คืออะไร

Business Intelligence Projects

6. วิธีตรวจสอบว่าขณะนี้โปรเจ็กต์มีข้อมูล ไฟล์ หรือออพเจ็กต์อะไรบ้างทำได้อย่งไร

ทำได้โดยเปิดดูในโซลูชันเอ็กซ์พลอเรอร์ (Solution Explorer ย่อ SE) โดยการกดปุ่ม Ctrl+Alt+L

7. RDF คืออะไร

Report Definition File ไฟล์สำหรับเก็บนิยามรายงาน

8. DS คืออะไรใช้ทำอะไร

Data Source ดาต้าซอร์ส ทำหน้าที่เป็นตัวเชื่อมต่อกับดาต้าเบสเซอฟเวอร์ โดยเก็บข้อกำหนดว่าดาต้าเบสเซอร์เวอร์ชื่ออะไรอยู่ที่ไหน มีชื่อและรหัสผ่านอะไร

9. DTS คืออะไรใช้ทำอะไร

Data Set ดาต้าเซต หน้าที่กำหนดคิวรีที่จะใช้กระทำกับฐานข้อมูล

10. DR คืออะไร

Data Region ดาต้ารีเจียน เป็นองค์ประกอบของรายงานทำหน้าที่กำหนดขอบเขตการแสดงข้อมูล

11. Tablix คืออะไร

ย่อจาก Table + Matrix เป็นคำเรียกรวมๆ ของ Table, Matrix, Chart และ List

12. Preview คืออะไร

คือการสร้างหรือเรนเดอร์ (render) รายงานแบบด่วน โดยไม่ส่งผลลัพธ์ขั้นสุดท้ายออกไปที่เซอฟเวอร์ หรือที่เรียกว่าการทำดีพลอย (deploy) แต่จะเพียงแสดงให้ดูภายในโปรแกรม MSVS2008

 

บทที่ 26

1. BI คืออะไร

บิสิเนสอินเทลิเจนส์ (Business intelligence ย่อ BI) หมายถึงเทคโนโลยีหรือโปรแกรมประยุกต์หรือวิธีปฏิบัติเพื่อการรวบรวม วิเคราะห์ และนำเสนอสารสนเทศทางธุรกิจโดยมีจุดมุ่งหมายเพื่อให้การทำธุรกิจมีประสิทธิภาพสูงขึ้น เป็นเครื่องมือให้ผู้บริหารใช้ช่วยในการตัดสินใจ

2. Server Farm คืออะไร

การนำคอมพิวเตอร์ซึ่งทำหน้าที่เป็นผู้ให้บริการหรือเซอฟเวอร์มาต่อเชื่อมกันเป็นจำนวนมาก

3. Crystal Report คืออะไร

เป็นโปรแกรมประยุกต์แบบ BI จากบริษัท Business Object

4. ใน SQL2008 มีส่วนที่เกี่ยวข้องกับ BI โดยตรงกี่ส่วน อะไรบ้าง

Integration services (SSIS) ทำหน้าที่รวบรวมข้อมูลจากหลายๆ แหล่งเพื่อนำมาสังเคราะห์ให้อยู่ในรูปแบบที่นำไปใช้ได้อย่างมีประสิทธิภาพ , Analysis services (SSAS) ใช้สร้าโมเดลสำหรับการวิเคราะห์ข้อมูลเช่น Cube และ Subspace และ Reporting services (SSRS) ใช้สร้างรายงานแบบ OLAP

5. รายงานแบบ OLAP คืออะไร

คือการวิเคราะห์ข้อมูลแบบออนไลน์ (Online Analytical Processing) ไม่ใช่แค่รายงานตายตัวแบบในกระดาษ แต่เป็นรายงานที่มีพลวัตและมีหลายมิติ

6. OLTP คืออะไร

การทำธุรกรรมออนไลน์ (Online Transaction Processing)

7. ฐานข้อมูล OLAP ต่างจาก OLTP หรือไม่อย่างไร

ฐานข้อมูลของงาน OLTP จะมีขนาดเล็กกว่าและมีพลวัตสูง ส่วนฐานข้อมูลของ OLAP จะมีขนาดใหญ่กว่ามากและมีพลวัตต่ำหรือถึงกับไม่มีเลย

8. SSRS มีสถาปัตยกรรมแบบใด

multi-tier

9. อะไรคือ presentation tier ของ SSRS

เว็บเบราว์เซอร์ หรือแอพลิเกชันที่ท่านพัฒนาเองและโปรแกรมจากผู้พัฒนารายที่สาม

10. SSIS คืออะไร

คือ Integration services

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

11. SSAS คืออะไร

Analysis services ใช้สร้าโมเดลสำหรับการวิเคราะห์ข้อมูลเช่น Cube และ Subspace

12. RDL คืออะไร

Report Definition Language คือภาษาเพื่อการนิยามรายงาน เป็นภาษาแบบ XML ที่ไมโครซอฟต์สร้างขึ้นเพื่อใช้กับ SSRS โดยเฉพาะ ไม่ใช่ภาษาโปรแกรมมิ่งอย่างภาษา C# แต่เป็นภาษาที่เน้นการใช้แท็ก (tag) เพื่อการพรรนนาการจัดหน้ารายงาน

13. วิธีสร้างและแก้ไข RDL ทำได้อย่างไร

ใช้ NotePad ก็ได้ แต่ถ้าจะให้ดีควรใช้ MSVS2008 เพราะสะดวกกว่ามาก

14. ในการใช้งานจริง (production environment) ของ SSRS ควรใช้คอมพิวเตอร์อย่างน้อยกี่เครื่อง

สี่

15. การ Build รายงานคืออะไร

การคอมไพล์และการสร้างแอสเซมบลีที่ทำให้รายงานอยู่ในสภาพที่เปิดดูได้

16. ดีพลอยคืออะไร

การโยกย้ายไฟล์ผลลัพธ์ไปใส่ไว้ใน VD ของรายงาน

17. Credential คืออะไร

การกำหนดชื่อและรหัสผ่านในระบบรักษาความปลอดภัย

18. on-demand report คืออะไร

การสร้างรายงานสดเมื่อผู้ใช้เรียกดู

19. Sanpshot คืออะไร

การสร้างรายงานโดยเรนเดอร์เป็น HTML เก็บไว้แสดงเมื่อผู้ใช้เรียกดูรายงานได้โดยไม่ต้องรันคิวรีและเรนเดอร์รายงานอีก

20. แคชและ Snapshot แตกต่างกันหรือไม่อย่างไร

แตกต่างกัน เมื่อแคชหมดอายุแล้ว SSRS จะสร้างแคชใหม่ก็ต่อเมื่อมีผู้เรียกใช้ ส่วน Snapshot จะถูกสร้างใหม่โดยอัตโนมัติตามเวลาที่กำหนดไว้แม้จะไม่มีผู้ใช้งาน

 

บทที่ 27

1. RDG คืออะไร

Report Data Group การจัดกลุ่มของข้อมูลในรายงาน

2. การสร้าง RDG คืออะไร

คือการกำหนดวิธีผูกโยงกลุ่มของข้อมูลระหว่าง DR กับ DTS

3. การทำ RDG ซ้อนกันคืออะไร

คือการแบ่งหมวดหมู่ย่อย โดย RDG แต่จะชั้นจะจัดกลุ่มข้อมูลในรายงานหนึ่งช่วง

4. RGP คืออะไร

Row Group Pane คือที่เก็บกลุ่มแถว

5. CGP คืออะไร

Column Group Pane คือที่เก็บกลุ่มคอลัมน์

6. GH คืออะไร

Group Hierarchy กรุ๊พไฮราคี คือลำดับชั้นของกลุ่ม

7. PG คืออะไร

Parent Group กลุ่มแม่ คือกลุ่มบนสุดของ RGP

8. CG คืออะไร

Child Group กลุ่มลูก คือกลุ่มที่อยู่ใต้ PG

9. Tablix แบบมีข้อมูลวิ่งทั้งสองแกนมีอะไรบ้าง

เช่น เมทริกซ์ (Matrix) หรือชาร์ท (Chart)

10. DD คืออะไร

Drill Down รายงานที่ยืดหดได้

11. การกำหนดค่าโดยปริยายของพารามิเตอร์มีประโยชน์อย่างไร

เมื่อผู้ใช้เปิดดูรายงาน SSRS จะเรนเดอร์รายงานโดยใช้ค่าโดยปริยายทันที หากไม่ได้กำหนดค่าโดยปริยายเมื่อผู้ใช้เปิดดูรายงานจะพบรายงานที่ว่างเปล่า ผู้ใช้ต้องป้อนค่าให้แก่พารามิเตอร์แล้วกดปุ่ม View Report ก่อน SSRS จึงจะสามารถเรนเดอร์รายงานได้

12. DF คืออะไร

Data Filtering ตัวกรองข้อมูล ใช้คัดกรองแถวบรรทัดที่ไม่ต้องการออกให้เหลือเฉพาะข้อมูลที่ต้องการนำเสนอ

13. DM คืออะไร

Document Map แผนที่ของเอกสาร มีลักษณะเหมือนสารบัญ เป็นเครื่องช่วยให้ผู้ใช้สามารถท่องไปในรายงานได้ง่าย

14. DT คืออะไร

Drill Through รายงานแบบ เชื่อมโยง คือรายงานที่ท่านกำหนดให้บางคอลัมน์เป็นตัวเชื่อมโยงไปยังรายงานอื่น เช่นรายงานแม่มีจุดเชื่อมโยง (Hyper link ไฮเปอร์ลิงค์) ไปยังรายงานลูก

15. คำสั่ง Immediate IF มีวากยสัมพันธ์อย่างไร

Iif(นิพจน์เงื่อนไข, นิพจน์1, นิพจน์2)

16. RP คืออะไร

Report Processor ตัวประมวลผลรายงาน

17. BIC คืออะไร

Built-in Collection หรือ Build-in Fields คอลเลคชันภายใน

18. ACG คืออะไร

Adjacent Column Group กลุ่มแบบคอลัมน์ข้างเคียง

19. ริกซ์ คิวรีของแผนภูมิควรจะเน้นอะไร

เน้นข้อมูลแบบแอกริเกตซึ่งเป็นข้อมูลสรุป ไม่ใช่คิวรีที่ให้ข้อมูลรายละเอียด

20. SDS คืออะไร

Shared Data Sources แชร์ดาต้าซอร์ส คือการสร้าง DS อันเดียวแล้วใช้ร่วมกันจากทุกๆ รายงาน

21. Custom Code คืออะไร

คือการเขียนโค้ดฝังไว้ภายในไฟล์รายงาน แต่มีข้อจำกัดว่าต้องเขียนด้วยภาษา VB.NET เท่านั้น วิธีนี้เหมาะกับโค้ดที่ใช้เฉพาะในรายงานหนึ่งๆ

22. Custom Assembly คืออะไร

คือการโค้ดเขียนด้วยภาษา C# (หรือภาษาอะไรก็ได้ที่เป็น CLR) เป็นการเขียนโค้ดไว้ภายนอก (ต้องทำเป็นไฟล์ .dll แบบดอตเน็ตแอสเซมบลี ไม่ใช่ .dll ที่เป็น COM/COM+ แบบใน Win32API) วิธีนี้เหมาะกับโค้ดที่ใช้ได้กับรายงานหลายๆ ตัว

23. การทำ Deployment ตัว CA ทำได้อย่างไร

ทำได้โดยคัดลอกไฟล์ CA ไปใส่ในโฟลเดอร์ที่กำหนด โฟลเดอร์นี้เป็นโฟลเดอร์ที่เก็บโปรแกรม SSRS หากท่านยอมรับค่าปริยายเมื่อติดตั้ง โฟลเดอร์นี้คือ C:\Program Files\ Microsoft SQL Server2008\ MSRS10.LOYSQL2008\ Reporting Services\ ReportServer\ bin

 

บทที่ 28

1. ภาษาอะไรที่ไมโครซอฟท์สร้างขึ้นเพื่อ .NET โดยตรง

C# เปรียบเหมือนภาษาพื้นเมือง (native language) ของ .NET

2. ความแตกต่างสำคัญระหว่าง Java Platform กับ .NET Framework คืออะไร

ใน .NET มีภาษาให้เลือกใช้มากกว่า 30 ภาษา ขณะที่ Java platform มีภาษาให้เลือกใช้เพียงเพียงภาษาเดียว (ภาษา Java)

3. assembly คืออะไร

assembly หมายถึงไฟล์ทั้งหมดใน project (ทั้งโค้ดและข้อมูล) ถูกคอมไพล์อัดรวมอยู่เป็นไฟล์เพียงไฟล์เดียว

4. assembly จะบรรจุโค้ดภาษาอะไร

MSIL

5. MSIL คืออะไร

Microsoft Immediate language หรือ MSIL คือภาษาระดับกลางที่ไมโครซอฟต์สร้างขึ้นเพื่อใช้ใน .NET Framework คล้ายไบต์โค้ดของจาวา

6. garbage collector คืออะไร

กลไกของ .NET Framework ตัวหนึ่งหน้าที่ “เวนคืน” พื้นของหน่วยความจำบริเวณนั้น ทำให้หน่วยความจำเป็นอิสระเพื่อให้ CLR นำไปใช้จัดสรรให้ออพเจ็กต์อื่นๆ ที่ถูกสร้างขึ้นใหม่ต่อไป

7. JIT คืออะไร

Just In Time compiler เป็นโปรแกรมทำหน้าที่แปลภาษา MSIL ให้เป็นภาษาเครื่อง

8. CAS คืออะไร

Code Access Security รักษาความปลอดภัย CLRR เพื่อกำหนดว่ารูทีนใดมีสิทธิเข้าถึงส่วนใดของฐานข้อมูลได้บ้าง

9. ควรใช้ CLRR เมื่อใด

เมื่อต้องการเขียนโปรแกรมคำนวณหรือตัดสินใจในตรรกะที่ซับซ้อน หรือง่านอื่นๆ ที่ทำด้วยภาษา T-SQL ไม่ได้ หรือทำได้ยาก

10. คอมโพเนนท์ทั้งหมดที่จำเป็นต้องใช้สร้าง CLRR อยู่ที่ใดชื่ออะไร

อยู่ในเบสคลาสของ .NET Framework ชื่อแอสเซมบลีคือ system.data.dll ซึ่งอยู่ใน GAC (Global Assembly Cache) และอยู่ในโฟลเดอร์ <windir> \ Microsoft.NET \ Framework \ <version>

11. CLRR คืออะไร

Common Language Runtime Routine โปรแกรมที่สร้างด้วยภาษา C# เพื่อใช้งานใน SQL2008

12. ฟังก์ชัน T-SQL ที่ให้ค่าเดี่ยวเทียบได้กับ CLRR แบบใด

เมธอดแบบ public static

13. ฟังก์ชัน T-SQL ที่ให้ค่าเป็นตารางเทียบได้กับ CLRR แบบใด

เมธอดแบบ public static

14. ไทป์ที่ผู้ใช้นิยามเองใน SQL2008 เทียบได้กับ CLRR แบบใด

คลาสหรือ structure

15. เมื่อสร้าง CLRR แบบสพร็อกซ์แล้วก่อนจะนำไปใช้งานได้ท่านจะต้องทำอย่างไร

ลงทะเบียนมันภายใน SQL2008

16. ตัวแปลภาษา C# และ VB.NET ของ SQL2008 อยู่ที่ใด

อยู่ในเส้นทางโฟลเดอร์ C:\<windir>\Microsoft.NET\Framework\<version>

17. ท่านต้องทำอะไรเพื่อให้วินโดวส์หาตัวแปลภาษาเจอเมื่อท่านทำงานอยู่ในโฟลเดอร์อื่น

ต้องใส่ตำแหน่งที่อยู่ของตัวแปลภาษาไว้ในรายการ “ตัวแปรระบบที่ระบุสภาพแวดล้อม” (Environment System Variable ย่อ ESV)

 

บทที่ 29

1. UDA คืออะไร

User Defined Aggregate ฟังก์ชันแบบเอกริเกตที่ผู้ใช้นิยามขึ้นเอง

2. CRC คืออะไร

CLR Related Command คำสั่งที่เกี่ยวข้องกับ CLR

3. NFA คืออะไร

.NET Framework Assembly ดอตเน็ตเฟรมเวิร์คแอสเซมบลี

4. คำสั่งเกี่ยวกับการลงทะเบียน CLRR ทำหน้าที่อะไร

ช่วยให้ท่านนำ NFA มาสร้างเป็นออพเจ็กต์ในฐานข้อมูลภายใน SQL2008 ได้

5. คำสั่งเกี่ยวกับ UDA ทำหน้าที่อะไร

ช่วยให้สามารถสร้างและลบฟังก์ชันแบบเอกริเกตที่ผู้ใช้นิยามขึ้นเองได้โดยนิยาม UDA ด้วยภาษา C# (หรือภาษา .NET อื่นๆ เช่น VB.NET) เป็นคลาสไว้ใน NFA

6. คำสั่งเกี่ยวกับ UDT ทำหน้าที่อะไร

ช่วยให้ผู้ใช้สร้างชนิดข้อมูลขึ้นเองได้ ทำได้โดยนิยามคลาสหรือ Struct ด้วยภาษา C# (หรือภาษา .NET อื่นๆ เช่น VB.NET) ไว้ใน NFA

7. เมตาดาต้าที่เกี่ยวข้องกับ CLRR ของโปรแกรม SQL2008 อยู่ที่ใด

อยู่ในแคตาล็อกวิวชื่อ sys.all_objects

 

บทที่ 30

1. ฟังก์ชันสตริงคืออะไร

คือฟังก์ชันเพื่อจัดการหรือประมวลผลข้อความตัวอักษร โดยข้อมูลที่ป้อนให้จะเป็นสายอักขระ (สตริง) หรือตัวอักษรตัวเดียวก็ได้ ส่วนผลลัพธ์ที่ฟังก์ชันคืนค่ามาอาจเป็นตัวเลขหรือตัวอักษรก็ได้

2. ฟังก์ชัน CHAR ทำหน้าที่อะไร

แปลงเลขจำนวนเต็มเป็นตัวอักษรตามรหัสแอสกี

3. ฟังก์ชัน LEFT ทำหน้าที่อะไร

คืนค่าเป็นตัวอักษรทางซ้ายของนิพจน์ตัวอักษรที่ต้องการหาค่าตามจำนวนที่กำหนดโดยเลขจำนวนเต็มบวกทำหน้าที่กำหนดจำนวนตัวอักษร

4. nondeterministic function คืออะไร

ฟังก์ชันที่คืนค่าแบบไม่คงที่ คือฟังก์ชันที่อาจคืนค่ามาแตกต่างกันในแต่ละครั้งแม้จะได้รับข้อมูลป้อนให้เป็นชุดเดิม

5. ฟังก์ชันในกลุ่ม rowset คืออะไร

ฟังก์ชันที่คืนค่ามาเป็นออพเจ็กต์ที่มีลักษณะเหมือนตาราง ท่านสามารถนำออพเจ็กต์นี้ไปใช้ในนิพจน์หรือประโยคคำสั่ง T-SQL ที่ต้องการค่าเป็นตารางได้

6. หากต้องการดึงข้อมูลจากเซอฟเวอร์ออราเคิล โดยอาศัย Microsoft OLE DB Provider for Oracle จะต้องใช้ฟังก์ชันอะไร

ฟังก์ชัน OPENQUERY ทำหน้าที่เปิดการเชื่อมต่อเฉพาะกิจกับฐานข้อมูลที่ไม่ใช่ SQL2008

7. อ่านข้อมูลจากเอกสารแบบ XML จะต้องใช้ฟังก์ชันอะไร

ฟังก์ชัน OPENXML

8. ฟังก์ชันเอกกริเกตคืออะไร

ฟังก์ชันหาผลรวมทำหน้าที่คำนวณชุดข้อมูลแล้วให้ผลลัพธ์เป็นค่าๆ เดียว

9. จะใช้ฟังก์ชันในกลุ่มเอกกริเกตได้กับอะไรบ้าง

รายการในอนุประโยค SELECT (ได้ทั้งคิวรีหลักและย่อย) อนุประโยค COMPUTE หรือ COMPUTE BY อนุประโยค HAVING

10. ฟังก์ชัน COUNT_BIG ทำหน้าที่อะไร

ทำหน้าที่นับจำนวนข้อมูลในกลุ่ม หากในกลุ่มมีข้อมูลที่เป็น NULL ก็จะถูกนับด้วย ฟังก์ชัน COUNT_BIG เหมือนฟังก์ชัน COUNT ทุกอย่าง ยกเว้นค่าส่งกลับ

11. ฟังก์ชัน GROUPING ทำหน้าที่อะไร

ให้ค่า 1 หากมีแถวจาก CUBE หรือ ROLLUP และให้ค่าเป็นศูนย์หากไม่ใช่ ฟังก์ชัน GROUPING จะใช้ร่วมกับอนุประโยค GROUP BY ที่มีตัวกระทำ CUBE หรือ ROLLUP ร่วมด้วยเท่านั้น

12. ฟังก์ชัน MIN ทำหน้าที่อะไร

ทำหน้าที่หาค่าต่ำสุดของค่าในกลุ่มโดยไม่สนใจค่า NULL ถ้านำไปใช้กับข้อมูลตัวอักษรจะนับตามลำดับตัวอักษร (เช่น a ต่ำกว่า b)

 

บทที่ 31

1. ADO.NET คืออะไร

เป็นสิ่งที่ทำให้ภาษา C# ทำงานร่วมกับ SQL2008 ได้ ADO.NET เป็นส่วนหนึ่งของดอตเน็ตเฟรมเวิร์ค

2. System.Data.SqlTypes คืออะไร

คือเนมสเปสบรรจุนิยามไทป์ หรือชนิดข้อมูลต่างๆ ที่สัมพันธ์กันระหว่า SQL2008 กับภาษา C#

3. SqlDataReader คืออะไร

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

4. การประกาศตัวแปรออพเจ็กต์โดยกำหนดค่าเริ่มต้นเป็น null มีผลอย่างไร

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

5. เมธอด Close ของออพเจ็กต์ connect ทำหน้าที่อะไร

ปิดการเชื่อมต่อกับ SQL2008

6. วิธีป้องกันไม่ให้การเชื่อมต่อกับฐานข้อมูลที่เปิดไว้ไม่ถูกปิดเมื่อเกิด error ทำอย่างไร

วิธีแก้ไขทำได้สองวิธี วิธีที่แรกคือสร้างและใช้งาน SqlConnection ภายในบล็อกคำสั่ง using อีกวิธีหนึ่งคือใช้คำสั่ง try เพื่อดักจับความผิดพลาด

7. LINQ คืออะไร

Language Interacted Query ภาษาคิวรีแบบบูรณาการ เป็นเทคโนโลยีที่บริษัทไมโครซอฟต์นำมาผนวกไว้ในวิสชวลสตูดิโอและดอตเน็ตเฟรมเวิร์คเพื่อให้สามารถเขียนคิวรีภายในภาษา C# (หรือภาษา CLR อื่นๆ) ได้โดยตรง

8. LINQ เริ่มมีใช้เมื่อใด

เริ่มออกให้ใช้เมื่อปลายปี ค.ศ. 2007 โดยผนวกไว้กับดอตเน็ตเฟรมเวิร์คเวอร์ชัน 3.5 และวิสชวลสตูดิโอ 2008

9. OODM คืออะไร

Object Oriented Database Model เป็นการผนวกข้อมูลและส่วนโค้ดที่จัดการมันไว้เป็นก้อนเดียวกัน ช่วยให้นักเขียนโค้ดจัดการฐานข้อมูลได้เหมือนเป็นออพเจ็กต์หนึ่ง

10. จุดมุ่งหมายที่ไมโครซอฟต์ประดิษฐ์ LINQ คืออะไร

ต้องการเปิดโอกาสให้นักพัฒนาสามารถใช้หลักการ OOP (Object Oriented Programming การเขียนโปรแกรมแบบวัตถุวิธี) กับการพัฒนาแอพลิเกชันฐานข้อมูลได้อย่างสมบูรณ์ ซึ่งทำไม่ได้ในโมเดลการเขียนโปรแกรมแบบอื่นๆ ก่อนหน้านี้ (เช่น ADO.NET)

11. O/RM คืออะไร

การจับคู่ระหว่างออพเจ็กต์กับความสัมพันธ์ แบบจำลองการเชื่อมระหว่าง LINQ กับ SQL

12. การสร้าง O/RM ทำได้อย่างไร

ใช้เท็มเพลตชื่อ LINQ to SQL Classes พบได้ในวิสชวลสตูดิโอ 2008 หรือเวอร์ชันใหม่กว่า

13. ก่อนจะทำ O/RM ได้จะต้องทำอะไรก่อน

ต้องกำหนดการเชื่อมต่อกับดาต้าเบสเซอฟเวอร์ที่จะใช้เสียก่อน

14. ITVD คืออะไร

Implicit Typing Variable Declaration ไทป์แบบใหม่ในภาษา C# เวอร์ชันสามเรียกว่า แอนนอนไมนัส ไทป์ (anonymous type) ทำให้สามารถประกาศเป็นตัวแปรที่ไม่ระบุว่าเป็นชนิดข้อมูลใดแน่ด้วยชนิดข้อมูล var

15. ตัวแปรแบบวาเรียนคืออะไร

ตัวแปรที่สามารถเปลี่ยนไทป์ไปมาได้ตามใจชอบตลอดเวลา

16. ITVD คล้ายหรือแตกต่างจากตัวแปรแบบวาเรียนอย่างไร

ตัวแปร ITVD ยังคงความเป็นไทป์เซฟตี (Type Safety) ของภาษาดอตเน็ตไว้ได้อย่างเหนียวแน่น เนื่องจากตัวแปลภาษา C# ฉลาดพอที่จะตรวจดูว่าตัวแปร ITVD ถูกกำหนดค่าอะไรไว้ แล้วจะกำหนดชนิดข้อมูลของตัวแปรให้เป็นไปตามนั้นเปลี่ยนแปลงภายหลังอีกไม่ได้

17. คำสั่ง Take คืออะไร

เมธอดทำหน้าที่กำหนดจำนวนแถวข้อมูลที่จะรับจากคิวรีโดยเริ่มจากแถวแรกไปจนถึงแถวที่ระบุในอาร์กิวเมนต์ (เหมือน TOP ในภาษา T-SQL)

18. การนำผลลัพธ์ของคิวรี LINQ ไปใช้นอกจากจะใช้ foreach แล้วท่านยังสามารถใช้แบบใดได้อีก

ไปใช้เป็นดาต้าซอร์สให้แก่ออพเจ็กต์ที่เป็น DC อย่าง DataGridView

19. คำสั่ง where ทำหน้าที่อะไร

คล้ายกับคำสั่ง WHERE ในภาษา T-SQL คือทำหน้าที่คัดกรองแถวข้อมูลโดยอาศัยนิพจน์บูลีนเป็นที่ตั้ง

20. อนุประโยค group ทำหน้าที่อะไร

แบ่งแถวข้อมูลออกเป็นกลุ่มๆ แต่ละกลุ่มอาจมีแถวข้อมูลจำนวนศูนย์ถึงหลายๆ แถว ขึ้นอยู่กับว่ามีข้อมูลตรงกับกุญแจที่ใช้ในการจัดกลุ่มหรือไม่

21. EM คืออะไร

Extension Method เมธอดเพิ่มขยาย ช่วยให้นิยามเมธอดที่ทำตัวเหมือนเป็นสมาชิกของคลาสแบบ sealed class หรือคลาสที่อยู่ในแอสเซมบลีได้

22. LE คืออะไร

Lambda Expression นิพจน์แลมดา การใช้ตัวกระทำ => ช่วยให้เขียนโค้ดได้กระชับอ่านง่ายขึ้นในหลายๆ บริบท (เช่นเมื่อทำดีลิเกต)

23. OI คืออะไร

Object Initializes ตัวกำหนดค่าเริ่มต้นให้ออพเจ็กต์ สิ่งที่ช่วยให้เขียนโค้ดได้กระชับอ่านง่ายขึ้น เพราะสามารถกำหนดค่าเริ่มต้นให้พรอพเพอร์ตีได้ในบรรทัดเดียวกับการนิวออพเจ็กต์

โฆษณา

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  เปลี่ยนแปลง )

Google photo

You are commenting using your Google account. Log Out /  เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out /  เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out /  เปลี่ยนแปลง )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: