当前位置:首页 > PHP教程 > PHP总结归纳

查询sqlserver所有表并改变其架构

查询所有的数据库 select [name] from [sysdatabases] order by [name] 查询一个数据库中的所有表 select [id], [name] from [sysobjects] where [type] = 'u' 都知道[type] = 'u' 是用户表,[type] = 's'是系统表吧。 根据上个语句的查询结果然后再 查询一

  查询所有的数据库

  select [name] from [sysdatabases] order by [name]

  查询一个数据库中的所有表

  select [id], [name] from [sysobjects] where [type] = 'u'

  都知道[type] = 'u' 是用户表,[type] = 's'是系统表吧。

  根据上个语句的查询结果然后再

  查询一个表中的所有字段(我尝试不用[id],而用[name]去查,,结果报错了)

  select [name] from [syscolumns] where [id] = 1931153925

  以上是查询所有表:

  以下是改变所有表架构:

  在数据库testdb中存在架构a及用户a,现将testdb数据库所属的用户由a改为b,同时删除用户a;架构也由a改为b,删除架构a,操作如下:

  1、创建用户b,再创建架构b;

  2、将架构a的权限赋给用户b,取消用户a拥有架构a的权限,删除用户a;

  3、将数据库的所有属于架构a的对象改为架构b,代码如下:

  alter schema [新架构名] transfer 旧架构名。[数据库中的对象表或视图或存储过程]

  alter schema [b] transfer a.[对象1]

  alter schema [b] transfer a.[对象2]

  alter schema [b] transfer a.[对象n]

  4、删除架构a.

  如:

  alter schema dbo transfer danxiao1.ds_city1


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!