对于各种流行的数据库系统,如何列出表中的所有列?
当前回答
例子:
select Table_name as [Table] , column_name as [Column] , Table_catalog as [Database], table_schema as [Schema] from information_schema.columns
where table_schema = 'dbo'
order by Table_name,COLUMN_NAME
只是我的代码
其他回答
Microsoft SQL Server Management Studio 2008 R2:
在查询编辑器中,如果突出显示表名的文本(例如dbo.MyTable)并点击ALT+F1,您将得到列名、类型、长度等的列表。
ALT+F1,同时高亮dbo。MyTable相当于运行EXEC sp_help 'dbo。MyTable”
我无法获得查询INFORMATION_SCHEMA的变体。列来工作,所以我用这个代替。
对于mssql Server:
select COLUMN_NAME from information_schema.columns where table_name = 'tableName'
对于MySQL,使用:
DESCRIBE name_of_table;
这也适用于Oracle,只要你使用SQL*Plus,或Oracle的SQL Developer。
只是对SQL Server中的其他选项做了一点小小的修正(模式前缀变得越来越重要了!):
SELECT name
FROM sys.columns
WHERE [object_id] = OBJECT_ID(N'dbo.tablename');
在MS SQL Server中调用以下代码:
sp_columns [tablename]
推荐文章
- 选项(RECOMPILE)总是更快;为什么?
- 设置数据库从单用户模式到多用户
- oracle中的RANK()和DENSE_RANK()函数有什么区别?
- 我如何转义一个百分比符号在T-SQL?
- SQL Server恢复错误-拒绝访问
- 警告用户/local/mysql/data目录不属于mysql用户
- 的类型不能用作索引中的键列
- SQL逻辑运算符优先级:And和Or
- 如何检查一个表是否存在于给定的模式中
- 添加一个复合主键
- 如何在SQL Server Management Studio中查看查询历史
- 无法添加或更新子行:外键约束失败
- 如何从本地机器mysqldump远程数据库
- SQL Server索引命名约定
- 可以为公共表表达式创建嵌套WITH子句吗?