1.
  select * into 新表名 from 表 where 1<>1
2.
if object_id('表名') is null --is null 不存在  is not null 存在

解决方案 »

  1.   

    select * into newtable from bselect * from sysobjects where id=object_id('表名')
      

  2.   

    1\ select top 0 * into bb from aa
    2\ if exists(select 1 from sysobjects where name='ss') print 'exists' else print 'not exists'
      

  3.   

    if exists(select   *   from   sysobjects   where   id=object_id('表名'))
    print '存在'
    else 
    print '不存在'
      

  4.   

    --1.用一个已存在的表创建另一个表 
    select * into 另一个表名 from 已存在的表名
    -- where 1=2                               --如果不需要复制数据,加这一句--2.如何判断一个表是否存在? 
    if exists (select * from dbo.sysobjects where id = object_id(N'[TAB]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
       print 'TAB存在'
    else
       print 'TAB不存在'
      

  5.   

    --1.但不包含主键、外键、缺省值、触发器什么的,如果要这些,就通过sysobjects表获取相应的对象,自己创建。
      select * into 新表名 from 表 where 1<>1
    --2.可以判断表是否存在。
    select   *   from   sysobjects   where   id=object_id('表名')
      

  6.   

    我来问答第二个问题吧,比如要把sysobjects的表结构复制到表tmpxselect  * into tmpx from sysobjects where id<1 
      

  7.   

    楼上的方法基本可行,但不完全正确。
    1.select ..into 只能拷贝一些东西,有很多东西无法拷贝到。一些约束可能不行,自己可以测试,一般建立临时表才用,正常情况要生成SQL再改表名,再生成新表。
    2.把一个表生成一个SQL创建语句,最开头的地方就有exists范例。=======================================
    powerbuilder11&SQL QQ群请加:6539042