SQL获取所有用户名,数据库名、所有表名、所有字段名及字段类型2009-03-14 10:481.获取所有用户名:SELECT name FROM Sysusers where status='2' and islogin='1'islogin='1'表示帐户islogin='0'表示角色status='2'表示用户帐户status='0'表示糸统帐户2.获取所有数据库名:SELECT Name FROM Master..SysDatabases ORDER BY Name3.获取所有表名SELECT Name FROM DatabaseName..SysObjects Where XType='U' ORDER BY NameXType='U':表示所有用户表;XType='S':表示所有系统表;4.获取所有字段名:SELECT Name FROM SysColumns WHERE id=Object_Id('TableName')5.获取数据库所有类型select name from systypes 6.获取主键字段SELECT   name FROM SysColumns WHERE id=Object_Id('表名') and colid=(select top 1 keyno from sysindexkeys where id=Object_Id('表名'))

7、获取字段类型

select a.name as [column],b.name as type from syscolumns a,systypes b where a.id=object_id('表名') and a.xtype=b.xtype或者可以通过存储过程exec sp_help 表名

8、取表结构

select column_name,data_type,character_maximum_length from information_schema.columns where table_name = '表名'

/****************************************************************************************************************************/

/*--获取连接SQL服务器的信息

所有连接本机的:操作的数据库名,计算机名,用户名,网卡物理地址,IP地址,程序名

--邹建 2003.11(引用请保留此信息)--*/

/*--调用示例--显示所有本机的连接信息exec p_getlinkinfo

--显示所有本机的连接信息,包含ip地址exec p_getlinkinfo @includeip=1

--显示连接指定数据库的信息exec p_getlinkinfo '客户资料'--*/create proc p_getlinkinfo@dbname sysname=null, --要查询的数据库名,默认查询所有数据库的连接信息@includeip bit=0 --是否显示IP地址,因为查询IP地址比较费时,所以增加此控制asdeclare @dbid intset @dbid=db_id(@dbname)

create table #tb(id int identity(1,1),dbname sysname,hostname nchar(128),loginname nchar(128),net_address nchar(12),net_ip nvarchar(15),prog_name nchar(128))insert into #tb(hostname,dbname,net_address,loginname,prog_name)select distinct hostname,db_name(dbid),net_address,loginame,program_name from master..sysprocesseswhere hostname<>'' and (@dbid is null or dbid=@dbid)

if @includeip=0 goto lb_show --如果不显示IP地址,就直接显示

declare @sql varchar(500),@hostname nchar(128),@id intcreate table #ip(hostname nchar(128),a varchar(200))declare tb cursor local for select distinct hostname from #tbopen tbfetch next from tb into @hostnamewhile @@fetch_status=0beginset @sql='ping '+@hostname+' -a -n 1 -l 1'insert #ip(a) exec master..xp_cmdshell @sqlupdate #ip set hostname=@hostname where hostname is nullfetch next from tb into @hostnameend

update #tb set net_ip=left(a,patindex('%:%',a)-1)from #tb a inner join (select hostname,a=substring(a,patindex('Ping statistics for %:%',a)+20,20) from #ipwhere a like 'Ping statistics for %:%') b on a.hostname=b.hostname

lb_show:select   id,dbname as '数据库名',hostname as '客户机名',loginname as '用户名'  ,net_address as '网卡物理地址',net_ip as 'IP地址',prog_name as '应用程序名称'   from   #tb

go  

转自:http://blog.csdn.net/painss/article/details/4324973

转载于:https://www.cnblogs.com/zerocc/archive/2012/01/17/2324640.html

SQL获取所有用户名,数据库名、所有表名、所有字段名及字段类型相关推荐

  1. SQL Sever如何建立数据库,建立表,插入数据并进行查询语句操作

    SQL Sever如何建立数据库,建立表,插入数据并进行查询语句操作 1.在左侧列表中右键单击数据库,新建数据库,输入你希望的数据库名称,在这里我建立了一个名为MyTest的数据库. 2.点击新建查询 ...

  2. Database之SQL:自定义创建数据库的各种表demo集合(以方便理解和分析sql的各种增删改查语法的具体用法)

    Database之SQL:自定义创建数据库的各种表demo集合(以方便理解和分析sql的各种增删改查语法的具体用法) 目录 自定义创建数据库的各种表demo集合 具体案例 1.学生信息数据表案例

  3. 如何用SQL语句模糊查询数据库中的表名

    有时候,数据库中的表名太多,而你又不是清楚地记得表名,那么你可以用下面SQL语句,模糊地查询你想要的表名: select  table_name,tablespace_name,status,temp ...

  4. 在SQL Server中的数据库之间复制表的六种不同方法

    In this article, you'll learn the key skills that you need to copy tables between SQL Server instanc ...

  5. 【转载】通过SQL获取MSSQL的数据库相关信息收藏

    http://blog.csdn.net/lxbin/archive/2008/06/25/2586007.aspx --得到数据库中所有的表    SELECT SysObjects.name AS ...

  6. sql 基础语法 创建数据库和数据表 数据增删改查 分组查询 子查询回顾

    参考链接: SQL教程 MySQL教程 一.创建数据库语法 --用master数据库 use master --判断数据库是否存在,若存在则删除 if exists (select * from sy ...

  7. jtree和mysql_java 已经获取某个mysql数据库的所有表名 创建JTree

    展开全部 那只e68a843231313335323631343130323136353331333335303530能创建一层的JTree ?import java.sql.Connection; ...

  8. mysql 删除表记录的 存储过程命令_用SQL语句删除一个数据库的所有表和所有存储过程...

    如果数据库里有很多表和存储过程,要用手动鼠标右键一个个删除是很麻烦的,用SQL语句来删除就方便很多了 删除所有的表: 如果由于外键约束删除table失败,则先删除所有约束: --/第1步******* ...

  9. 如何用T—SQL命令查询一个数据库中有哪些表?

    1.查询SQL中的所有表:Select TABLE_NAME FROM 数据库名称.INFORMATION_SCHEMA.TABLES Where TABLE_TYPE='BASE TABLE'执行之 ...

最新文章

  1. 1亿数据 redis 内存_redis 存1亿数据库
  2. android webview tel:,Android WebView“tel:”和“mailto:”链接显示未找到网页
  3. SAP 与 JSON 接口实施案例一
  4. RocketMQ(五)——工作原理
  5. vue学习(9)-路由守卫
  6. NFC中国-中国第一NFC论坛,NFC中文论坛+NFC技术社区+NFC_电子发烧友网【申明:来源于网络】...
  7. html视图查看,视图.html · zhaohaihang/Semantic UI demo - Gitee.com
  8. fedora14安装
  9. 工商银行历年考试真题 银行校园招聘考试笔试资料
  10. 移动4g手机信号测试软件,中移动4G网络测试:网速快但信号不稳
  11. python数组增加维度_python – 为xarray DataArray添加维度
  12. Android toolchain - develop for Android devices
  13. 【JS代码提高--003】:JavaScript 生成间于最小值和最大值之间的随机数
  14. 微纳加工平台培训知识
  15. Android 学习(四)——Android Studio 页面跳转
  16. iOS开发之Xcode8:subsystem: com.apple.siri, category: Intents, enable_level: 1, persist_level: 1, defaul
  17. andorid中APN与SPN相关的设置相关
  18. CentOS虚拟化尝试
  19. 记录 || Python | 提取xml/tmx文件中的文本内容
  20. LPC2368FBD100芯片相关资料!

热门文章

  1. repmat--矩阵的复制和平铺
  2. 逻辑回归模型(Logistic Regression, LR)基础
  3. opencv运行时exe 无法写进去的解决方法
  4. DF以某一列的元素筛选其中属于某个集合的元素的所有行(2个版本函数)
  5. Python剑指offer:和为s的连续整数序列
  6. 可降阶的高阶微分方程
  7. 严蔚敏版《数据结构 (C语言版)》和《数据结构题集》(一)
  8. vue-router(2)
  9. NOIP2012 D2 T2借教室
  10. C#中格式化数据的输出