表存在则删除,不存在则创建(一句sql实现)

本文介绍了一种使用SQL语句高效管理数据库表的方法,包括检查表是否存在并进行删除或创建操作。针对MySQL、SQL Server、Oracle及达梦数据库提供了具体的SQL语句示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过一句sql实现:

1、表存在则删除;2、表不存在则创建;

 

mysql:

drop table if exists `test`;
create table if not exists `test` (`id` integer not null, `name` varchar(10), primary key(`id`));

 

sqlserver:

if exists (select count(*) from [sys].[schemas] S JOIN [sys].[tables] T ON S.schema_id = T.schema_id where S.name='ms-1')
drop table [ms-1];

if not EXISTS(select count(*) from [sys].[schemas] S JOIN [sys].[tables] T ON S.schema_id = T.schema_id where S.name='ms-1')
CREATE TABLE [ms-1] (
	[id] INTEGER not null,
	[name] VARCHAR(10),
	PRIMARY KEY([id]
);

 

 

oracle:

declare num number; 
begin
    select count(*) into num from all_tables where TABLE_NAME = 'tt-1' and OWNER='ODBC'; 
    if num=1 then 
        execute immediate 'drop table "tt-1"';
    end if;
end;

 

 

dameng:

同oracle。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值