gpt4 book ai didi

sql - 微软 Access : adding column if not exist (or try/catch it)

转载 作者:行者123 更新时间:2023-12-04 01:46:18 26 4
gpt4 key购买 nike

这是一个简单的问题,但我找不到解决方案...

我必须检查一列是否存在,如果测试是否定的,则添加它。我怎么能只用 sql 代码?

这是 SQL Server 的语法:

IF NOT EXISTS (
SELECT *
FROM sys.columns
WHERE object_id = OBJECT_ID(N'[dbo].[Person]')
AND name = 'ColumnName'
)
BEGIN
--STUFF HERE
END

而对于 MS Access,只使用 SQL 代码......这样做的正确语法是什么?

更新 :也是一种执行 try cath 语句的方法也可以,如果它不存在,我只需要不添加任何内容......所以,我认为 try catch 也可以。也可以很容易地在 sql server 中使用 try catch ......并进行 Access ?

更新 2 : 我已经这样做了:
If Not Exists (Select Column_Name
From INFORMATION_SCHEMA.COLUMNS
Where Table_Name = 'TabTessereVeicoli'
And Column_Name = 'TAGA')
begin

ALTER TABLE TabTessereVeicoli ADD TAGA text(25) NULL;

end

但我收到错误消息“SQL 语句无效。预期为 DELETE、INSERT、PROCEDURE、SELECT 或 UPDATE。”为什么?如何在 IF 之后做一个改变表?

最佳答案

您不能在 Access SQL 中执行此操作。
你可以运行这个:

ALTER TABLE TabTessereVeicoli ADD TAGA text(25) NULL;

并忽略错误,或者您可以使用 VBA 打开 TableDef 并进行修改。

关于sql - 微软 Access : adding column if not exist (or try/catch it),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29428859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com