如果该表不存在,我如何创建一个表。就我而言,我想用这个查询创建表:
SELECT *
INTO a
FROM b
db A 中的表 a 和 db B 中的表 b 有帮助吗?
如果该表不存在,我如何创建一个表。就我而言,我想用这个查询创建表:
SELECT *
INTO a
FROM b
db A 中的表 a 和 db B 中的表 b 有帮助吗?
if not exists (select [name] from sys.tables where [name] = 'a') SELECT *
INTO A.dbo.a
FROM B.dbo.b
你可以试试这个..它很简单。
您可以为 SQL Server 使用OBJECT_ID函数。
IF OBJECT_ID('a') IS NULL
SELECT *
INTO a
FROM b
MySQL、PostgreSQL、Sqlite:
CREATE TABLE IF NOT EXISTS t_exists1
(
c1 TYPE
);
甲骨文:
DECLARE cnt NUMBER;
BEGIN
SELECT count(*) INTO cnt FROM all_tables WHERE table_name = 'T_EXISTS1';
IF cnt = 0 THEN
EXECUTE IMMEDIATE 'CREATE TABLE t_exists1
(
c1 TYPE
);';
END IF;
END;
SQL 服务器:
IF OBJECT_ID('t_exists1', 'U') IS NULL
CREATE TABLE t_exists1
(
c1 TYPE
);