1、获取所有用户名:
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 Name 3、获取所有表名:
Select Name FROM DatabaseName..SysObjects Where XType='U' orDER BY Name
XType='U' :表示所有用户表;
XType='S' :表示所有系统表; 4、获取所有字段名:
Select Name FROM SysColumns Where id=Object_Id('表名'') 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
字段名=rtrim(b.name),
主键=CASE WHEN h.id IS NOT NULL THEN 'PK' ELSE '' END,
字段类型=type_name(b.xusertype)+CASE WHEN b.colstat&1=1 THEN '[ID(' + CONVERT(varchar, ident_seed(a.name))+','+CONVERT(varchar,ident_incr(a.name))+')]' ELSE '' END,
长度=b.length,
允许空=CASE b.isnullable WHEN 0 THEN 'N' ELSE 'Y' END,
默认值=isnull(e.text, ''),
字段说明=isnull(c.value, '')
FROM sysobjects a, syscolumns b
LEFT OUTER JOIN sysproperties c ON b.id = c.id AND b.colid = c.smallid
LEFT OUTER JOIN syscomments e ON b.cdefault = e.id
LEFT OUTER JOIN (Select g.id, g.colid FROM sysindexes f, sysindexkeys g Where (f.id=g.id)AND(f.indid=g.indid)AND(f.indid>0)AND(f.indid<255)AND(f.status&2048)<>0) h ON (b.id=h.id)AND(b.colid=h.colid)
Where (a.id=b.id)AND(a.id=object_id('要查询的表')) --要查询的表改成你要查询表的名称
orDER BY b.colid 程序代码
Select
表名=case when a.colorder=1 then d.name else '' end,
表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,
字段序号=a.colorder,
字段名=a.name,
标识=case when COLUMNPROPERTY(a.id,a.name,'IsIdentity')=1 then '√' else '' end,
主键=case when exists(Select 1 FROM sysobjects where xtype='PK' and name in (Select name FROM sysindexes Where indid in(Select indid FROM sysindexkeys Where id=a.id AND colid=a.colid))) then '√' else '' end,
类型=b.name,
字段长度=a.length,
占用字节数=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允许空=case when a.isnullable=1 then '√'else '' end,
默认值=isnull(e.text,''),
字段说明=isnull(g.[value],'')
FROM syscolumns a
left join systypes b on a.xusertype=b.xusertype
inner join sysobjects d on (a.id=d.id)and(d.xtype='U')and(d.name<>'dtproperties')
left join syscomments e on a.cdefault=e.id
left join sysproperties g on (a.id=g.id)and(a.colid=g.smallid)
left join sysproperties f on (d.id=f.id)and(f.smallid=0)
--where d.name='要查询的表' --如果只查询指定表,加上此条件
order by a.id,a.colorder

  

SQL SERVER 语法的更多相关文章

  1. MySQL基本语法(一):和SQL Server语法的差异小归纳

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  2. Access与SQL Server 语法差异

    序号 简述 Access语法 SqlServer语法 Oracle语法 解决方案 01 系统时间 Now(),Date() GETDATE() SYSDATE GetSysTimeStr 02 连接字 ...

  3. ORACLE与SQL SERVER语法区别

    一.数据类型 ORACLE与SQL SERVER在数据类型的对比如下: SQL SERVER ORACLE 数字类型 DECIMAL[(P[, S])] NUMBER[(P[, S])] NUMERI ...

  4. SQL SERVER 语法汇总

    一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备 ...

  5. SQL Server 语法大全

    SQL语句参考,包含Access.MySQL 以及 SQL Server 基础 创建数据库 CREATE DATABASE database-name 删除数据库 drop database dbna ...

  6. SQL Server语法入门

    1.说明:增加.删除一个列 Alter table tablename add columnName col type alter table tablename drop columnName co ...

  7. sql server 语法 MSDN

    https://docs.microsoft.com/en-us/sql/t-sql/statements/create-view-transact-sql

  8. Net链接Sql Server语法

    1.登录名.密码链接 </system.web> <appSettings> <!--<add key="MSSqlConnectionString&qu ...

  9. SQL Server 语法注意

    1.order by select a1,a1 from  temp order by a1 此语句在高版本中执行提示a1列名不明确,在低版本中执行成功!

随机推荐

  1. Linux编程之recvmsg和sendmsg函数

    recvmsg 和 sendmsg 函数 #include <sys/types.h> #include <sys/socket.h> ssize_t send(int soc ...

  2. mysql:启动服务时遇到的问题

    1.cmd命令: 在切换路径时,如果要切到另外一个磁盘,比如从C盘切到E盘,命令如下: cd /d 你要切换的路径 2.错误:“服务名无效” 问题原因:mysql服务没有安装.(参考:https:// ...

  3. linux如何将某个用户加入到其它组?

    答: 在Ubuntu下可以使用以下命令添加: sudo usermod -a -G <group_name> <user_name> 注意: 如何生效呢?   需要重新登陆系统 ...

  4. LC 583. Delete Operation for Two Strings

    Given two words word1 and word2, find the minimum number of steps required to make word1 and word2 t ...

  5. [Java复习] 多线程 Multithreading

    Q1多线程基础 进程和线程? 进程: 1. 一段程序执行过程,动态的,相对而言程序是静态的.(与类和对象的关系类似) 2. CPU资源分配最小单元,包括CPU调度和资源管理. 3. 一个进程可以有多个 ...

  6. JPA,Hibernate,Spring Data JPA之间的关系

    什么么是JPA? 全称Java Persistence API(JAVA对象持久化API),可以通过注解或者XML描述[对象-关系表]之间的映射关系,并将实体对象持久化到数据库中. 为我们提供了: 1 ...

  7. JAVA 基础编程练习题5 【程序 5 判断分数等级】

    5 [程序 5 判断分数等级] 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90 分的同学用 A 表示,60-89 分之间的用 B 表示, 60 分以下的用 C 表示. 程序分析:(a&g ...

  8. k8s local volume 和host path volume的区别

    k8s提供多种volume接口,其中local 和host path是容易混淆的两个接口.下面这篇文章解释了两者的区别: https://groups.google.com/forum/#!topic ...

  9. dozer转化对象

    依赖: commons-beanutils-1.9.3.jar.commons-lang-2.6.jar.dozer-5.3.2.jar.jcl-over-slf4j-1.7.25.jar.slf4j ...

  10. vue后端返回路由表来进行权限管理,加载指定路由结构,不包含则不加载

    创建vue项目,配置环境变量,后续需要用到.这里只配置生产环境和开发环境. 项目根目录创建 .env.production 文件 NODE_ENV=production VUE_APP_URL=htt ...