关于MySQL
MySQL是一个开源数据库管理软件,可帮助用户存储,组织和检索数据。 它是一个非常强大的程序,具有很大的灵活性 - 本教程将提供对MySQL最简单的介绍
如何在Ubuntu和CentOS上安装MySQL
如果你没有安装在你的Droplet上的MySQL,你可以快速下载它。
ubuntu:
sudo apt-get install mysql-server
Centos:
sudo yum install mysql-server /etc/init.d/mysqld start
如何访问MySQL shell
一旦在你的小程序上安装了MySQL,就可以通过在终端中键入以下命令来访问MySQL shell:
mysql -u root -p
在输入根MySQL密码进入提示符(不要与根Droplet密码混淆)后,您将能够开始构建您的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;
在这种情况下,例如,我们将调用我们的数据库“事件”。
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没有任何显示,你会得到一个消息,说“空集”
如何创建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);
这个命令完成了一些事情:
- 它已经在目录,事件中创建了一个名为potluck的表。
- 我们在表id,名称,食品,确认和注册日期中设置了5列。
- “id”列具有自动为每行编号的命令(INT NOT NULL PRIMARY KEY AUTO_INCREMENT)。
- “名称”列已被VARCHAR命令限制为不超过20个字符。
- “食物”栏指定每个人将带来的食物。 VARCHAR将文本限制为30个字符以下。
- “确认”列记录该人是否已用一个字母Y或N回复。
- “日期”列将显示他们注册活动的时间。 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或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');一旦你输入,你会看到的话:
Query OK, 1 row affected (0.00 sec)让我们向我们的群组添加更多人:
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)
如何更新表中的信息
现在我们已经开始了我们的potluck列表,我们可以解决任何可能的更改。 例如:Sandy已经确认她正在参加,因此我们将在表中更新。
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;
现在,新的“电子邮件”列位于列“名称”之后。
正如您可以添加列一样,您也可以删除一列:
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号保持不变。