数据库表的操作
每个MySQL数据库是由一或多个表组成的。这些将数据组织成行或列的表格是将数据进行组织的表格。
下面是一个典型表格看起来的样子的例子:
+----+-----------+----------+
| id | country | animal |
+----+-----------+----------+
| 1 | America | eagle |
| 2 | China | dragon |
| 3 | England | lion |
| 4 | India | tiger |
| 5 | Australia | kangaroo |
| 6 | Norway | elk |
+----+-----------+----------+
就像你所看到的,一个表格将数据分为多行,每行都有一个新条目(或记录)。每行数据又进一步分解成单元格(或字段),每个单元格包含了一个用于数据特定属性的值。举例而言,如果你考虑国家“India”的记录,你会看到该记录被清楚的分割成用于记录号、国家名和民族动物的独立的字段。
表格内的行并没有按照特定的顺序来排列 (它们可以按照字母表顺序、按照号码、按照名字或按照你指定的任意其他准则来排序)。因此,有必要用某种方法来识别表中的一特定纪录。在上述例子中,每个记录是用一个唯一的数字所标示的;这个唯一的字段被称作该表的关键字段。
你使用结构化查询语言SQL来与MySQL服务器交互作用,然后告诉其创建表格、将某个字段标记为关键字段、插入记录、编辑记录、检索记录,等等。基本上,涉及操作数据或数据库的任何活动。为了理解它是如何工作的,请研究下述SQL代码,该代码创建了上述表格:
CREATE DATABASE testdb; CREATE TABLE `symbols` ( `id` int(11) NOT NULL auto_increment, `country` varchar(255) NOT NULL default '', `animal` varchar(255) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM; INSERT INTO `symbols` VALUES (1, 'America', 'eagle'); INSERT INTO `symbols` VALUES (2, 'China', 'dragon'); INSERT INTO `symbols` VALUES (3, 'England', 'lion'); INSERT INTO `symbols` VALUES (4, 'India', 'tiger'); INSERT INTO `symbols` VALUES (5, 'Australia', 'kangaroo'); INSERT INTO `symbols` VALUES (6, 'Norway', 'elk');
你可以通过MySQL命令行客户端程序以交互式或非交互式的模式来输入这些命令,该命令行客户端程序可以通过在你的shell命令解释器或者DOS窗口导航到mysql/bin目录然后键入(不需要“;”,因为这是shell命令)mysql或者mysql db_name(如果你打算选择使用一个已经存在的数据库)来运行。SQL非常类似于英语口语,因此不会花去你太多的时间去学会它。不要试图将那些反引号运算符转变为单引号标记。
一旦数据被导入,运行一条快捷的查询语句以检查所有的一切都工作的很好:
mysql> SELECT * FROM `symbols`;在英语中,上述查询表示:“向我展示名为symbols表格的所有记录“。如果你看到的结果和上面的一样,那么很好继续下去!
+----+-----------+----------+
| id | country | animal |
+----+-----------+----------+
| 1 | America | eagle |
| 2 | China | dragon |
| 3 | England | lion |
| 4 | India | tiger |
| 5 | Australia | kangaroo |
| 6 | Norway | elk |
+----+-----------+----------+
6 rows in set (0.06 sec)