คำถามและคำตอบสัมภาษณ์เซิร์ฟเวอร์ SQL อันดับต้น ๆ [สำหรับ Freshers 2022]

เผยแพร่แล้ว: 2021-01-04

มาดูคำถามที่พบบ่อยบางส่วนในการสัมภาษณ์แบบใช้ SQL Server เราจะรวมตัวอย่างการสืบค้น SQL พร้อมกับคำถามและคำตอบในการสัมภาษณ์ SQL ในทุกที่ที่จำเป็น

คำถามและคำตอบสัมภาษณ์เซิร์ฟเวอร์ SQL

คำถามที่ 1: SQL คืออะไร?

SQL หรือ Structured Query Language เป็นภาษาโปรแกรมคอมพิวเตอร์มาตรฐานที่ใช้ในการจัดการและจัดระเบียบระบบการจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) มันถูกใช้สำหรับการจัดเก็บ จัดการ และเข้าถึงข้อมูลที่เก็บไว้ กล่าวคือ การสื่อสารกับฐานข้อมูลเชิงสัมพันธ์ RDBMS ที่ได้รับความนิยมส่วนใหญ่ใช้ประโยชน์จาก SQL และรวมถึง SQL Server, MySQL และ Oracle

หน่วยของการดำเนินการหรือคำสั่งใน SQL เรียกว่าแบบสอบถาม สามารถใช้แบบสอบถาม SQL เพื่อสร้าง เลือก หรือแก้ไขข้อมูล

ในระบบการจัดการฐานข้อมูลเชิงสัมพันธ์ ไฟล์ที่จัดระเบียบจะถูกจัดเก็บในรูปแบบของตาราง แต่ละตารางประกอบด้วยคอลัมน์และแถว

คำถามที่ 2: แบบสอบถาม SQL เพื่อสร้างฐานข้อมูลใน SQL Server คืออะไร

ฐานข้อมูลใน SQL คือชุดข้อมูลที่มีการจัดระเบียบซึ่งอาจประกอบด้วยตาราง ฟังก์ชันโค้ด สคีมา ฯลฯ โปรแกรมเมอร์สามารถสร้างฐานข้อมูลนี้หรือจัดการโดยใช้ภาษาคิวรีต่างๆ

ในการสร้างฐานข้อมูลใหม่ในเซิร์ฟเวอร์ SQL จะใช้คำสั่ง SQL ต่อไปนี้:

สร้างฐานข้อมูลชื่อฐานข้อมูล

อ่าน: คำถามสัมภาษณ์เต็มกอง

คำถามที่ 3: ตารางถูกสร้างขึ้นใน SQL อย่างไร

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

ในการสร้างตารางใหม่ในเซิร์ฟเวอร์ SQL จะใช้คำสั่ง SQL ต่อไปนี้:

สร้างตาราง TableName (ชนิดข้อมูลของคอลัมน์ชื่อ, ชนิดข้อมูลของคอลัมน์ชื่อ2 )

คำถามที่ 4: SQL Profiler คืออะไร?

SQL Profiler เป็นวิธีการสำหรับผู้ดูแลระบบในการติดตามเหตุการณ์ในเซิร์ฟเวอร์ SQL ส่วนใหญ่จะใช้สำหรับการวิเคราะห์ไฟล์ข้อมูลที่บันทึกและบันทึกของเหตุการณ์

คำถามที่ 5: อธิบายด้วยตัวอย่างว่ากระบวนงานที่เก็บไว้แบบเรียกซ้ำคืออะไร

ไม่จำเป็นต้องเรียกกระบวนงานที่เก็บไว้แบบเรียกซ้ำใน SQL Server มันเรียกเองจนกว่าจะถึงเงื่อนไขขอบเขต ระดับการซ้อนสูงสุด 32 เป็นไปได้ด้วยกระบวนงานที่เก็บไว้ สิ่งนี้เรียกว่าการเรียกซ้ำ

การใช้กระบวนงานที่เก็บไว้แบบเรียกซ้ำ โปรแกรมเมอร์สามารถใช้รหัสชุดเดียวกันเป็นเวลา n ครั้ง

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

สร้างขั้นตอน [dbo].[Factorial_ap]

(

@จำนวนเต็ม,

ผลลัพธ์จำนวนเต็ม

)

เช่น

ประกาศ @In จำนวนเต็ม

ประกาศ @Out จำนวนเต็ม

IF @Number != 1

เริ่ม

เลือก @In = @Number – 1

EXEC Factorial_ap @เข้า, @ออก เอาต์พุต

เลือก @RetVal = @Number * @Out

จบ

อื่น

เริ่ม

เลือก @RetVal = 1

จบ

กลับ

ไป

คำถามที่ 6: รายการความแตกต่างระหว่างตารางชั่วคราวในเครื่องและทั่วโลก

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

ตารางชั่วคราวในเครื่องจะแสดงด้วย # ก่อนชื่อตาราง

ไวยากรณ์ในการสร้างตารางชั่วคราวในเครื่องคือ:

สร้างตาราง #<ชื่อตาราง>

(

ประเภทข้อมูล column1 [ NULL | ไม่เป็นโมฆะ ],

ประเภทข้อมูล column2 [ NULL | ไม่เป็นโมฆะ ],

);

ตารางชั่วคราวทั่วโลกสามารถเข้าถึงได้และปรากฏแก่ผู้ใช้ทุกคน SQL Server จะลบออกเมื่อเซสชัน SQL Server สิ้นสุดลง สิ่งนี้จะเกิดขึ้นเมื่อตารางอ้างอิงผู้ใช้ทุกคนตัดการเชื่อมต่อจากเซสชัน

ตารางชั่วคราวในเครื่องจะแสดงโดยใช้ ## ก่อนชื่อตาราง

ไวยากรณ์สำหรับสร้างตารางชั่วคราวส่วนกลางคือ

สร้างตาราง ##<ชื่อตาราง>

(

ประเภทข้อมูล column1 [ NULL | ไม่เป็นโมฆะ ],

ประเภทข้อมูล column2 [ NULL | ไม่เป็นโมฆะ ],

);

คำถามที่ 7: อธิบายการจับคู่รูปแบบใน SQL?

การจับคู่รูปแบบใน SQL ช่วยให้โปรแกรมเมอร์ใช้เครื่องหมายขีดล่าง (_) เพื่อจับคู่อักขระตัวเดียว นอกจากนี้ยังช่วยให้คุณใช้เครื่องหมายเปอร์เซ็นต์ (%) เพื่อจับคู่อักขระตามจำนวนที่ต้องการได้ ซึ่งรวมถึงอักขระศูนย์ด้วย ควรสังเกตว่ารูปแบบ SQL ไม่คำนึงถึงขนาดตัวพิมพ์ใน MySQL

คำถามที่ 8: ทริกเกอร์คืออะไร? ทริกเกอร์มีกี่ประเภท?

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

ทริกเกอร์มีสองประเภท พวกเขาเป็น:

  1. ภาษาการจัดการข้อมูล (DML) และ
  2. ภาษานิยามข้อมูล (DDL)

เมื่อใช้การสืบค้นข้อมูลเหล่านี้เพื่อแก้ไขข้อมูล ชุดคำสั่งจะถูกทริกเกอร์ ด้วยเหตุการณ์คำสั่ง DML แทรก ลบ อัปเดต และแทนที่จะทำงาน ด้วย DDL ทริกเกอร์ Create, Alter and Drop จะถูกทริกเกอร์

อ่านเพิ่มเติม: คำถามและคำตอบสัมภาษณ์ PHP

คำถามที่ 9: กำหนด COALESCE?

นิพจน์ที่ไม่ใช่ค่าว่างแรกภายในอาร์กิวเมนต์ของฟังก์ชันจะถูกส่งคืนโดยใช้ COALESCE สามารถอ่านคอลัมน์อย่างน้อยหนึ่งคอลัมน์ในอาร์กิวเมนต์เพื่อตรวจสอบนิพจน์ที่ไม่ใช่ค่าว่าง

ไวยากรณ์คือ –

เลือก COALESCE (emp_num, emp_name, เงินเดือน) จากพนักงาน;

คำถามที่ 10. CDC คืออะไร?

คุณลักษณะของ SQL Server 2008, CDC หรือ Change Data Capture สามารถใช้เพื่อบันทึกข้อมูลที่เพิ่งแก้ไขได้

คำถามที่ 11: แบบสอบถามที่ใช้ในการนับจำนวนระเบียนในตาราง SQL คืออะไร

เราสามารถรับจำนวนระเบียนในตารางโดยใช้แบบสอบถามต่อไปนี้:

เลือก * จาก <tablename>

เลือก count(*) จาก <tablename>

เลือกแถวจาก sysindexes โดยที่ id=OB

JECT_ID(ชื่อตาราง) และ indid<2

คำถามที่ 12: ระบุความแตกต่างระหว่างฟังก์ชัน SUBSTR และ CHARINDEX ใน SQL Server หรือไม่

ฟังก์ชัน SUBSTR ส่งคืนส่วนที่ระบุของสตริงตามคำแนะนำของโปรแกรมเมอร์ ในทางกลับกัน ฟังก์ชัน CHARINDEX ใช้เพื่อส่งคืนตำแหน่งของอักขระที่ระบุในสตริงที่กำหนด

ตัวอย่างเช่น:

SUBSTRING('Apple',1,4)

– ผลลัพธ์จะเป็น Appl

CHARINDEX('l', 'Apple',1)

– ผลลัพธ์จะเป็น 4 เนื่องจากอักขระ l อยู่ในตำแหน่งที่ 4 ในสตริงที่ระบุ

คำถามที่ 13: การฉีด SQL คืออะไร?

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

คำถามที่ 14: วิธีใดบ้างที่สามารถใช้เพื่อหลีกเลี่ยงการโจมตีด้วยการฉีด SQL

คุณสามารถใช้สี่วิธีต่อไปนี้เพื่อปกป้องเซิร์ฟเวอร์ SQL จากการโจมตีด้วยการฉีด SQL:

– เนื่องจาก Parameters มีความเสี่ยงต่ำกว่าที่จะถูกโจมตีด้วย SQL injection จึงแนะนำให้ใช้กับ Stored Procedure

– เป็นการวัดที่ดีในการกรองพารามิเตอร์อินพุต

– สามารถใช้การรวบรวมพารามิเตอร์ด้วย Dynamic SQL ได้

- ใช้อักขระหลีกในส่วนคำสั่ง Like

คำถามที่ 15: ระบุโหมดการตรวจสอบสิทธิ์สองโหมดใน SQL Server พวกเขาสามารถเปลี่ยนแปลงได้อย่างไร?

โหมดการพิสูจน์ตัวตนสองโหมดในเซิร์ฟเวอร์ SQL คือ:

– โหมด Windows

– โหมดผสม

ในการตั้งค่าการกำหนดค่าของ SQL Server ใต้หน้าความปลอดภัย จะมีเมนูเครื่องมือสำหรับเปลี่ยนโหมด

คำถามที่ 16: คำสั่งประเภทต่าง ๆ ในฐานข้อมูล SQL มีอะไรบ้าง

คำตอบ: คำสั่งใน SQL Server มีสี่ประเภท พวกเขาถูกจัดประเภทเป็น:

  1. ภาษานิยามข้อมูล (DDL)
  2. ภาษาควบคุมข้อมูล ภาษาควบคุมธุรกรรม (TCL) ภาษาควบคุมธุรกรรม (TCL)
  3. ภาษาการจัดการข้อมูล (DML)
  4. ภาษาควบคุมธุรกรรม (TCL)

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

บทสรุป

เราหวังว่า คู่มือคำถามและคำตอบของ SQL Server จะเป็นประโยชน์ เราจะอัปเดตคู่มืออย่างสม่ำเสมอเพื่อให้คุณอัปเดต

หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับ SQL, การพัฒนา full stack, ลองดูโปรแกรม Executive PG ของ upGrad & IIIT-B ในการพัฒนาซอฟต์แวร์ Full-stack ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 500 ชั่วโมง, โครงการมากกว่า 9 โครงการ และการมอบหมายงาน สถานะศิษย์เก่า IIIT-B โครงการหลักและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

มาเป็นนักพัฒนาเต็มรูปแบบ

สมัครเลยตอนนี้สำหรับปริญญาโทด้านวิศวกรรมซอฟต์แวร์