我正在尝试检查给定表中是否存在一列。
当检查是否存在时,我想用值1更新该列,如果不存在,请创建并更新。
但是,每次运行错误时,该列仍然不存在。
在运行时,它首先考虑我对alter table的更新。
为了说明我正在尝试做的事情:
IF EXISTS( SELECT * FROM BANCO_DE_DADOS.INFORMATION_SCHEMA.COLUMNS
WHERE (TABLE_NAME) = 'MinhaTabela'
AND (COLUMN_NAME) = 'CodZona' )
BEGIN
UPDATE BANCO_DE_DADOS..MinhaTabela
SET CodZona = 1
WHERE CodZona < 1 OR CodZona IS NULL
END
ELSE
BEGIN
ALTER TABLE BANCO_DE_DADOS..MinhaTabela
ADD [CodZona] [int] NULL
UPDATE BANCO_DE_DADOS..MinhaTabela
SET CodZona = 1
END
错误:
Message 207, Level 16, State 1, Line 7
Invalid column name 'CodZona'.
Message 207, Level 16, State 1, Line 7
Invalid column name 'CodZona
'。
答案 0 :(得分:0)
问题在于编译与执行查询。该错误在编译过程中出现。
您可以这样做:
Sub Decimals()
If Not TypeOf Selection Is Range Then Exit Sub
Dim rng As Range
For Each rng In Selection
If IsNumeric(rng.Value) Then
If rng.Value > 0.99999999 Then
rng.NumberFormat = "#,#00"
Else
rng.NumberFormat = "0.00"
End If
End If
Next
End Sub