Category DB2

[DB2] LOCK & UNLOCK Table

บางครั้งเวลาที่เราพัฒนาระบบ เรามีความจำเป็นที่ Lock Table เพื่อบังคับให้มีการ Insert/Update Record ได้ทีละรายการเท่านั้น เพื่อจุดประสงค์บางอย่าง เช่น การ Approve ยืนยันรายการ เป็นต้น โดยรูปแบบของคำสั่ง LOCK มีรูปแบบ ดังนี้ Mode การ Lock มี 2 แบบ ได้แก่ IN SHARE MODE คือ Lock ทุกอย่าง แต่ยังสามารถ Read ข้อมูลใน Table ได้ ดังตัวอย่าง [sql]LOCK TABLE INVEST.COMPANY…

[DB2] SQL สำหรับตรวจสอบ Version ของ DB2

ช่วงนี้ไป UAT บ่อย เริ่มเจอปัญหาแปลกของ Enviroment ของ Production กับ Enviroment ที่ใช้ในการ Development ที่บริษัท แตกต่างกัน ทำให้เวลาที่เราฝั่งคำสั่งบางตัว อาจจะเกิดปัญหาขึ้นได้ครับ โดยวันนี้ผมขอแปะ Query สำหรับดู Version และ Fix Pack ของ DB Server ดังนี้ครับ [sql] SELECT SERVICE_LEVEL , FIXPACK_NUM FROM TABLE (SYSPROC.ENV_GET_INST_INFO()) AS INSTANCEINFO [/sql] โดยผลลัพธ์ที่ได้ จาก Query…

[DB2] -tvf , -td@ -f คือ อะไร

จริงๆ บทความนี้ผมดองมานานมาก เพราะเดือนที่แล้ว เดือนกุมภาพันธ์ เดือนแห่งการกุมขมับ เพราะ Project ล่าสุดของออมสินต้องส่ง Software ในส่วนของ Phase1 ภายในเดือนนั้นครับ หลังจากผ่านเข้าสู่ Season 2 เฮ้ยย Phase 2 พอมีเวลาได้หายใจบ้าง เลยจะมาเก็บบทความที่ดองไว้ครับ โดยวันนี้ผมขออธิบายคำสั่งเกี่ยวกับ DB2 คำสั่ง -tvf , -td@ ก่อนครับ เพราะหลายๆคนคงใช้คำสั่งเหล่านี้ โดยหลักการ CPD (Copy and Paster Development  ครับ ฮ่าๆ)  แต่ไม่รู้ว่ามัน คือ อะไร และคำสั่งที่ลองไป มันมีอะไรที่พิเศษ หรือป่าวนะ…

[DB2] Alter table limitations, DB21034E

หลายคนอาจจะงง ว่าทำไมผมถึงได้เขียน Blog ตอนนี้นะครับ  ลองมาดู Script ตัวอย่างของผมนะครับ [sql] ALTER TABLE INVEST.COMPANYACCOUNT_SECURITY_DETAIL ALTER COLUMN ACCOUNTNAME SET DATA TYPE VARCHAR(300); –จุดที่ (1) ALTER TABLE INVEST.COMPANYACCOUNT_SECURITY_DETAIL ALTER COLUMN REMARK SET DATA TYPE VARCHAR(300); –จุดที่ (2) ALTER TABLE INVEST.COMPANYACCOUNT_SECURITY_DETAIL ADD COMPANYACCOUNT_ID INTEGER; ALTER TABLE…

[DB2] cheat sheet

IBM DB2

Some useful DB2 commands DB2 System Commands DB2LEVEL — checks version of DB2 installed. DB2ILIST — lists all instances installed DB2CMD — opens a command line processor DB2CC — opens db2 control center DB2LICM -l — gets db2 type. Command…

[DB2] แปลง default current_timestamp on update current_timestamp ใน MySQL มาเป็น DB2

วันนี้ผมได้เอา Application ที่ทำด้วย C#, Java บน MySQL ย้ายมาลองกับ Database DB2(DB2 มันกิน Resource เยอะ 555) มาที่เครื่อง Developer กลาง ด้วยความขี้เกียจผมเลย Export Script จากตัว MySQL Workbench ปรากฏว่าระบบ Generate Script แปลกมาให้ ดังนี้ [sql] CREATE TABLE PORTFOLIO_PERFORMANCE ( VALUE_DATE TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON…

[DB2] Compare Database, Schema หรือ Table ด้วย IBM Data Studio

หลายๆครั้งที่เราทำงานต้องมีการจัดเก็บ Script ที่แก้ไข Table เอาไว้ อย่างกรณีที่เคสที่ QA ทดสอบ App แล้วเกิดปัญหาขึ้น โดยไม่พบว่ามี Column ในระบบ ผมเลยใช้วิธี Compare Table ที่มีปัญหาว่า Column ไม่ครบ ด้วย Tools IBM Data Studio(ปางหนึ่งของ Eclipse) ครับ โดยมีวิธีการ ดังนี้ (ผมของ COmpare Table นะ ถ้าทั้ง Schema คอมคงค้างไปก่อน เพราะมีเกือบ 600 Table Connect เข้า…

[DB2] Install IBM Data Studio

IBM DB2

หลังจาก Blog ตอนที่แล้วได้เกริ่นนำ และเตรียมการลง IBM Data Studio แล้วตอนนี้ผมมาแนะนำการลง IBM Data Studio แบบ Step by step กันครับ STEP3 Install IBM Data Studio เปิดตัว IBM Installation Manager ใช้ตัว Package แบบ Install Package แบบ Full แล้วระบบดึง Repository มาให้โดยอัตโนมัติ แต่ถ้าไม่มีก็สามารถกำหนดได้จากเมนู File >> Preference จากนั้นไป…

[DB2] เตรียมตัวก่อนลง IBM Data Studio

IBM DB2

ก่อนอื่นที่เล่าถึงวิธีการลงโปรแกรมกัน ผมขอเล่าที่มาของเจ้าโปรแกรม IBM Data Studio มันมีถูกสร้างมา เพื่อทำหน้าที่ในการจัดการ DBMS แบบตัว Control Center แหละครับ แต่มีความสามารถเพิ่มเติมขึ้นมา ได้แก่ การสร้าง Data Model, การสร้าง ER-Diagram และตัว Wizard ในการ Tuning Database เป็นต้น โดยเจ้า IBM Data Studio ถ้าหลายๆคนเห็นหน้าจอแล้วอาจจะร้องว้าวววว เพราะ มันเป็นร่างอวตารอีกร่างหนึ่งของ Eclipse แหละครับ แต่มันดูดีกว่าเจ้า Control Center ที่มันทำงานได้ช้า แม้ว่าเครื่องจะแรงก็ตาม จนท้ายที่สุดใน DB2…

[SQL] Multiplication Aggregate (คูณ Column เดียวกัน)

หลายคนอาจจะสงสัยว่า SQL มันก็นำมาคูณได้อยู่แล้วนี่ เอา Column A x Column B ก็จบ แต่ถ้าผมเปลี่ยนโจทย์หละลองทำการคูณในเหมือน Function SUM ใน SQL นะครับ ทวนความรู้กันก่อน Function SUM ของ SQL คือ การหาผลรวมของข้อมูลใน Column เดียวกัน ถ้าเราทำ Function MUL หรือ MULTIPLY ใน SQL คือ การหาผลคูณของข้อมูลใน Column เดียวกัน เมื่อเข้าใจ Concept แล้วไปลองทำ ผมค้นพบความโหดร้าย…