MySQL中数据表操作详解

作者:佚名 来源:cnfan.net 时间:2008-12-29 13:50:00 

使用MySQL,目前你可以在三种基本数据库表格式间选择。当你创建一张表时,你可以告诉MySQL它应该对于表使用哪个表类型。MySQL将总是创建一个.frm文件保存表和列定义。视表类型而定,索引和数据将在其他文件中存储。

你能用ALTER TABLE语句在不同类型的表之间变换。

MyISAM

在MySQL 3.23中,MyISAM是缺省表格类型,它是基于ISAM代码并且有很多有用的扩展。索引存储在一个有.MYI(MYindex)扩展名的文件并且数据存储在有.MYD(MYData)扩展名的文件中。你能用myisamchk实用程序检查/修复MyISAM表。

ISAM

你也可以使用放弃的ISAM。这将在不久消失,因为MyISAM是同一个东西的更好实现。ISAM使用一个B-tree索引,这个索引存储在一个有.ISM扩展名的文件中并且数据存储在有.ISD扩展名的文件中,你可用isamchk实用程序检查/修复ISAM表。ISAM表不是跨OS/平台二进制可移植的。

HEAP

HEAP表格使用一个杂凑(hashed)索引并且存储在内存中。这使他们更快,但是如果MySQL崩溃,你将失去所有存储的数据。HEAP作为临时表很可用!

用SHOW/ DESCRIBE语句显示数据表的信息

句法:

SHOW TABLES [FROM db_name] [LIKE wild]

or SHOW COLUMNS FROM tbl_name [FROM db_name] [LIKE wild]

or SHOW INDEX FROM tbl_name [FROM db_name]

or SHOW TABLE STATUS [FROM db_name] [LIKE wild]

{DESCRIBE | DESC} tbl_name {col_name | wild}

你能使用db_name.tbl_name作为tbl_name FROM db_name句法的另一种选择。

SHOW TABLES列出在一个给定的数据库中的表。你也可以用mysqlshow db_name命令得到这张表。

注意:如果一个用户没有一个表的任何权限,表将不在SHOW TABLES或mysqlshow db_name中的输出中显示。

SHOW COLUMNS列出在一个给定表中的列。如果列类型不同于你期望的是基于CREATE TABLE语句的那样,注意,MySQL有时改变列类型。

DESCRIBE语句提供了类似SHOW COLUMNS的信息。DESCRIBE提供关于一张表的列的信息。col_name可以是一个列名字或包含SQL的“%”和“_”通配符的一个字符串。这个语句为了与 Oracle 兼容而提供的。

SHOW TABLE STATUS(在版本3.23引入)运行类似SHOW STATUS,但是提供每个表的更多信息。你也可以使用mysqlshow --status db_name命令得到这张表。

SHOW FIELDS是SHOW COLUMNS一个同义词,SHOW KEYS是SHOW INDEX一个同义词。

你也可以用mysqlshow db_name tbl_name或mysqlshow -k db_name tbl_name 列出一张表的列或索引。

SHOW INDEX以非常相似于ODBC的SQLStatistics调用的格式返回索引信息。

使用mysqlshow 工具得到信息

下面简单介绍一下mysqlshow实用程序的用法,在得到数据库和表的信息上,使用起来非常方便。

得到已有数据库的列表:

shell> mysqlshow

列出某数据库db_name中已有的表:

shell> mysqlshow db_name

列出某数据库表db_name.tbl_name的结构信息:

shell>mysqlshow db_name tbl_name

列出一张表的索引:

shell> mysqlshow –k db_name tbl_name

标签:
0
投稿

猜你喜欢

  • ASP中使用FileSystemObject时提高性能的一个小技巧

    2008-06-08 13:09:00
  • 轻松在线制作各种Logo标志

    2008-05-26 12:54:00
  • SQL 比较一个集合是否在另一个集合里存在的方法分享

    2011-12-01 10:19:26
  • swfobject2.1居中问题

    2008-12-15 17:18:00
  • 聚族索引、非聚族索引、组合索引的含义和用途

    2010-07-02 21:51:00
  • 简析 IOS 程序图标的设计

    2011-04-28 09:39:00
  • 在线HTML编辑器原理(eweb原理)

    2009-01-08 12:25:00
  • asp HTTP_X_FORWARDED_FOR和REMOTE_ADDR

    2010-07-02 12:33:00
  • WEB前端开发经验总结

    2009-07-20 18:01:00
  • Mysql Explain 详解

    2010-12-03 16:09:00
  • asp 静态页面的另一种思路

    2011-04-08 10:32:00
  • mysql数据库你需要特别注意的23个事项

    2010-08-08 08:34:00
  • 查看Oracle的执行计划一句话命令

    2010-07-16 13:02:00
  • FrontPage2002简明教程一:安装与界面

    2008-08-17 11:04:00
  • SQL Server小知识:Processor Affinity

    2008-11-24 20:50:00
  • 形象化的reflow

    2008-06-08 13:33:00
  • 在Oracle网络结构解决连接问题

    2010-07-28 12:49:00
  • 关于Ajax responseText 中文乱码问题

    2008-02-12 16:30:00
  • 认识MySQL数据库对服务器端光标的限制

    2009-03-25 17:35:00
  • xml文件调用css

    2008-09-05 17:12:00
  • asp之家 网络编程 m.aspxhome.com