Database Update SQL
Check Insert or Update
SELECT COUNT(1) FROM ITEM WHERE ID = N'{item_no}'
-- count > 0 → UPDATE, count = 0 → INSERT
INSERT (Add Item)
INSERT INTO ITEM (
ID, NAME, DESCRIPTION, UNIT, RELEASEUNIT,
STDROUTEITEMID, STDROUTEID, ITEM001, ITEM002,
ITEM004, ITEM005, CONVERTUNIT,
LASTMAINTAINUSER, LASTMAINTAINDATETIME, FLAG
) VALUES (
:ID, :NAME, :DESCRIPTION, :UNIT, :UNIT,
:STDROUTEITEMID, :STDROUTEID, :ITEM001, :ITEM002,
:ITEM004, :ITEM005, :CONVERTUNIT,
:userid, N'{current_time}', 0
)
UPDATE (Modify Item)
UPDATE ITEM SET
NAME = :NAME,
DESCRIPTION = :DESCRIPTION,
UNIT = :UNIT,
RELEASEUNIT = :UNIT,
STDROUTEITEMID = CASE WHEN STDROUTEITEMID IS NULL OR STDROUTEITEMID = ''
THEN :STDROUTEITEMID ELSE STDROUTEITEMID END,
STDROUTEID = CASE WHEN STDROUTEID IS NULL OR STDROUTEID = ''
THEN :STDROUTEID ELSE STDROUTEID END,
ITEM001 = :ITEM001,
ITEM002 = :ITEM002,
ITEM004 = :ITEM004,
ITEM005 = :ITEM005,
CONVERTUNIT = :CONVERTUNIT,
LASTMAINTAINUSER = :userid,
LASTMAINTAINDATETIME = N'{current_time}',
FLAG = (SELECT MAX(FLAG)+1 FROM ITEM WHERE ID = :ID)
WHERE ID = :ID
Field Default Values
When inserting, if fields are empty, the following default values are applied:
• ITEM001 = '' (empty string)
• ITEM002 = 'N'
• ITEM004 = 1 (conversion rate numerator)
• ITEM005 = 1 (conversion rate denominator)
material_catalog Table (item_sort = "M")
Check Insert or Update
SELECT COUNT(1) FROM material_catalog WITH (NOLOCK)
WHERE material_id = N'{item_no}'
-- count > 0 → UPDATE, count = 0 → INSERT
INSERT (Add Material)
INSERT INTO material_catalog (
material_id, material_name, norm, unit_no,
oper_date, oper_id, ENABLED, MODI_DATE
) VALUES (
:ID, -- Item number (item_no)
:NAME, -- Item name (item_name)
:DESCRIPTION, -- Specification (item_spec)
:UNIT, -- Unit (unit_no)
N'{current_time}',
:userid,
:ENABLED, -- Y/N (tran_status: AU→Y, D→N)
N'{current_time}'
)
UPDATE (Modify Material)
UPDATE material_catalog SET
material_name = :NAME,
norm = :DESCRIPTION,
unit_no = :UNIT,
ENABLED = :ENABLED,
MODI_DATE = N'{current_time}'
WHERE material_id = :ID
material_catalog Field Mapping
material_id | ← item_no | Item number (Primary Key) |
material_name | ← item_name | Item name |
norm | ← item_spec | Specification |
unit_no | ← unit_no | Unit |
ENABLED | ← tran_status | Enabled status (AU→Y, D→N) |