mssql查询特定表&列是否存在

一、sql server中

1、表

 IF [NOT] EXISTS (select count(*) from sysobjects where id=object_id('表名') and type = 'U')

;

go

2、列

IF [NOT] EXISTS(select count(*) from sysobjects T1 INNER JOIN SYSCOLUMNS T2 ON T1.id = T2.id

where T1.name='表明' AND T2.name='列名')

;

go

二、oracle中

注意oracle表明和列名,必须使用大写,sql server默认是小写

1、表

declare
    num number;
begin
  select count(1) into num  from all_tables where TABLE_NAME='表名'
      and OWNER='属主';
  
  if num=1 then
    dbms_output.put_line('找到了');
  end if;
end;

2、列增加缩进

select count(*)from user_tab_columns where table_name=upper('表名')
and column_name='列名';

 

你可能感兴趣的:(MSSQL)