Category MS SQL Server

[SQL Server] SELECT แปลง Column ที่เป็น null ให้เป็น 0

หลายครั้งที่ต้องเจองานในการเขียน SQL ประเภทการหาผลรวม (SUM) ของรายการ ตามเงื่อนไข A, B, C, D และอื่นๆจิปาถะ ลองมาดูตัวอย่างกัน เตรียมข้อมูล กำหนดโครงสร้างตาราง OrderTx ดังรูป กำหนดข้อมูลให้ตาราง ดังนี้ ความต้องการ(โจทย์) มาดูโจทย์ที่เราต้องการ ต้องการหาผลรวมของ Unit เฉพาะรายการขาย(BUY) ที่ยืนยันแล้ว(ISCONFIRM) และมีวันขายสินค้าระหว่างวันที่ 1-Oct-2013 ถึง วันที่ 10-Oct-2013 โดยสามารถเขียน Query ได้ ดังนี้ ปัญหา หากเรามีรายการใหม่ขึ้นมา ได้แก่การ รายการประเภทซื้อเชื่อ(BUY_CREDIT) พอทดสอบ Query พบว่าได้ค่า…

[SQL Server] ปัญหา row cannot be located for updating. some values may have been changed since it was last read

ปัญหา row cannot be located for updating. some values may have been changed since it was last read สาเหตุ เกิดจากการตารางที่โปรแกรม หรือ App ที่เรากำลังพัฒนาได้ถูกใช้งานอยู่ หากใครเคยเรียน DB มา มีศัพท์เทคนิคอีกย่างนึง เรียกว่า Isolation Level นั้นเอง โดยสามารถเกิดได้จาก 2 กรณี ดังนี้ วิธีการแก้ไข กรณีที่ 1: ให้ตรวจสอบตารางที่เกี่ยวข้องกับหน้าจอนั้น ว่ามี Trigger…

[SQL Server] SELECT * From Table where 1 > 2

เวลาทำงานหลายคนอาจจะเจอ SQL แปลก เช่น SELECT * FROM INVESTTX WHERE 1 > 2 Q: WHERE 1 > 2 คือ อะไร ? A: คือ การ SELECT ข้อมูล RECORD เปล่าขึ้นมา เพื่ออัปเดต หรือ ทำเป็น TEMP Table เพื่อการใช้งานต่อไป ตัวอย่างการใช้งาน SELECT RECORD เปล่าขึ้นมา Update Recordset ใน…

[MSSQL] การ Restore Database จากไฟล์ .Bak

ในบางครั้งเวลาที่เราทำงาน อาจจะต้องเอาไฟล์ Database จากที่อื่นมาใช้งาน หาก Detach ออกมาก็ทำให้ Database ตัวเดิมนั้นใช้งานไม่ได้ด้วย ตอนนี้ผมนำเสนอวิธี Restore Database จากไฟล์ .Bak ตามขั้นตอนต่อไปนี้ครับ Login เข้าฐานข้อมูล เลือก Instance ที่ต้องการใช้งาน (ต้องใช้ USER ในระดับ Windows-Authentication) มาที่ Database คลิกขวาเลือก Restore Database ดังรูป มากำหนดค่าเพิ่มเติม ดังนี้ ตรง To Database ให้กำหนดชื่อฐานข้อมูล เมื่อ Restore สำเร็จ จะใช้มือชื่อ…