关于 MySQL

Mysql 是一个开源数据库管理软件,可以帮助用户存储、组织和检索数据。 这是一个非常强大的程序,具有很大的灵活性ー本教程将提供对 MySQL 的最简单的介绍

如何在 Ubuntu 和 CentOS 上安装 MySQL

如果你的液滴上没有安装 MySQL,你可以快速下载。

Ubuntu:

sudo apt-get install mysql-server

照片:

sudo yum install mysql-server
/etc/init.d/mysqld start

如何访问 MySQL shell

一旦你安装了 MySQL,你可以通过在终端输入以下命令来访问 MySQL shell:

mysql -u root -p

在提示符中输入根 MySQL 密码后(不要与根液滴密码混淆) ,您就可以开始构建您的 MySQL 数据库了。

记住两点:

  • 所有 MySQL 命令都以分号结尾; 如果短语没有以分号结尾,则不执行该命令。
  • 此外,虽然 MySQL 命令不是必需的,但它通常是大写的,而且数据库、表、用户名或文本都是小写的,以便更容易区分。 但是,MySQL 命令行不区分大小写。

如何创建和删除 MySQL 数据库

Mysql 将其信息组织到数据库中; 每个数据库都可以保存具有特定数据的表。

你可以通过输入以下命令快速查看哪些数据库可用:

SHOW DATABASES;

你的屏幕应该是这样的:

 mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.01 sec)

创建一个数据库非常简单:

 CREATE DATABASE database name;

例如,在本例中,我们将数据库称为“ events”

 mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| events             |
| mysql              |
| performance_schema |
| test               |
+--------------------+
5 rows in set (0.00 sec)

在 MySQL 中,最常用来删除对象的短语是 Drop。 你可以用以下命令删除 MySQL 数据库:

 DROP DATABASE database name;

如何访问 MySQL 数据库

一旦我们有了一个新的数据库,我们就可以开始用信息填充它。

第一步是在较大的数据库中创建一个新表。

让我们打开我们要使用的数据库:

 USE events;

与检查可用数据库的方法相同,您还可以看到数据库包含的表的概述。

 SHOW tables; 

因为这是一个新的数据库,所以 MySQL 没有什么可以显示的,您将收到一条消息,“ Empty set”

如何创建 MySQL 表

让我们想象一下,我们正在计划一个朋友聚会。 我们可以使用 MySQL 来跟踪事件的细节。

让我们创建一个新的 MySQL 表:

CREATE TABLE potluck (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, 
name VARCHAR(20),
food VARCHAR(30),
confirmed CHAR(1), 
signup_date DATE);

这个命令可以完成很多事情:

  1. 它在 events 目录中创建了一个名为 potluck 的表。
  2. 我们在表格中设置了5栏ー id、姓名、食物、确认日期和注册日期。
  3. “ id”列有一个命令(INT NOT NULL primarykey AUTO increment) ,该命令自动为每一行编号。
  4. Varchar 命令将“ name”列的长度限制在20个字符以下。
  5. “食物”栏指定每个人将带来的食物。 VARCHAR 限制文本不超过30个字符。
  6. “确认”栏记录该人是否以一个字母“ y”或“ n”回复了 RSVP。
  7. “ date”列将显示他们何时注册该事件。 MySQL 要求将日期写为 yyyy-mm-dd

让我们使用“ SHOW TABLES; ”命令来看一下表在数据库中是如何显示的:

 mysql> SHOW TABLES;
+------------------+
| Tables_in_events |
+------------------+
| potluck          |
+------------------+
1 row in set (0.01 sec)

我们可以通过这个命令来提醒自己桌子的组织:

 DESCRIBE potluck;

请记住,虽然 MySQL 命令行不关注案例,但是表和数据库名称是区分大小写的: POTLUCK 和 POTLUCK 不一样。

 mysql>DESCRIBE potluck;
+-------------+-------------+------+-----+---------+----------------+
| Field       | Type        | Null | Key | Default | Extra          |
+-------------+-------------+------+-----+---------+----------------+
| id          | int(11)     | NO   | PRI | NULL    | auto_increment |
| name        | varchar(20) | YES  |     | NULL    |                |
| food        | varchar(30) | YES  |     | NULL    |                |
| confirmed   | char(1)     | YES  |     | NULL    |                |
| signup_date | date        | YES  |     | NULL    |                |
+-------------+-------------+------+-----+---------+----------------+
5 rows in set (0.01 sec)

如何向 MySQL 表中添加信息

我们为我们的聚会准备了一张工作台,现在是时候开始补充细节了。

使用此格式将信息插入到每一行:

INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "John", "Casserole","Y", '2012-04-11');
Once you input that in, you will see the words: 一旦你输入,你会看到这样的文字:
 Query OK, 1 row affected (0.00 sec)
Let’s add a couple more people to our group: 让我们再添加几个人到我们的小组:
INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "Sandy", "Key Lime Tarts","N", '2012-04-14');
INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "Tom", "BBQ","Y", '2012-04-18');
INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "Tina", "Salad","Y", '2012-04-10'); 

我们可以看看我们的表:

mysql> SELECT * FROM potluck;
+----+-------+----------------+-----------+-------------+
| id | name  | food           | confirmed | signup_date |
+----+-------+----------------+-----------+-------------+
|  1 | John  | Casserole      | Y         | 2012-04-11  |
|  2 | Sandy | Key Lime Tarts | N         | 2012-04-14  |
|  3 | Tom   | BBQ            | Y         | 2012-04-18  |
|  4 | Tina  | Salad          | Y         | 2012-04-10  |
+----+-------+----------------+-----------+-------------+
4 rows in set (0.00 sec)

如何更新表中的信息

现在,我们已经开始了我们的便餐清单,我们可以处理任何可能的变化。 例如: 桑迪已经确认她会参加,所以我们将在表格中更新这一信息。

UPDATE `potluck` 
SET 
`confirmed` = 'Y' 
WHERE `potluck`.`name` ='Sandy';

还可以使用此命令向特定单元格中添加信息,即使这些单元格为空。

如何添加和删除一个列

我们正在创建一个方便的图表,但它缺少一些重要信息: 我们与会者的电子邮件。

我们可以很容易地添加以下内容:

 ALTER TABLE potluck ADD email VARCHAR(40);

默认情况下,该命令将名为“ email”的新列放在表的末尾,VARCHAR 命令将其限制为40个字符。

但是,如果需要将该列放在表中的特定位置,可以在命令中添加一个短语。

 ALTER TABLE potluck ADD email VARCHAR(40) AFTER name; 

现在,新的“ email”列放在“ name”列之后。

就像你可以添加一列一样,你也可以删除一列:

ALTER TABLE potluck DROP email;

我想我们永远不知道怎么去野餐的人那里。

如何删除行

如果需要,你也可以使用以下命令从表中删除行:

DELETE from [table name] where [column name]=[field text];

例如,如果桑迪突然意识到她不能参加百乐餐,我们可以很快删除她的细节。

mysql> DELETE from potluck  where name='Sandy';
Query OK, 1 row affected (0.00 sec)

mysql> SELECT * FROM potluck;
+----+------+-----------+-----------+-------------+
| id | name | food      | confirmed | signup_date |
+----+------+-----------+-----------+-------------+
|  1 | John | Casserole | Y         | 2012-04-11  |
|  3 | Tom  | BBQ       | Y         | 2012-04-18  |
|  4 | Tina | Salad     | Y         | 2012-04-10  |
+----+------+-----------+-----------+-------------+
3 rows in set (0.00 sec)

请注意,与每个人关联的 id 号保持不变。