Let me show on example how to update.
At first, we should create tables:
CREATE TABLE ObjectData
(
ID INT,
CollID INT,
Data VARCHAR(50)
)
CREATE TABLE ColumnSet
(
ColumnID INT,
ColumnName VARCHAR(50)
)
Then insert data:
INSERT INTO ObjectData
(
ID,
CollID,
Data
)
VALUES
( 113, -- ID - int
1, -- CollID - int
'1' -- Data - varchar(50)
)
, (114, 5, '')
, (115, 10015, 'Mohamed')
, (116, 20026, 'Abdulghani')
INSERT INTO ColumnSet
(
ColumnID,
ColumnName
)
VALUES
( 1, -- ColumnID - int
'ID' -- ColumnName - varchar(50)
)
, (5, 'EmployeeID')
, (10015, 'FirsName')
And the final step is updating where you should write what rows need to be updated by WHERE
operator:
UPDATE od
SET od.Data = 'Hey!'
FROM ObjectData od
INNER JOIN ColumnSet cs ON cs.ColumnID =od.CollID
--WHERE OD.DATA IN ('1', '10')
WHERE OD.CollID IN (1, 5)
You can write in WHERE
statement any condition to choose your row which will be updated.
--Check our update statements:
SELECT
*
FROM ObjectData od
INNER JOIN #ColumnSet cs ON cs.ColumnID =od.CollID
WHERE OD.DATA IN ('1', '10')