深圳升蓝软件
数据库开发 .Net技术  |  ASP技术 PHP技术 JSP技术 应用技术类   
Hiblue Software

跟着lanche学MySQL


March 25,2004
标 题: 跟着lanche学MySQL(1)  注意跟进!
安装MySQL,可能需要的rpm包有:
1、MySQL-3.22.xx.i386.rpm     MySQL服务器
2、MySQL-client-3.22.xx.i386.rpm  标准MySQL客户程序   
3、MySQL-bench-3.22.xx.i386.rpm  测试和基准程序  
4、MySQL-devel-3.22.xx.i386.rpm  库及包含文件
5、MySQL-3.22.xx.src.rpm      包含上 述所有包的源代码

通常只需安装前两个包就够:
rpm -ivh MySQL-3.22.*rpm MySQL-client*rpm

(注:本版不是给高手看的,不讲自己编译安装的麻烦事...)
--------------------------------------------------------------------------------
标 题: 跟着lanche学MySQL (2)

验证MySQL的运行
1、安装好MySQL后,其守护进程mysqld就应该已经运行,可用命令“ps -A”查看

2、运行如下命令以初始化授权表:mysql_install_db;
3、改变授权后可能需要手动启动服务器:safe_mysqld & 或 mysqld &;
4、运行命令进行验证:mysqladmin version,如果出现如下响应:
  mysqladmin Ver Distrib 3.22.x-bate,for pc-linux-gnu on i686
  TCX Datakonsult  AB,by Monty
  Server version  3.22.x-bate
  Protocol version 10
  Connection    Localhost via&nb sp;UNIX socket
  TCP port     3306
  UNIX socket    /tmp/mysql.sock
  Uptime:      20&nbs p;sec
  Running threads: 1 Questions:20 Reloads:2 Open&n bsp;tables:3
  就说明服务器已可正常启动。
5、关闭服务器:mysqladmin -u root shutdown;
6、看看是否能重启服务器:safe_mysqld & 或 mysqld & 。

--------------------------------------------------------------------------------
标 题: 跟着lanche学MySQL (3) 注意跟进! (三)

如果你已经可以正确地启动MySQL服务器,现在就来连接并开始使用它:
1、运行客户程序,开始连接服务器:mysql
  这是最简单的登录命令。MySQL使用一套不同于登录Linux时的帐号与口令,

  在我们的电脑上,因为没有系统管理员的约束(自己当),可以使用任何的

  帐号与口令:  mysql -h localhost -u user -ppasswd (注意 -p与口令

  间无空格)如果没有给出帐号与口令,则与当前登录Linux的帐号和口令相同

  为方便练习,我们暂时不要设口令。连接后出现提示mysql>,表示系统正等

  候命令。
2、看一看MySQL服务器上有哪些数据库:
  mysql>SHOW DATABASES;
  +-----------+
  | Database |
  +-----------+
  | mysql  |
  | test   |
  | tmp   |
  +-----------+
  3 row in set (0.01 sec)
  mysql>
  说明:一个语句由SQL命令组成,并以分号结束(有些命令例外,如退出命令

  QUIT/EXIT),关键词不区分大小写。如果未有分号就回车,将会出现->提示

  符,表示语句未完成,正等待分号:
  mysql>SHOW
    ->DATABASES;
  MySQL以表格的形式来显示返回结果,第一行是列标签(即我们所查询的条目
),
  其余行为查询结果,然后再显示有多少行返回结果及执行查询所需时间,完成

  后重新显示提示符,等候命令。上述命令显示服务器中已有三个数据库:tmp

  test、mysql,其中的mysql其实就是MySQL所建立的授权表。
3、今天暂时到这了,记得要断开连接哦:
  mysql>QUIT

--------------------------------------------------------------------------------
标 题: 跟着lanche学MySQL (4)... 注意跟进! (四)

1、连接到服务器后,我们可以自己建数据库了:
  mysql>CREATE DATABASE mydata;
  查看:
  mysql>SHOW DATABASES;
  +-----------+
  | Database |
  +-----------+
  | mydata  |
  | mysql  |
  | test   |
  | tmp   |
  +-----------+
  4 row in set (0.01 sec)
  mysql>
  注意:对于关键词如CREATE DATABASE不分区大小写,写成CReate dataBASE都

  是一样,但是库名mydata严格区分大小写。
2、打开数据库:
  mysql>USE mydata;
  Database changed
  查看有无表数据:
  mysql>SHOW TABLES;
  Empty set (0.00 sec)
  现在库中无表格。
3、建立表格:
  mysql>CREATE TABLE data (name char(8),sex char(2));
  上例建立名为data的表格,并有两个字段,分别是name(名字),字符型,长

  度8;sex(性别),字符型,长度为2。表名data分区大小写。
  此时再查看库中的表:
  mysql>SHOW TABLES;
  +-------------------+
  | Tables in mydata |
  +-------------------+
  | data      &n bsp; |
  +-------------------+
  查看表的结构:
  mysql>SHOW COLUMNS FROM mydata;
  +---------+-------------+------+-----+---------+-------+
  | Field  | Type   &n bsp; | Null | Key | Default | Extra |
  +---------+-------------+------+-----+---------+-------+
  | name  | char(8)   | YES |   | NULL  | &n bsp;   |
  | sex   | char(2)  & nbsp;| YES |   | NULL  |&nb sp;   |
  +---------+-------------+------+-----+---------+-------+
4、刚刚建立的表当然是空的了,我们来给它填入一些数据吧:
  mysql>INSERT INTO data VALUES ("刘大大","男");
  mysql>INSERT INTO data VALUES ("李小小","女");
5、来看看我们填了数据的表吧:
  mysql>SELECT * FROM data;
  +---------+------+
  | name  | sex |
  +---------+------+
  | 刘大大 | 男  |
  | 李小小 | 女  |
  +---------+------+
6、今天就到这吧,退出了:
  mysql>EXIT

--
--------------------------------------------------------------------------------
标 题: 跟着lanche学MySQL (7)! ... (七)

我们将利用(六)中讲过的MySQL语言来进行一些操作:

先回忆我们以前如何建立表mydata,并在其上建表mytable:
  shell# mysql     &n bsp;        &nb sp;    /*连接MySQL服务器*/

  mysql> CREATE DATABASE mydata;   & nbsp;      /*建立数据库mydata*/

  mysql> USE mydata;             & nbsp;  /*打开数据库mydata*/

  mysql> CREATE TABLE mytable (name varchar(8),
    -> sex char(2),birth date); &nbs p;       /*建立表 mytable*/
  mysql> INSERT INTO mytable VALUES ("李光明","男 ","1976.06.08");
  mysql> INSERT INTO mytable VALUES ("刘  力","女","1977.10.21");
        & nbsp;        &n bsp;        &nb sp; /*填入数据*/
  mysql> SELECT * FROM mytable;  &nb sp;       /*查询表 mytable*/
  其显示结果如下:
  +---------+------+------------+
  | name  | sex | birth&nbs p;  |
  +---------+------+------------+
  | 李光明 | 男  | 1976.06.08 |
  | 刘 力 | 女  | 1977.10.21 |
  +---------+------+------------+

下面将用刚学的语句给该表添点内容:

1、修改表:
  原表:
  +---------+------+------------+
  | name  | sex | birth&nbs p;  |
  +---------+------+------------+
  | 李光明 | 男  | 1976.06.08 |
  | 刘 力 | 女  | 1977.10.21 |
  +---------+------+------------+
  增加"党员"字段:
  mysql> ALTER TABLE mytable ADD member char(2);  /*增加字段*/
  mysql> SELECT * FROM mytable;  &nb sp;       /*查看表格 */
  +---------+------+------------+--------+
  | name  | sex | birth&nbs p;  | member |
  +---------+------+------------+--------+
  | 李光明 | 男  | 1976.06.08 |    |
  | 刘 力 | 女  | 1977.10.21 |    |
  +---------+------+------------+--------+
  修改原字段名称及类型:
  mysql> ALTER TABLE mytable CHANGE birth birthd ay date;
     /*上句仅修改字段名,字段类型仍用日期 型*/
  mysql> SELECT * FROM mytable;
  +---------+------+------------+--------+
  | name  | sex | birthday& nbsp; | member |
  +---------+------+------------+--------+
  | 李光明 | 男  | 1976.06.08 |    |
  | 刘 力 | 女  | 1977.10.21 |    |
  +---------+------+------------+--------+
  如果要删除某一字段,可用命令:ALTER TABLE mytable DROP 字段 名;

2、修改更新记录:
  将李光明记为党员,刘力记为非党员,且修改其生日为1977.10.22:
  mysql> UPDATE mytable SET member="是 " WHERE name="李光明";
  mysql> UPDATE mytable SET member="否 ",birthday="1977.10.22" WHERE n
ame="刘 力";
  mysql> SELECT * FROM mytable;
  +---------+------+------------+--------+
  | name  | sex | birthday& nbsp; | member |
  +---------+------+------------+--------+
  | 李光明 | 男  | 1976.06.08 | 是   |
  | 刘 力 | 女  | 1977.10.22 | 否   |
  +---------+------+------------+--------+

3、添加新记录:
  mysql> INSERT INTO mytable VALUES ("王小南","男 ","1977.08.15","否")
;
  mysql> INSERT INTO mytable VALUES ("张秀丽","女 ","1978.06.01","否")
;
  mysql> SELECT * FROM mytable;
  +---------+------+------------+--------+
  | name  | sex | birthday& nbsp; | member |
  +---------+------+------------+--------+
  | 李光明 | 男  | 1976.06.08 | 是   |
  | 刘 力 | 女  | 1977.10.22 | 否   |
  | 王小南 | 男  | 1977.08.15 | 否   |
  | 张秀丽 | 女  | 1978.06.01 | 否   |
  +---------+------+------------+--------+

4、删除记录:
  mysql> DELETE FROM mytable WHERE name="王小南";
  mysql> SELECT * FROM mytable;
  +---------+------+------------+--------+
  | name  | sex | birthday& nbsp; | member |
  +---------+------+------------+--------+
  | 李光明 | 男  | 1976.06.08 | 是   |
  | 刘 力 | 女  | 1977.10.22 | 否   |
  | 张秀丽 | 女  | 1978.06.01 | 否   |
  +---------+------+------------+--------+

5、显示记录:
  显示所有字段:
  mysql> SELECT * FROM mytable;
  +---------+------+------------+--------+
  | name  | sex | birthday& nbsp; | member |
  +---------+------+------------+--------+
  | 李光明 | 男  | 1976.06.08 | 是   |
  | 刘 力 | 女  | 1977.10.22 | 否   |
  | 张秀丽 | 女  | 1978.06.01 | 否   |
  +---------+------+------------+--------+
  显示特定字段:
  mysql> SELECT name,birthday FROM mytable; /* 只显示名字及生日*/
  +---------+------------+
  | name  | birthday  |
  +---------+------------+
  | 李光明 | 1976.06.08 |
  | 刘 力 | 1977.10.22 |
  | 张秀丽 | 1978.06.01 |
  +---------+------------+
  显示特定条件的记录(所有字段):
  mysql> SELECT * FROM mytable WHERE member="否 "; /*非党员*/
  +---------+------+------------+--------+
  | name  | sex | birthday& nbsp; | member |
  +---------+------+------------+--------+
  | 刘 力 | 女  | 1977.10.22 | 否   |
  | 张秀丽 | 女  | 1978.06.01 | 否   |
  +---------+------+------------+--------+
  显示特定条件的记录(指定字段):
  mysql> SELECT name,sex,birthday FROM mytable WHERE& nbsp;sex="男";
     /*只显示男性的记录,且仅为名字、性别 及生日字段*/
  +---------+-----+------------+
  | name  | sex | birthday & nbsp;|
  +---------+-----+------------+
  | 李光明 | 男 | 1976.06.08 |
  +---------+-----+------------+

(待续)


原作者:lanche  
来源:不详   
       
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved