首页 新闻 搜索 专区 学院

sql server 使用T-SQL 生成已有表的创建语句

0
悬赏园豆:5 [已解决问题] 解决于 2015-07-07 16:40

问题就是

 

数据库中已经有表存在了

如果通过 t-sql 语句 来生成 创建表的语句

问题补充:

是这样的, 由于某些原因  自己没有服务器的远程登录账号,所以自己做了个web页面,可以运行 sql 语句的。

 

而服务器上的 数据库表  比我本地环境的表 要全(也就是说本地的表不全)

那么遇到本地 表不全的情况,自己肯定是要在本地创建表才行啊

其实通过 访问  sys.tables  sys.columns sys.types 这些系统表 可以获取我想要的表的元数据,但是太麻烦了

 

所以想知道 t-sql 有没有方法

通过sql 语句 直接 对已存在的表生成 创建语句 (create table)这样的语句

算了的主页 算了 | 初学一级 | 园豆:3
提问于:2015-07-07 14:04
< >
分享
最佳答案
0

不关心数据的话,先删除表,再创建表。

收获园豆:4
幻天芒 | 高人七级 |园豆:36910 | 2015-07-07 14:16

这个 ,不是想要 创建表,, 是想要创建表 sql 语句。

算了 | 园豆:3 (初学一级) | 2015-07-07 16:25

 想要 通过 t-sql存在的表 生成  创建表的sql语句

算了 | 园豆:3 (初学一级) | 2015-07-07 16:30

@算了: 你可以写个存储过程,通过sys.tables  sys.columns sys.types 这些系统表提供的元数据,来构建建表语句哇。

幻天芒 | 园豆:36910 (高人七级) | 2015-07-07 16:32

@幻天芒: 好吧,看来是没有更直接的办法了。  目前也只能这么办了  3Q

算了 | 园豆:3 (初学一级) | 2015-07-07 16:40

@算了: 似乎可以调用sql management自己的组件,不过要去找到第是哪个dll。

幻天芒 | 园豆:36910 (高人七级) | 2015-07-07 17:09
其他回答(1)
0

if exists (select * from sysobjects where id = OBJECT_ID('[tablename]') and OBJECTPROPERTY(id, 'IsUserTable') = 1)
DROP TABLE [tablename]

CREATE TABLE [tablename]

........

收获园豆:1
_Vegetables | 园豆:582 (小虾三级) | 2015-07-07 14:27

想要 通过 t-sql 为已存在的表 生成  创建表的sql语句

 

不是要判断表是否存在  也不是要删除表之后重新创建【你没看懂我的问题】

支持(0) 反对(0) 算了 | 园豆:3 (初学一级) | 2015-07-07 16:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册