mysql - 在MySQL中查询系统数据

标签 mysql sql-server database

我正在尝试在 MySQL 中查找列名。

我在 SQL Server 中使用类似这样的东西:

SELECT
  sysobjects.name AS table_name, 
  syscolumns.name AS column_name, 
  systypes.name AS datatype, 
  syscolumns.LENGTH AS LENGTH
FROM sysobjects 
INNER JOIN
  syscolumns ON sysobjects.id = syscolumns.id 
INNER JOIN
  systypes ON syscolumns.xtype = systypes.xtype
WHERE (sysobjects.xtype = 'U')
AND (UPPER(syscolumns.name) like upper('%code%'))
ORDER BY sysobjects.name, syscolumns.colid

它返回一个表列表及其列,以及每一列的数据类型和长度。在 SQL Server 中,此信息存储在 sysobjectssyscolumnssystypes 表中。我在哪里可以找到 MySQL 中的类似信息?

最佳答案

在MySQL中可以通过Information Schema查询类似的信息

SELECT * FROM INFORMATION_SCHEMA.TABLES 
SELECT * FROM INFORMATION_SCHEMA.COLUMNS 

注意仅适用于 MySQL 5.0 或更高版本,这是有关 MySQL 中信息模式的完整文档 (http://dev.mysql.com/doc/refman/5.1/en/information-schema.html)

关于mysql - 在MySQL中查询系统数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21171581/

相关文章:

sql - 设置连接超时也会终止服务器端的查询吗?

php - PDO和缓存,如何在数据库类中实现?

c# - 奇怪的字符串格式+来自mysql中文件上传的路径名

php - php 中的 MySQLdump 导出 0 大小

mysql - SELECT WITH LEFT JOIN 和 WHERE 子句

c# - 无法在对象 'dbo.Account' 中插入重复键。重复键值为 (2)

c# - SQL Server 删除数据库失败

java - 从 mysql 插入时出错

定义 INNER JOIN 表时 MySQL 存储函数语法错误

php mysql 非平凡表是什么意思?