[SQL SERVER] Script สำหรับตรวจสอบว่ามีใครใช้งาน Server อยู่บ้าง

Script สำหรับตรวจสอบว่ามีใครใช้งาน Server อยู่บ้าง เอาไว้ Check กรณีที่ะทำอะไรกับตัว Database Server ครับ
Script สำหรับตรวจสอบว่ามีใครใช้งาน Server อยู่บ้าง เอาไว้ Check กรณีที่ะทำอะไรกับตัว Database Server ครับ
สามารถเอา Code ชุดนี้ไปใช้งานได้เลย หรือจะทำเป็น Code Snippets เอาไปใช้งานได้เลย ตัวอย่างการใช้งาน
วันนี้ผมแก้ App เก่าๆของที่บริษัทแล้วเกิดเจอปัญหา Invalid character value for cast specification ตอนนั้นไล่ข้อมูลแทบตาย เจอมวลมหา Function Call และไปพบว่ามันผิดที่วันที่ (Date) ที่มีการจัด Format ผิด โดยไอ้เจ้าปัญหา Invalid character value for cast specification มันมีความหมายว่าข้อมูลทางเราเป็น input ส่งให้ Database แล้วตัว DBMS เองไม่สามารถแปลงข้อมูล และเก็บลงฐานข้อมูลได้นั้น ซึ่งสาเหตุอาจจะเกิดจากหลายๆสาเหตุ เช่น ข้อมูลประเภท Date ที่ Format ผิด หรือข้อมูลประเภท…
สำหรับฐานข้อมูลของทุกๆค่าย ตัวเนื้อของ Database มีไฟล์ที่สำคัญอยู่ 2 ตัว ได้แก่ คราวนี้มาดูที่ตัวของ MS SQL บ้างดีกว่า ว่าไฟล์กลุ่มนี้มีอะไรบ้าง จากหัวเรื่อง Blog นี้จั่วหัวในเรื่องของ Database Log File ไว้ เรามาดูกันดีกว่ามันมีการทำงานอย่างไร เริ่ม Database ทำงาน รู้แล้วว่าอะไร ที่มันต้อง Log บ้าง คราวนี้ลองมาดูโครงสร้างแบบ Logical(Virtual Log) ของ Log กัน โดย Log แต่ละตัวมี ID ประจำของมัน ก็ คือ…
หลายคนๆ คงอ่านหัวข้อแล้ว อาจจะงง 55 เพราะว่าส่วนใหญ่มีแต่การ Migrate ข้อมูลจาก IBM DB2 ไป Microsoft SQL Server กัน แต่นี่ คือ Require ของลูกค้า (ลูกค้า คือ พระเจ้า) โดยผมขอสรุป สิ่งที่ต้องสังเกตุ และระวังในการย้ายข้อมูลจาก Microsoft SQL Server ไป IBM DB2 ซึ่งจะส่งผลให้ Application ที่กำลังพัฒนาอยู่เกิดผิดพลาดได้ ดังนี้
หลายครั้งที่เราได้โจทย์ หรือปัญหามาแก้โดยใช้วิธีการ Query จากฐานข้อมูลมา ซึ่งมีรูปแบบการ Query หลายแบบ ได้แก่ การเขียน JOIN ตาราง, UNION หรือ ทำเป็น Sub Query เป็นต้น ในวันนี้ผมขอนำเสนอวิธีการเขียน SELECT IN SELECT ซึ่งเป็นวิธีการเขียน Query แบบหนึ่งที่ช่วยแก้ปัญหาได้มากมาย และลดการเขียน Coding ที่ไม่จำเป็นได้อีก ตัวอย่างปัญหา เราต้องการดูข้อมูลการจ่ายดอกเบี้ยทั้งหมด เพื่อนำมาออกรายงาน โดยมีเงื่อนไขดังนี้ ข้อมูลที่ใช้กับตัวอย่างนี้ ขั้นตอนการแก้ปัญหา (ถ้ามีการเขียน SQL ผมขอใช้ SYNTAX ของ SQL Server นะครับ)…
หลังจากทำงานมา 1 ปี ผมก็ได้มีโอกาศอยู่ Standby รอรับปัญหาจาก User วันแรก ซึ่งวันแรกเนี่ยแหละ ผมเขียน Query ผิด ลืม Where และเข้าใจว่าโปรแกรมที่ใช้ Toad for DB2 ตัวใหม่ ซึ่งลองเอามาใช้แทนตัว WinSQL ที่มันเก่ามากแล้ว มัน Default Auto Commit = off แล้ว แต่มันปรากฏว่าไม่ใช้ ดังนั้นผมจึงขอนำเสนอวิธีการปิด Auto Commit สามารถดูตามรูปภาพที่แนบมาได้เลยครับ ปล. วิธีการนี้สามารถประยุกต์ใช้กับโปรแกรม Toad for SQL Server,…
เมื่อวันก่อนได้งานจากหัวหน้าให้เขียน Script เพื่อจัดการ User กับสิทธิื หลังการ Restore ฐานข้อมูล เมื่อลองเขียนคำสั่งเพื่อ Drop User พบ Error Message ดังนี้ The database principal owns a schema in the database, and cannot be dropped. (Microsoft SQL Server, Error: 15138) จาก Error Message ด้านบน สามารถสรุปสาเหตุของปัญหานั้น เกิดจาก User…
จากบทความที่แล้วที่ผมได้แนะนำเรื่องการสร้างฟังก์ชั่นใช้เองใน Database (User-Defined Function)ของเรา วันนี้ผมมาแนะนำการสร้างฟังก์ชั่นรูปแบบแรก Scalar-valued Function กันนะครับ Scalar-valued Function คือ อะไร Scalar-valued Function คือ ฟังก์ชั่นที่คืนค่าเป็นข้อมูลชนิดพื้นฐานเพียงตัวเดียว เช่น datetime, int ยกเว้นชนิดข้อมูลแบบ text, ntext, image หรือ timestamp ที่ไม่สามารถสั่งให้คืนค่าได้ โดยการเรียกใช้สามารถเรียกใช้แบบเดียวกันกับฟังก์ที่เคยใช้งานมา โดยส่วนชื่อคอลัมน์ที่ต้องการเข้าไป เช่น SUM, Max เป็นต้น การสร้าง Scalar-valued Function ใน MS SQL Server เริ่มสร้าง Function ซึ่งเราสามารถสร้าง Scalar-valued…
ปกติแล้ว DBMS จะมีฟังค์ชั่นพื้นฐานในด้านต่างๆมาให้ในระดับนึงได้ อาทิ เช่น ฟังก์ชั่นด้านตัวเลข ได้แก่ SUM, AVG เป็นค้น ฟังก์ชั่นด้านตัวอักษร ได้แก่ Trim(), Replace เป็นต้น แต่บางครั้งงานบางชนิด ฟังก์ชั่นเหล่านี้ไม่สามารถตอบโจทย์ หรือ Business Rule ที่เราต้องการได้ ซึ่งตัว SQL Server หรือ DBMS ตัวอื่น ได้อนุญาตให้เราสร้างฟังก์ชั่นใช้เองได้ หรือ เรียกว่า User-Defined Function (ผมเน้นไปในตัว SQL Server) โดยสามารถสร้างฟังก์ชั่นได้ 3 ลักษณะ ดังนี้ Scalar-valued Function…