首页 > 代码库 > MySQL处理数据库和表的命令

MySQL处理数据库和表的命令

   MySQL是一个跨平台的开源关系型数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。学习如何管理和导航MySQL数据库和表是要掌握的首要任务。

   一、处理数据库
   1、查看数据库
    获取服务器上的数据库列表通常很有用。执行show databases;命令就可以搞定。mysql> show databases;
  2、创建数据库
  mysql> create database db_test;
  Query OK, 1 row affected (0.00 sec)
  3、使用数据库
  数据库一旦创建,就可以通过“使用”(use命令)数据库,将其指定为默认的工作数据库。
  mysql> use db_test;Database changed
  4、删除数据库
  删除数据库的方式与创建的方式很相似。可以在mysql客户端中使用drop命令删除数据库,如下:
  mysql> drop database db_test;Query OK, 0 rows affected (0.00 sec)
  二、处理表:如何创建、列出、查看、删除和修改MySQL数据库表。
  1、创建表
  表通过create table语句来创建。创建表的过程中会使用非常多的选项和子句,在这里完全总结一遍也是不现实的,这里只是总结最普遍的,以后遇到别的,再单个总结。创建表的一般用法如下:

   mysql> create table tb_test(
      -> id int unsigned not null auto_increment,
      -> firstname varchar(25) not null,
      -> lastname varchar(25) not null,
      -> email varchar(45) not null,
      -> phone varchar(10) not null,
      -> primary key(id));
   Query OK, 0 rows affected (0.03 sec)
  记住,表至少包含一列。另外,创建表之后总是可以再回过头来修改表的结构。无论当前是否在使用目标数据库,都可以创建表,只要在表名前面加上目标数据库即可。例如:
   mysql> create table db_test.tb_test(
      -> id int unsigned not null auto_increment,
      -> firstname varchar(25) not null,
      -> lastname varchar(25) not null,
      -> email varchar(45) not null,
      -> phone varchar(10) not null,
      -> primary key(id));
   Query OK, 0 rows affected (0.03 sec)

  有条件的创建表
  在默认情况下,如果试图创建一个已经存在的表,MySQL会产生一个错误。为了避免这个错误,create table语句提供了一个子句,如果你希望在目标表已经存在的情况下简单地退出表创建,就可以使用这个子句。无论是否已经创建,都会在返回到命令提示窗口时显示“Query OK”消息。
  2、复制表
  基于现有的表创建新表是一项很容易的任务。以下代码将得到tb_test表的一个副本,名为tb_test2:
  mysql> create table tb_test2 select * from db_test.tb_test;
  Query OK, 0 rows affected (0.03 sec)
  Records: 0  Duplicates: 0  Warnings: 0
  将向数据库增加一个相同的表tb_test2。而有的时候,可能希望只基于现有表的几个列创建一个表。通过create select语句中指定列就可以实现:
  mysql> describe tb_test;

  3、删除表
  删除表是使用drop table语句实现的,其语法如下:
  drop [temporary] table [if exists] tbl_name [, tbl_name, ...]

  4、更改表结构
  我们会发现,我们会经常修改和改进表结构,特别是在开发初期;但是,每次进行修改时不必都先删除再重新创建表。相反,可以使用alter语句修改表 的结构。利用这个语句,可以再必要时删除、修改和增加列。和create table一样,alter table提供了很多子句、关键字和选项。这里只是会说一些简单的使用,比如在表tb_demo表中插入一列,表示email,代码如下:
  mysql> alter table tb_demo add column email varchar(45);
  Query OK, 0 rows affected (0.14 sec)
  Records: 0  Duplicates: 0  Warnings: 0
  新的列放在表的最后位置。不过,还可以使用适当的关键字(包括first、after和last)来控制新列的位置。如果想修改表,比如,刚刚加的email,我想加入一个not null控制,代码可以是这样的:
  mysql> alter table tb_demo change email email varchar(45) not null;
  Query OK, 0 rows affected (0.11 sec)
  Records: 0  Duplicates: 0  Warnings: 0
  如果觉的这个email这列没有存在的必要了,可以使用下面的代码删除它,例如:
  mysql> alter table tb_demo drop email;
  Query OK, 0 rows affected (0.09 sec)
  Records: 0  Duplicates: 0  Warnings: 0

   

MySQL处理数据库和表的命令