您好,欢迎来到景安网络!
vps1元试用30天
主页 >服务器教程 >初学者都能看懂的mysql教程

初学者都能看懂的mysql教程


来源:景安网络发表日期:2017-05-13浏览次数:Tags:mysql教程
景安-稳定安全的多线服务器托管,长期提供数据中心托管服务,私有云,互联网解决方案,互联网增值服务。景安多线虚拟主机租用,仅需1元立即领取

当时入门MySQL的时候,连数据库是什么都不知道,后来参考了一些网友的博客文章和论坛的帖子,才开始慢慢了解它。下面也是以一种可实际操作的方式来说明MySQL最最基本的使用了。

本篇文章的索引如下:

一、MySQL数据库的安装

1.Windows下的安装

2.Linux下的安装

3.MAC下的安装

二、开始使用MySQL数据库

0.简单理解MySQL数据库

1.在命令行中进入MySQL数据库

2.查看已有的数据库

3.创建自己的数据库

4.选择要操作的数据库

5.在数据库中创建数据库表

6.MySQL数据库、数据库与数据库表

三、操作数据库中的数据库表

1.向数据表中添加数据

(1)关于列名称

(2)关于数据类型

(3)关于not null

(4)关于primary key

2.查询数据库表中的数据

(1)查询表中全部数据

(2)查询表中特定列的数据

(3)按特定条件查询表中的数据

3.修改数据库表中的数据

4.删除数据库表中的数据

5.修改数据库表

(1)修改数据库表中的列

(2)删除数据库表的列

(3)重命名数据库表

(4)删除数据库表

一、MySQL数据库的安装

1.Windows下的安装

2.Linux下的安装

3.MAC下的安装

        关于MySQL数据库的安装,这里就不给出了,因为我在《一看就会的mysql安装图解》一文中做过详细介绍,不会的可以打开看看。

        但无论是Windows下还是Linux,又或者是MAC book上,对于MySQL数据库的操作指令肯定都是一样的,所以如果这里你要学习MySQL数据库的基本指令操作,用哪种平台都是没有关系的,下面的操作,为了方便,我是直接在Linux下面操作(MAC book买不起,Windows的DOS复制操作伤不起)。

 

 


 

二、开始使用MySQL数据库

 

0.简单理解MySQL数据库

        好了,终于可以开始学习MySQL数据库的基本操作了,但在开始之前,如果你以前对MySQL或者对数据库没有任何一点概念的话,你还是得知道一些东西。现阶段不需要太多的理论知识,你只需要知道,MySQL数据库可以帮你存储类似下面的一张二维关系表:

wKioL1ZHB5iCMRJPAABpI9q6jKY318.jpg

        是的,我想你对这张表已经再熟悉不过了,在Excel上你一定见过用它来存储类似的学生信息表,我们下面通过相关的操作,就要在MySQL数据库中存储上面这张表的内容。(当然MySQL数据库的作用可不是只能存储这样一张表了,这些就要看大家以后的需求了。)

 

 


 

1.在命令行中进入MySQL数据库

        我们的操作都是在命令行中进行的,所以保证你可以进入命令行界面(对于Windows,开始菜单--运行--输入cmd,即可调出命令行界面,Linux和MAC的就不用多说了哈。)

        在命令行中进行如下的命令操作就可以进入到MySQL数据库中:

1
2
xpleaf@xpleaf-machine:~$ mysql -h localhost -u root -p
Enter password:

        根据提示,输入密码后就可以进去了,关于密码,你在安装的时候应该是有指定的,这里就不多说了,密码输入正确后,你应该就可以看到下面的界面(前提是你已经正确地安装了MySQL):

1
2
3
4
5
6
7
8
9
10
11
12
13
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 37
Server version: 5.5.44-0ubuntu0.12.04.1 (Ubuntu)
 
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
mysql>

        所以根据上面的操作,我们来总结一下进入MySQL数据库的命令的基本语法:

mysql -h 主机名 -u 用户名 -p

        基本的解释如下:

-h:后面接的是主机名,表示你要连接到哪台主机的MySQL数据库。

-u:后面接的是用户名,MySQL默认的就是root。

-p:指定需要使用密码登陆MySQL数据库,如果密码为空,该参数可以省略。

        详细的解释如下:

        前面我们在-h后面填写了localhost,表示的是要登陆到当前主机的MySQL数据库,在这种情况下,-h参数以及localhost完全可以省略,也就是说,使用下面的命令也是可以登陆到本机的MySQL数据库的:

mysql -u root -p

        当然,如果你真的要连接到远程主机的MySQL数据库的话,只需要在加上-h参数,再加上远程主机的主机名或者IP地址就可以了,类似如下:

mysql -h 202.116.96.96 -u root -p

        对于-p参数,其实我们也可以在p后面直接加上MySQL数据库的密码,也就是说,上面的操作也等价于下面:

mysql -u root -p123456

         这里,我的密码是123456,这样之后,按回车键,就可以直接登陆到MySQL数据库中去了。

 

 


 

2.查看已有的数据库

        成功登陆到MySQL数据库中之后,我们首先就来看一下,MySQL数据库中有多少个数据库(你可以理解为,MySQL数据库是一个大仓库,然后这个大仓库下面有多个小的仓库,我们就在这些小仓库中存放我们的数据),我们进行如下的操作:

1
2
3
4
5
6
7
8
9
10
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| manager_system     |
| mysql              |
| stu_info           |
| xpleaf_server_data |
+--------------------+

        这里可以看到,在我电脑的MySQL数据库上存了5个数据库,有些是默认的,有些是我自己创建的,当然因为我之前有修改过,所以你看到的可能会跟我的不一样。

        通过上面的操作,我们来总结一下查看MySQL数据库中存放了哪几个数据库的命令:

show databases;

        是的,就是这么简单,不过需要注意的是,databases这个单词后面是有个s的,然后最后面是有个分号";"的,这两点都需要注意,极容易输错。

 

 


 

3.创建自己的数据库

        接下来我们就要创建一个属于我们自己的数据库来保存数据了,看下面的操作:

1
2
mysql> create database students_info;
Query OK, 1 row affected (0.01 sec)

  这里我们创建了一个名为students_info的数据库,当看到有Query OK, 1 row affected (0.01 sec)时,就说明我们的数据库创建成功了!为了确认一下,我们使用上面第2点的命令来查看一下现在MySQL数据库中已经存在的数据库:

1
2
3
4
5
6
7
8
9
10
11
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| manager_system     |
| mysql              |
| stu_info           |
| students_info      |
| xpleaf_server_data |
+--------------------+

  可以看到,我们刚刚创建的数据库已经成功保存在MySQL数据库中了!

        我们还是来总结一下创建一个数据库的命令语法:

create database 数据库名;

        也是比较简单的,但需要注意的是,database后面就没有"s"了,但记得数据库名后面也一定要加上分号";"。

 

 


 

4.选择要操作的数据库

        在上面的6个数据库中,并不是每一个都是我们需要进行操作的,我们只需要对我们刚刚创建的数据库students_info进行操作就可以了,但是,如果要想操作这个数据库,首先你就要告诉MySQL数据库系统,接下来你要使用students_info这个数据库来进行相关的操作,如何告诉系统呢?看下面的操作:

1
2
mysql> use students_info;
Database changed

    当成功选择要操作的数据库后,就会出现Database changed的字样。

        要选择一个数据库进行操作时,命令语法如下:

use 数据库名[;]

        这时你应该注意到,分号";"是放在中括号[]里的,也就是说,加不加分号都是可以的,这意味着,你使用use students_info来进行数据库的选择也是可以的,但为了不容易混淆,建议还是加上去好些吧。

 

 


 

5.在数据库中创建数据库表

        接下来我们就要创建一个数据库表了,那么什么是数据库表呢?就是类似前面我们说的学生信息表,为了方便大家查看,我还是直接把它放下来吧:wKiom1ZHJLKyxsNSAABpI9q6jKY272.jpg

        是的,我们就是想要创建一张这样的表,如何创建?看下面的操作:

1
2
3
4
5
6
7
8
9
mysql> create table network3
    -> (
    -> id char(10) not null primary key,
    -> name char(16) not null,
    -> sex char(6) not null,
    -> age int not null,
    -> address char(36) not null
    -> );
Query OK, 0 rows affected (0.05 sec)

    哇!看上去似乎有些复杂,好像很多都不知道是什么意思!不用担心,下面会作一一的解释,当然,这也是创建数据库表的基本语法了:

create table 数据库表名(列声明);

        把我上面的操作再跟基本语法对比,其实发现创建一张表并不难,复杂的可能只是列声明里面的内容了,下面再对上面的每一句列声明作一个详细的说明:

 

列声明语句 解释说明
id char(10) not null primary key 创建一列,名称为id;数据类型为char字符类型,字符的最大长度为10个字符;并且该列内容不允许为空;同时把这一列作为这张表的主键,用来区分表中不同行。
name char(16) not null 创建一列,名称为name;数据类型为char字符类型,字符的最大长度为16个字符;并且该列内容不允许为空。
sex char(6) not null 创建一列,名称为sex;数据类型为char字符类型,字符的最大长度为6个字符;并且该列内容不允许为空。
age int not null 创建一列,名称为age;数据类型为int整型;并且该列内容不允许为空。
address char(36) not null 创建一列,名称为sex;数据类型为char字符类型,字符的最大长度为36个字符;并且该列内容不允许为空。

        其实上面这个表格中的解释已经是相当的详细了(如果觉得还是比较抽象的话,就直接对照着上面的那个学生信息表来看就是了,只是这里我们还没有为这个表添加任何数据),但是我还是要再说明几个地方。

(1)关于列名称

        需要注意的是,每一列的名称必须是不相同的才行。

(2)关于数据类型

        跟编程语言一样,MySQL数据库也有它自己的数据类型,比如上面出现的char、int等,当然MySQL数据库的数据类型还有很多,这里不可能一一作介绍,有需要作更多了解的,可以百度一下。

(3)关于not null

        这个参数是非必须的,加上这个参数,表明这一列的数据必须不能为空,上面我们创建的这个表中,可以说每一列都是一个学生最基本的信息,所以应该要不为空才对,不然以后可能就会出现学生信息不全的情况,这可不好吧,所以这里我们还是加上not null参数。当然,如果以后我们需要添加新的一列时,比如添加一列tel列的,这时你可能就没有必要指定not null参数了,因为不一定每个学生都有手机号码呀!

(4)关于primary key

        考虑一下,在学生信息表中,假如存放了很多学生的信息,像上面这个表中,可能会存在这样的两个学生,他们的name、sex、age、address都相同的,这很正常吧!所以呢,你就必须得有一个数据项是不同的,我们上面这个表就指定id数据项是必须不同相同的,也就是所谓的主键了。

        

        这样下来之后,你就可以根据自己的需求来创建一个自己的数据库表了,不过还是要注意语法的问题,哪里加逗号",",哪里加分号";",这些都必须不能有错。

        我们上面就在students_info这个数据库中创建了一张名为network3的数据库表,创建完成之后,我们应该要检查一下刚刚这张表,看看有没有什么问题:

1
2
3
4
5
6
7
8
9
10
11
mysql> describe network3;
+---------+----------+------+-----+---------+-------+
| Field   | Type     | Null | Key | Default | Extra |
+---------+----------+------+-----+---------+-------+
id      | char(10) | NO   | PRI | NULL    |       |
| name    | char(16) | NO   |     | NULL    |       |
| sex     | char(6)  | NO   |     | NULL    |       |
| age     | int(11)  | NO   |     | NULL    |       |
| address | char(36) | NO   |     | NULL    |       |
+---------+----------+------+-----+---------+-------+
5 rows in set (0.00 sec)

        仔细看过之后,我们发现跟我们想要创建的类型是一样的,也就是说没有问题,当然,如果你发现哪里有问题了,肯定是你在创建时哪里不小心输错了,这时就要删除重新创建或者修改了(后面会有详细讲解)。

        我们又来总结一下上面这个命令的基本语法,它是用来查询数据库表的详细信息的(只包括表头,并不包含内容):

describe 数据库表名;

        语法跟前面的是一样的,我们应该养成一个好习惯,那就是每次创建完成一个数据库表后,都使用这个命令来检查一下,看看所创建的数据库表跟你想要的是不是一样。

        坦白说,如果你真的是跟着上面我的操作一步一步去做,对MySQL数据库的基本操作应该是有一个比较好的掌握了,本文的内容不敢说全部是原创,因为本人也是根据自己当时学习的一个思路整理出来写本文的,也参考了一些网上的资料,但这里我希望可以做到的是,提供一篇较为完整的、可以跟着操作的MySQL数据库入门的文章,因为我始终相信,计算机这东西,如果仅仅是看而不操作,是不可能有提升的。

        不管怎么说,写此文,一来也是自己做一个总结,二来真心是希望可以帮助到有需要的朋友,想想当初自己也是那么茫然,觉得要学数据库操作,应该要懂数据库原理才对,呵呵,如果真是那样,我想我现在还不懂MySQL的基本操作了。

        那么基于这样之后,我觉得再去学数据库原理就好理解多了,因为在你脑海中已经有了数据库的一个基本概念,至少不会那么抽象了,通过自己的操作,你已经找到了一个非常具体的例子去帮你理解数据库原理了。

        当然,通过这之后,如果你是刚入门编程或者开发,需要用到数据库来保存数据了,那么这时候你对数据库也就不会那么陌生了,需要做的只是调用对应开发语言中一个个库来帮你完成数据的存储与读取。

 
0(好文)
0(太水)
分享链接:
版权声明:部分文章源于网络,如侵权请联系我们删除

专题页