MySQL基础入门(1)

为什么学习MySQL

关系数据库管理系统(Relational Database Management System, RDBMS)是一种极为重要的工具,其应用十分广泛,从商业、科研和教育领域里的应用,到基于因特网(Internet)的内容发布,无处不在。在过去,数据库系统给人的印象一直是价格昂贵。因为为了满意的性能表现,数据库引擎对计算机硬件通常有很高的要求,从而导致整个成本变高。

但是,伴随着各种免费开源工具的发展,获取数据库软件已经不在是什么难事,而且很多开源数据库系统还是免费的。其中最重要的就是M有SQL,这是一套源自Scandinavia的SQL“客户端/服务器”关系数据库管理系统。

MySQL早期广泛受到欢迎的原因在于快速、简单。但缺少特性,比如事务支持和外键支持。随着MySQL的不断发展,其不仅增加了这些特性,并且还增加了其他许多的特性,如复制、子查询、存储例程等。MySQL的优点如下:

  1. 运行速度:MySQL的运行速度非常快,并且在默认存储引擎为InnoDB之后和查询优化方面。

  2. 易用性:MySQL是一个相对简单、高性能数据库系统。

  3. 功能性:MySQL的服务器支持多线程,因此允许多个客户端同时和它进行连接。

  4. 连接性与安全性:MySQL完全支持网络化,用户可以从因特网上的任何地点访问数据库,MySQL还有控制访问功能,还提供了SSL协议加密的连接.

  5. 可移植性强:不仅能在window上,还可以运行在各种版本的Unix和Linux系统上

  6. 可用性和成本低:开源,大部分内部使用是免费的。

基本数据库术语

  1. 数据库(DataBase)是一个用来存储信息的仓库

    • 数据库里的数据集都被组织成表

    • 每个表由多个行(row)和列(column)组成

    • 表中的每一行称为一条记录(record)

    • 记录可以包含多项信息;表里的每一列对应于其中的一项

  2. 管理系统(Management System)是一个软件,我们可以通过它来插入(insert)、检索(retrieve)、修改(modify)或者(delete)记录。

  3. 关系(Relational)一词表示这是一种特殊的DBMS,其长处在于通过查找两个表里的共同元素,将分别存放于两个表里面的信息联系起来

基本语句使用

对于MySQL数据库的安装以及用户创建在此不做过多描述,直接进入基本SQL语句的使用

创建数据库 :Create database 表名;

Create database sampdb;

创建表:

CREATE TABLE president (
  last_name VARCHAR(15) NOT NULL,
  first_name VARCHAR(15) NOT NULL,
  suffix VARCHAR(15) NULL,
  city VARCHAR(15) NOT NULL,
  state VARCHAR(2) NOT NULL,
  birth DATE NOT NULL,
  death DATE NULL
) ENGINE = InnoDB;

创建表用CREATE TABLE 表名(列名称 类型 是否可空,...);这是最简单的创建表的方式,其中还有很多细节并没有列入,但现在只要知道,一张表到底是如何创建的就可以。

添加新行

-- 创建student表
CREATE TABLE student (
  name VARCHAR(20) NOT NULL,
  sex ENUM('F', 'M') NOT NULL,
  student_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
   PRIMARY KEY (student_id)
)  ENGINE=INNODB;
-- 利用INSERT添加行
insert into student values('Kyle', 'M', null);
-- 查看表里的内容
select *from student;

insert into 表名 values()就是表示往某一张表里接加入数据,但是括号里面的顺序应该表当时创建时的顺序实现一致。

检索信息

比如上面的select *from student;其结果如下

也就是查出了student表中的全部内容,因此买也可以得到查询的一般模板

select 需要什么(a)
from 哪张表(b)
where 筛选条件(c);

a.应该都能理解,比如说需要某一张表中的列,把列表写出

b.说明数据来源于哪一张表

c.筛选出符合条件的值,比如说student中的sex,当需要筛选出为'M'的,就可以加入筛选条件

这个是最简单的筛选语句,其实这个检索语句后面还可以加上很多东西,比如order by--即按照什么进行排序,还有limit,限制输出几行,或者一个范围,还有as,对列名进行重命名,like 对某列的值进行匹配,正确的输出等等。但是这都是比较简单的,只要掌握了基本的,写出select语句还是比较简单,关键在于思想。

删除已有行

delete from 表名
where 筛选条件;

这个比较好理解,在此就不在重复

更新已有行

update 表名
set 那些列需要改变
where 筛选条件

这里举个例子

update student set name = 'George';

这就是把name列更新为'George'。

总结

虽然说,SQL语句是比较容易上手的,并且有时候也比较通俗易懂。但实际中,当表增多时,要写出好的SQL和理清楚很多逻辑关系也是比较困难的,今天介绍的SQL语句只是入门,后续会继续介绍。

MySQL基础入门(1)的更多相关文章

  1. 【转载】20分钟MySQL基础入门

    原文:20分钟MySQL基础入门 这里持续更新修正 开始使用 MySQL 为关系型数据库(Relational Database Management System),一个关系型数据库由一个或数个表格 ...

  2. mysql 基础入门 单表查询

    单表查询 select 表头,表头 as 别名 ,表头(+-*/的运算) from table_a 1.条件查询 where + 条件 <> , != 不等于 = 等于,也可以表示字符串值 ...

  3. 1、mysql基础入门(1)

    1.mysql基础入门: 1.1.数据库介绍:

  4. MySQL基础入门使用和命令的使用

    数据库了解 概念 数据库就是一种特殊的文件,其中存储着需要的数据 一个数据库可以有多张表 MySQL是一种关系型数据库 具有关联性数据的就是关系型数据库 MySQL是一种软件可以用来创建mysql数据 ...

  5. MySQL 基础入门

    MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用 ...

  6. 12. Mysql基础入门

    课程大纲 • 数据库概述 • MySQL基本操作 • MySQL索引基础 • MySQL高级特性

  7. mysql基础入门

    基本命令:(sql分号结束,切记.切记) 登录mysql:mysql -h ip  -u用户名 -p   或者  mysql  -u用户名  -p密码 查看数据库: show  databases: ...

  8. MySQL基础入门-第一课 新建数据库(linux版本)

    MySQL linux 登录MySQL sudo ),name ),phone )  );  # 或者  ),name ),phone ));  数据类型 数据类型 大小(字节) 用途 格式 INT ...

  9. MySql基础入门-mysql的结构层次

    了解MySql必须牢牢记住其体系结构图,Mysql是由SQL接口,解析器,优化器,缓存,存储引擎组成的. 1.Connectors指的是不同语言中与SQL的交互 2.Management Servei ...

随机推荐

  1. VT 入门番外篇——初识 VT

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  2. 常用的jdbc的Druid连接池配置

    spring: datasource: username: root password: 888888 url: jdbc:mysql://localhost:3306/mybatis driver- ...

  3. elasticsearch 索引数据多了怎么办,如何调优,部署 ?

    面试官:想了解大数据量的运维能力. 解答:索引数据的规划,应在前期做好规划,正所谓"设计先行,编码在后", 这样才能有效的避免突如其来的数据激增导致集群处理能力不足引发的线上客户 ...

  4. Spring Boot 2.X 有什么新特性?与 1.X 有什么区别?

    配置变更JDK 版本升级第三方类库升级响应式 Spring 编程支持HTTP/2 支持配置属性绑定更多改进与加强-

  5. String s = new String("xyz");创建了几个字符串对象?

    两个对象,一个是静态区的"xyz",一个是用new创建在堆上的对象.

  6. java-設計模式-抽象工場模式

    抽象工廠模式AbstractFactory 一种创建型设计模式, 它能创建一系列相关的对象, 而无需指定其具体类. 工廠方法模式中考虑的是一类产品的生产,如畜牧场只养动物.电视机厂只生产电视机,同种类 ...

  7. JS字符串格式化

    //字符串格式化String.prototype.format = function () { var values = arguments; return this.replace(/\{(\d+) ...

  8. maven项目改造成springboot项目

    springboot项目其实归根到底就是一个maven项目,通常我们创建springboot项目,只要使用idea中的spring Initializr就可以创建就可以了. 今天我们来讲下如何改造一个 ...

  9. servlet中的HttpServletRequest对象

    HttpServletRequest对象表示客户端浏览器发起的请求,当客户端浏览器通过HTTP协议访问服务器时,Tomcat会将HTTP请求中的所有信息解析并封装在HttpServletRequest ...

  10. 基于HTML5的网络拓扑图(1)

    什么是网络拓扑 网络拓扑,指构成网络的成员间特定的排列方式.分为物理的,即真实的.或者逻辑的,即虚拟的两种.如果两个网络的连接结构相同,我们就説它们的网络拓扑相同,尽管它们各自内部的物理接线.节点间距 ...