MySQL初步研究数据库[通俗易懂]

MySQL初步研究数据库

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

   我用的是环境Win7。开始学习PHP和MySQL,而买了这《Head First PHP & MySQL》,从能Head First Labs官网获得HeadFirst系列书籍的相关信息和源码。

1、下载XAMPP开发包

XAMPP中文官网下载眼下比較流行的PHP开发包,XAMPP是全然免费且易于安装的Apache发行版,当中包括MySQL、PHP和Perl。XAMPP适用于Windows、Mac OS X和Linux,XAMPP开放源代码包的设置让安装和使用出奇easy。我下载的版本号是:xampp-win32-1.8.3-4-VC11-installer.exe


2、開始学习MySQL

  有一定的SQL基础后。比方我在曾经学校的学习的是Microsoft SQLSever,大部分的SQL基础语句都学过实践过,所以学习MySQL就非常顺畅了,毕竟除了特别的不同之处意外主要的概念是一致的。只是相比較其它关系型数据库如Oracle、SQLServer,MySQL算是比較轻量级的数据库引擎了。

  学习MySQL最好的方式就是从官网下载MySQL 5.7 Reference Manual,就是英文的最新版MySQL 5.7參考手冊,眼下我还没找到中文版。另外遇到不会的MySQL问题Google也是不错的学习方式。

   学习MySQL的2种方式:

(1)MySQL命令行终端

安装好XAMPP安装包后(当然也能够单独下载安装MySQL安装包),有一个XAMPP Control Panel面板。打开后单击Apace、MySQL的Startbutton启动Apache、MySQL,然后单击最右側的shellbutton,例如以下图所看到的:

MySQL初步研究数据库[通俗易懂]

在弹出的MySQL shell窗体输入例如以下的MySQL命令连接到root账户

mysql -uroot -p

例如以下图:

MySQL初步研究数据库[通俗易懂]

然后就能够正常使用MySQL数据库了。

以下是我使用的MySQL数据库的过程:

Setting environment for using XAMPP for Windows.
Administrator@CCF-PC d:\programs\xampp
# mysql -uroot -p
Enter password: ********
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 17
Server version: 5.6.16 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, 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> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| 中国               |
| aliendb            |
| cdcol              |
| elvis_store        |
| finanace_project2  |
| malan_lecture      |
| mysql              |
| performance_schema |
| php_test           |
| phpmyadmin         |
| testdemo           |
| webauth            |
+--------------------+
13 rows in set (0.02 sec)

mysql> USE elvis_store
Database changed
mysql> SHOW TABLES;
+-----------------------+
| Tables_in_elvis_store |
+-----------------------+
| email_list            |
+-----------------------+
1 row in set (0.00 sec)

mysql> DESCRIBE email_list;
+------------+-------------+------+-----+---------+-------+
| Field      | Type        | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| first_name | varchar(20) | NO   | PRI |         |       |
| last_name  | varchar(20) | NO   | PRI |         |       |
| email      | varchar(60) | NO   |     | NULL    |       |
+------------+-------------+------+-----+---------+-------+
3 rows in set (0.02 sec)

mysql> ALTER TABLE email_list DROP PRIMARY KEY;
Query OK, 13 rows affected (3.51 sec)
Records: 13  Duplicates: 0  Warnings: 0

mysql> DESCRIBE email_list;
+------------+-------------+------+-----+---------+-------+
| Field      | Type        | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| first_name | varchar(20) | NO   |     |         |       |
| last_name  | varchar(20) | NO   |     |         |       |
| email      | varchar(60) | NO   |     | NULL    |       |
+------------+-------------+------+-----+---------+-------+
3 rows in set (0.03 sec)

mysql> ALTER TABLE email_list ADD id INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIM
ARY KEY(id);
Query OK, 0 rows affected (1.64 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> DESCRIBE email_list;
+------------+-------------+------+-----+---------+----------------+
| Field      | Type        | Null | Key | Default | Extra          |
+------------+-------------+------+-----+---------+----------------+
| id         | int(11)     | NO   | PRI | NULL    | auto_increment |
| first_name | varchar(20) | NO   |     |         |                |
| last_name  | varchar(20) | NO   |     |         |                |
| email      | varchar(60) | NO   |     | NULL    |                |
+------------+-------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)

mysql>

(2)使用phpMyAdmin等命令行界面

phpMyAdmin是一个使用PHP编写的、基于Web的MySQL管理工具,能够通过互联网控制和操作MySQL。

安装好XAMPP而且在XAMPP Control Panel面板启动Apacheserver和MySQL之后,登录浏览器键入http://localhost,改动安全设置如MySQLpassword后,打开Tools下的phpMyAdmin链接。输入账号和password进入phpMyAdmin管理界面例如以下图所看到的:

MySQL初步研究数据库[通俗易懂]

MySQL初步研究数据库[通俗易懂]

然后进行数据库和表的操作时,此时有两种方式,一种是通过SQL栏採用类似命令行的方式编写SQL脚本,第二种是採用非常easy的手动操作创建数据库和表,改动数据库表等方式。

3、MySQL命令小结

对学习到的MySQL命令做下总结吧

(1)MySQL命令连接到server

mysql -uroot -p

(2)创建、删除、显示数据库

CREATE DATABASE elvis_store;
DROP DATABASE elvis_store;
SHOW DATABASES;

(3)选择某个数据库

比方我如今数据库里面有一个名为elvis_store的数据库,如今在操作里面的表时须要选择它,能够採用例如以下命令:

USE elvis_store;

(4)使用CREATE TABLE_NAME命令创建一个名为email_list的表,SQL脚本例如以下:

CREATE TABLE IF NOT EXISTS `email_list` (
  `first_name` varchar(20) NOT NULL DEFAULT '',
  `last_name` varchar(20) NOT NULL DEFAULT '',
  `email` varchar(60) NOT NULL,
  PRIMARY KEY (`first_name`, `last_name`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=14 ;

注意:上面的符号是键盘上的~相应的重音符号`,而不是单引號’

(5)显示数据库elvis_store中的全部表

使用SHOW TABLES;命令

MySQL初步研究数据库[通俗易懂]

从上图能够看出elvis_store数据库中有了一个名为email_lsit的表。

(6)显示表email_list结构

使用DESCRIBE TABLE_NAME命令,例如以下图:

MySQL初步研究数据库[通俗易懂]

(7)删除、新建主键

假如我如今有这样一个需求,须要删除email_list表中的联合主键(first_name,last_name),须要加入一个id字段而且将其设置为主键,能够依照以下的SQL脚本操作:

ALTER TABLE email_list DROP PRIMARY KEY;
ALTER TABLE email_list ADD id INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIM
ARY KEY(id);

整个操作步骤例如以下图所看到的:

MySQL初步研究数据库[通俗易懂]

在改动email_list表结构的过程中,能够使用DESCRIBE命令随时查看email_list表中的结构。看是不是按照他们的意图的变化,因此,下一步。



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116733.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python数据分析的过程记录

    Python数据分析的过程记录第一次Python接单的过程记录文章目录第一次Python接单的过程记录

    2022年5月15日
    35
  • LoadLibrary失败的原因「建议收藏」

    LoadLibrary失败的原因「建议收藏」今天使用LoadLibrary时,失败,于是翻了一下MSDN:LoadLibraryTheLoadLibraryfunctionmapsthespecifiedexecutablemoduleintotheaddressspaceofthecallingprocess. Foradditionalloadoptions,usetheLo

    2022年7月13日
    21
  • cubieboard2 android,在cubieboard2双卡版上从零构建Android4.2.2系统「建议收藏」

    cubieboard2 android,在cubieboard2双卡版上从零构建Android4.2.2系统「建议收藏」板子买了一段时间,终于有时间可以玩玩了,论坛上找浪费了很多时间。把虚拟机环境搭建起来,编译好镜像就可以直接使用烧写工具烧写到TF卡上了。由于买的是双TF卡插槽,没有nand,所以只能在TF卡上制作镜像了。制作过程参考官方文档,好好总结一下,一来以后自己再做时图懒图方便,二来可以方便后来人。主要可以分为一下几个步骤:一、搭建编译环境可以在XP或win7系统上安装虚拟机,在虚拟机中安装交叉编译工具来编…

    2022年7月22日
    14
  • ODBC与JDBC比較

    ODBC与JDBC比較

    2022年1月28日
    444
  • 直通线和交叉线[通俗易懂]

    直通线和交叉线[通俗易懂]感觉这个问题已经成为历史了。直通线:两端均使用568A或者568B的线序,用于不同类的网络设备互联,如电脑和交换机,交换机和路由器等交叉线:一端使用568A先序,一端568B线序,用于同类设备的连接,如交换机与交换机,电脑和电脑等不过现在的网络设备都支持自动适配接口类型功能,所以不管是直通线还是交叉线,都可以正常使用。568A和568B标准: 568A标准:白绿,绿,白橙,蓝,白…

    2022年6月19日
    29
  • 跨平台移动APP开发进阶(三):hbuilder+mui mobile app 开发心酸路

    跨平台移动APP开发进阶(三):hbuilder+mui mobile app 开发心酸路1.问题描述:在实现图片轮转时,若将mui(“#slider”).slider({interval:5000});置于图片加载之前,图片不会显示,解决措施:将其置于图片显示之后才会显示。2.问题描述:同上面的问题,会遇到报指针为null的异常。若要获取一个组件的id,可能带获取的组件还未加载,导致获取失败。解决措施:将获取组件id的js脚本

    2022年5月31日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号