chuang4630
asked on
How do I know if a field exists?
How do I know if a field exists?
Should I use:
IF (NOT(EXISTS(SELECT FIELD_1 FROM TABLE_1))) THEN ALTER ..........
Should I use:
IF (NOT(EXISTS(SELECT FIELD_1 FROM TABLE_1))) THEN ALTER ..........
IF NOT EXISTS(
SELECT *
FROM sysobjects
INNER JOIN syscolumns
ON sysobjects.id = syscolumns.id
WHERE syscolumns.name = 'Field_1'
AND sysobjects.name = 'Table_1'
) THEN ALTER...
SELECT *
FROM sysobjects
INNER JOIN syscolumns
ON sysobjects.id = syscolumns.id
WHERE syscolumns.name = 'Field_1'
AND sysobjects.name = 'Table_1'
) THEN ALTER...
A field in what?
Do you mean a table column?
Some value in a table column?
A field in a report?
Do you mean a table column?
Some value in a table column?
A field in a report?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Try this too
--IF (NOT(EXISTS(SELECT FIELD_1 FROM TABLE_1))) THEN ALTER ..........
IF NOT EXISTS(SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME = ' Ur Field' AND TABLE_NAME = 'UrTable)'
ALTER TABLE ...
--IF (NOT(EXISTS(SELECT FIELD_1 FROM TABLE_1))) THEN ALTER ..........
IF NOT EXISTS(SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS
ALTER TABLE ...
I am glad you agree with me :)
Oh sorry aceperkins , i didn't find your post
No problem.
(SELECT c.*
FROM syscolumns c
JOIN sysobjects o ON c.id = o.id
WHERE o.name = 'TABLE_1'
AND c.name = 'FIELD_1')
BEGIN
ALTER TABLE [dbo].[TABLE_1] ADD [FIELD_1] ....