SQL语句获取所有数据库名、表名、字段名、表字段长度
获取数据库中所有的表
SELECT SysObjects.name AS Tablename FROM sysobjects WHERE xtype = 'U'
获取数据库中所有表的列名
SELECT SysColumns.name AS Columnsname, SysObjects.name AS Tablename FROM
SysObjects, SysColumns WHERE Sysobjects.Xtype='u'AND Sysobjects.Id=Syscolumns.Id
获取SQL所有数据库名、所有表名、所有字段名、表字段长度
1.获取MSSQL中的所有数据库名:
SELECT name FROM MASter..SysDatabASes ORDER BY name
2.获取MSSQL中的所有用户表名:
SELECT name FROM DatabASename..SysObjects WHERE XType='U' ORDER BY name
XType='U':表示所有用户表;
XType='S':表示所有系统表;
3.获取指定表[tb_phone]的所有字段名:
SELECT name FROM SysColumns WHERE id=Object_Id('tb_phone')
4.SQL所有表的表名、所有字段名、表字段长度
SELECT table_name AS 数据表名,
column_name AS 字段名,
ISNULL(column_default,'') AS 默认值,
is_nullable AS 是否允许为NULL,
data_type AS 数据类型,
ISNULL(ISNULL(ISNULL(character_maximum_length,numeric_precision),datetime_precision),1) AS 类型长度
FROM information_schema.columns
WHERE NOT table_name IN('sysdiagrams','dtproperties')
column_name AS 字段名,
ISNULL(column_default,'') AS 默认值,
is_nullable AS 是否允许为NULL,
data_type AS 数据类型,
ISNULL(ISNULL(ISNULL(character_maximum_length,numeric_precision),datetime_precision),1) AS 类型长度
FROM information_schema.columns
WHERE NOT table_name IN('sysdiagrams','dtproperties')
5.获取指定表[tb_phone]的表名,表字段名,字段类型和类型长度
SELECT SysObjects.name AS Tablename,
Syscolumns.name AS Columnsname,
Systypes.name AS DateType,
Syscolumns.length AS DateLength
FROM Sysproperties RIGHT OUTER JOIN
Sysobjects INNER JOIN
Syscolumns ON Sysobjects.id = Syscolumns.id INNER JOIN
Systypes ON Syscolumns.xtype = Systypes.xtype ON
Sysproperties.id = Syscolumns.id AND
Sysproperties.smallid = Syscolumns.colid
WHERE (Sysobjects.xtype = 'u' OR
Sysobjects.xtype = 'v') AND (Systypes.name <> 'Sysname') AND
(Sysobjects.name = 'tb_phone')
ORDER BY Columnsname
Syscolumns.name AS Columnsname,
Systypes.name AS DateType,
Syscolumns.length AS DateLength
FROM Sysproperties RIGHT OUTER JOIN
Sysobjects INNER JOIN
Syscolumns ON Sysobjects.id = Syscolumns.id INNER JOIN
Systypes ON Syscolumns.xtype = Systypes.xtype ON
Sysproperties.id = Syscolumns.id AND
Sysproperties.smallid = Syscolumns.colid
WHERE (Sysobjects.xtype = 'u' OR
Sysobjects.xtype = 'v') AND (Systypes.name <> 'Sysname') AND
(Sysobjects.name = 'tb_phone')
ORDER BY Columnsname
6.修改字符集
ALTER DATABASE DB001 COLLATE SQL_Latin1_General_CP437_CS_AS
7. 获取所有字段名:
Select Name from SysColumns Where id=Object_Id('TableName')
8. 查看与某一个表相关的视图、存储过程、函数
select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%TableName%'
9. 查询某一个表的字段和数据类型
select column_name,data_type from information_schema.columns where table_name = N'TableName'
10. 获取数据库文件路径select ltrim(rtrim(filename)) from dbname ..sysfiles where charindex('MDF',filename)>0
or
select ltrim(rtrim(filename)) from dbname ..sysfiles where charindex('LDF',filename)>0
11.获取表、类型、列、列长度、库
查询所有表 select Sysobjects.Name from SysObjects
查询所有类型 select SysTypes.Name from SysTypes
查询所有列 select SysColumns.Name from SysColumns
查询列长度 select SysColumns.length from SysColumns
查询库 select * from master.dbo.sysdatabases order by dbid
查询所有类型 select SysTypes.Name from SysTypes
查询所有列 select SysColumns.Name from SysColumns
查询列长度 select SysColumns.length from SysColumns
查询库 select * from master.dbo.sysdatabases order by dbid
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器