如何才能在SQL查询器中使用语句查询出表的列名及数据类型(包括类型和长度)

select
 a.Name as 表名,
 b.Name as 列名,
 c.Name as 类型,
 b.max_length as 字节数,
 b.Precision as 整数位,
 b.Scale as 小数位
from Sys.tables a
 inner join Sys.columns b on a.object_id=b.object_id
 inner join sys.Types c on c.User_Type_ID=b.User_Type_ID
时间: 2024-08-03 13:04:11

如何才能在SQL查询器中使用语句查询出表的列名及数据类型(包括类型和长度)的相关文章

转发:使用sql命令查询视图中所有引用的基础表

转自:使用sql命令查询视图中所有引用的基础表 使用sql命令查询视图中所有引用的基础表 之前有写过如何利用sql查询视图中所有引用的表发现这个方法并不能查出视图中所有的基础表,如果视图中有嵌套视图就会有问题,因为目录视图sys.sql_dependencies并不包含所有的引用实体.后面发现在sql2008及以后的版本中推出的sys.sql_expression_dependencies视图解决了这一问题,所以重新写了段sql,用来查询视图中所有引用的基础表,包括嵌套视图中的基础表.这个有什么

SQL 查询所有表名、字段名、类型、长度、存储过程、视图

-- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.id where xtype ='p' order by o.xtype,o.name,cm.text -- 获得视图程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i

查询所有表名、字段名、类型、长度 和 存储过程、视图 的创建语句

-- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.id where xtype ='p' order by o.xtype,o.name,cm.text -- 获得视图程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i

SQL Sever数据库中 T-sql语句的使用(增、删、改、查)

SQL中的增.删.改.查 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:insert into Students (姓名,性别,出生日期) values ('王伟华','男','1983/6/15')  注意:如果省略表名,将依次插入所有列 2.使用insert,select语句将现有表中的 数据添加到已有的新表中 语法:insert into <已有的新表> <列名>

Sql中获取表结构(字段名称,类型,长度,说明)

在写代码生成器的时候遇到这样一个问题,想在搭建好数据库后把字段说明当做注释写进类文件里,所以我们在网上搜索到了许多代码很长很长的方法(当然我的代码也很长),亲测了一条简单易懂的语句,也是大多数转载的方法: SELECT TableName = OBJECT_NAME(c.object_id), ColumnsName = c.name, Description = ex.value, ColumnType=t.name, Length=c.max_length FROM sys.columns

SQl查询数据库表名、表的列名、数据类型、主键

1.获取所有数据库名:     2.Select Name FROM Master..SysDatabases order by Name   3.  4.2.获取所有表名:   5.   (1)  6.Select Name FROM SysObjects Where XType='U' orDER BY Name   7.           XType='U':表示所有用户表;   8.           XType='S':表示所有系统表;  9.   (2)  10.SELECT n

sql serve数据库中对in查询到的数据排序

SELECT    * , ROW_NUMBER() OVER ( ORDER BY ffavoriteid ) AS numFROM      V_EBFavorite_TransportWHERE     FStatus IN ( 2, 1, 4 )                  ORDER BY CHARINDEX(RTRIM(CAST(FStatus AS VARCHAR(30))), '2, 1, 4')

关于SQL中Between语句查询日期的问题

在CSDN找到了相同的问题描述和解决方法: 问题: 我的表某个字段是Datetime型 以" YYYY-MM-DD 00:00:00" 存放 如 A 2009-01-22 21:22:22 B 2009-01-22 19:21:11 C 2009-01-22 23:10:22 现在用 select * from TABLE where date between '2009-1-22' And '2009-1-22' 想查日期为2009-1-22的记录 结果查不到 有什么办法吗 解决:

在Microsoft SQL Server 2008中,将一张表的某列字段的值转换为列名称

create table test (部门 varchar(10), 客户 varchar(10), 费用名称 varchar(10), 金额 int)   insert into test values ('A','a','手机费',10) insert into test values ('A','a','办公费',11) insert into test values ('A','a','公交费',9) insert into test values ('A','b','手机费',10)