检查表是否存在sql服务器
  可能重复: 
  SQL Server:检查表是否存在 
我正在使用Java和MS SQL Server 2008,我只想在检查数据库中是否存在它之后才创建表。
 public void addTestTable(){
  jdbcTemplate.execute(
            "create table [mydatabase].[dbo].[test] (ID integer not null identity, CREATEDBY varchar(50), CREATEDAT datetime, TITLE varchar(50), NRQUEST int, FORGROUP int, primary key(id))"
            );
}
这是我的createTable函数,我需要另一个布尔函数来检查表是否已经存在,但我不知道如何为它编写sql语句。 任何人都可以帮我吗?
IF OBJECT_ID('tablename','U') is not null
-- table exists 
要么
SELECT *
   FROM sys.tables
   WHERE name = 'mytable'
   AND schema_id = SCHEMA_ID('myschema')
if not exists(select 1 from sys.tables where name ='test' and schema_id = SCHEMA_ID('dbo'))
begin
  create table [dbo].[test] (ID integer not null identity, CREATEDBY varchar(50), 
  CREATEDAT datetime, TITLE varchar(50), NRQUEST int, FORGROUP int, primary key(id)) 
  print 'table created'
end
go
IF NOT EXISTS (SELECT * 
                 FROM INFORMATION_SCHEMA.TABLES 
                 WHERE TABLE_SCHEMA = 'testSchema' 
                 AND  TABLE_NAME = 'testTable')
BEGIN
    --create table
END
上一篇: check if table exists sql server
下一篇: How do you use SQL to see whether a table exists or not?
