获取数据库元数据
上一篇 / 下一篇 2012-09-26 14:06:56 / 个人分类:数据库
MySQL提供几种办法以使获取关于数据库和数据库里各种对象(也就是数据库的元数据)的信息,如下:51Testing软件测试网z]Wserlq
51Testing软件测试网b@/jt%m1H1、SHOW语句,如SHOW TABLES等等。51Testing软件测试网A`Ip*S~8K
51Testing软件测试网PE(lPi4S&H2、INFORMATION_SCHEMA数据库里的数据表。51Testing软件测试网1n m0R@+?;xqRQ1x|
51Testing软件测试网8TBm_L3、命令行程序,如mysqlshow或者是mysqldump。
I+D _(n!v"o0/]5e8Q;oJ(A#N0 一、用SHOW语句获取
c"fU%@%?S4g0own-t FK0s/E0 获取服务器所管理的数据库。51Testing软件测试网tc5bK6l~.n_@-}e
SHOW DATABASES;51Testing软件测试网5jS1[3~2R
查看给定数据库的创建语句。
/N6jR5n7N+P1f'N0 SHOW CREATE DATABASE db_name;51Testing软件测试网`(c/{Uj4Zl#F(`
)C:f(N3bN'{e-H0 列出默认数据库里的所有数据表。51Testing软件测试网+O:z Os-tr
SHOW TABLES;51Testing软件测试网1Z
@4a%F,zT
:J0l0fI(`M0 列出给定数据库里的所有数据表。51Testing软件测试网9B"|V \ \I[
SHOW TABLES FROM db_name;
查看给定数据表的创建语句。51Testing软件测试网wJ ]$h$Z+o ia0\)hz
SHOW CREATE TABLE tbl_name;51Testing软件测试网n2kRA
z+`w
o"[p7zW4`9{ we/Z4m0 查看指定数据表的数据列和索引信息。
9z7YO)v+JU#d"x0 SHOW COLUMNS FROM tbl_name; 这个语句和DESC 的输出是一样的。51Testing软件测试网A ~.w7l*^k5H5?
SHOW INDEX FROM tbl_name;
3O\rqz;c0 有几种SHOW语句还可以带有LIKE 'pattern'子句,用来把SHOW语句的输出限定在给定范围,并且允许使用通配符号。51Testing软件测试网X+~Z&P]9p|
*bzV6BDD7u0 二、从INFORMATION_SCHEMA数据库获取元数据51Testing软件测试网#s:I]#JLL ?%e
8U#B!_)W0i0 可以将这个数据库看成一个虚拟的数据库,这个数据库里的数据表是一些由不同的数据库元素数据构成的视图,这个数据库里有以下数据表项:51Testing软件测试网b$Bt+K @M1O
mysql> show tables from information_schema;!oENlH8a`{Z0+---------------------------------------+
V/sc0rtMZ%l0| Tables_in_information_schema |
~Uv-FM jz0+---------------------------------------+51Testing软件测试网6m'OkNE6~
| CHARACTER_SETS |51Testing软件测试网E qz"i]V'fA%Q
| COLLATIONS |51Testing软件测试网8?RmjEj$b\
| COLLATION_CHARACTER_SET_APPLICABILITY |51Testing软件测试网!r!qh+l c-VAd
| COLUMNS |
a-@ XiA|z){A*|!D,r0| COLUMN_PRIVILEGES |51Testing软件测试网9F_0h2`sKW9P,sR.q
| ENGINES |51Testing软件测试网x|s6y)ytir
| EVENTS |51Testing软件测试网p5Ui ?Z,r9S
| FILES |
&K&U e l,|?0| GLOBAL_STATUS |
2}.[,O6K%}1yd0| GLOBAL_VARIABLES |
-OhN&c%?ZE-p^0| KEY_COLUMN_USAGE |51Testing软件测试网Hf,x}$xO#h
| PARTITIONS |
odh x.^]Cm0| PLUGINS |51Testing软件测试网*x-N~angd4r
| PROCESSLIST |51Testing软件测试网)LZ5Fs0j+N,o&?Z
| PROFILING |51Testing软件测试网r:g8ft[ {#c#y+[
| REFERENTIAL_CONSTRAINTS |