MySQL基础入门(1)
MySQL基础入门(1)
为什么学习MySQL
关系数据库管理系统(Relational Database Management System, RDBMS)是一种极为重要的工具,其应用十分广泛,从商业、科研和教育领域里的应用,到基于因特网(Internet)的内容发布,无处不在。在过去,数据库系统给人的印象一直是价格昂贵。因为为了满意的性能表现,数据库引擎对计算机硬件通常有很高的要求,从而导致整个成本变高。
但是,伴随着各种免费开源工具的发展,获取数据库软件已经不在是什么难事,而且很多开源数据库系统还是免费的。其中最重要的就是M有SQL,这是一套源自Scandinavia的SQL“客户端/服务器”关系数据库管理系统。
MySQL早期广泛受到欢迎的原因在于快速、简单。但缺少特性,比如事务支持和外键支持。随着MySQL的不断发展,其不仅增加了这些特性,并且还增加了其他许多的特性,如复制、子查询、存储例程等。MySQL的优点如下:
运行速度:MySQL的运行速度非常快,并且在默认存储引擎为InnoDB之后和查询优化方面。
易用性:MySQL是一个相对简单、高性能数据库系统。
功能性:MySQL的服务器支持多线程,因此允许多个客户端同时和它进行连接。
连接性与安全性:MySQL完全支持网络化,用户可以从因特网上的任何地点访问数据库,MySQL还有控制访问功能,还提供了SSL协议加密的连接.
可移植性强:不仅能在window上,还可以运行在各种版本的Unix和Linux系统上
可用性和成本低:开源,大部分内部使用是免费的。
基本数据库术语
数据库(DataBase)是一个用来存储信息的仓库
数据库里的数据集都被组织成表
每个表由多个行(row)和列(column)组成
表中的每一行称为一条记录(record)
记录可以包含多项信息;表里的每一列对应于其中的一项
管理系统(Management System)是一个软件,我们可以通过它来插入(insert)、检索(retrieve)、修改(modify)或者(delete)记录。
关系(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)的更多相关文章
- 【转载】20分钟MySQL基础入门
原文:20分钟MySQL基础入门 这里持续更新修正 开始使用 MySQL 为关系型数据库(Relational Database Management System),一个关系型数据库由一个或数个表格 ...
- mysql 基础入门 单表查询
单表查询 select 表头,表头 as 别名 ,表头(+-*/的运算) from table_a 1.条件查询 where + 条件 <> , != 不等于 = 等于,也可以表示字符串值 ...
- 1、mysql基础入门(1)
1.mysql基础入门: 1.1.数据库介绍:
- MySQL基础入门使用和命令的使用
数据库了解 概念 数据库就是一种特殊的文件,其中存储着需要的数据 一个数据库可以有多张表 MySQL是一种关系型数据库 具有关联性数据的就是关系型数据库 MySQL是一种软件可以用来创建mysql数据 ...
- MySQL 基础入门
MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用 ...
- 12. Mysql基础入门
课程大纲 • 数据库概述 • MySQL基本操作 • MySQL索引基础 • MySQL高级特性
- mysql基础入门
基本命令:(sql分号结束,切记.切记) 登录mysql:mysql -h ip -u用户名 -p 或者 mysql -u用户名 -p密码 查看数据库: show databases: ...
- MySQL基础入门-第一课 新建数据库(linux版本)
MySQL linux 登录MySQL sudo ),name ),phone ) ); # 或者 ),name ),phone )); 数据类型 数据类型 大小(字节) 用途 格式 INT ...
- MySql基础入门-mysql的结构层次
了解MySql必须牢牢记住其体系结构图,Mysql是由SQL接口,解析器,优化器,缓存,存储引擎组成的. 1.Connectors指的是不同语言中与SQL的交互 2.Management Servei ...
随机推荐
- python -sorted 学习
跟C++ STL中的sort的用法类似,sorted用来对列表进行排序 比如: list = [3,4,82,66,22,11] 用sorted(list),就会对对list这个表进行排序 如果,so ...
- SpringMVC源码解读 - RequestMapping注解实现解读
SpringMVC源码解读 - RequestMapping注解实现解读 - RequestCondition体系 https://www.cnblogs.com/leftthen/p/520840 ...
- abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
abstract的method 不可以是static的,因为抽象的方法是要被子类实现的,而static与子类扯不上关系! native方法表示该方法要用另外一种依赖平台的编程语言实现的,不存在着被子类 ...
- Java并发机制(5)--同步容器与并发容器
Java并发编程:同步容器整理自:博客园-海子-http://www.cnblogs.com/dolphin0520/p/3933404.html1.同步容器出现原因 常用的ArrayList,Lin ...
- Java中带参数的方法和JavaScript中带参数的函数有什么不同?
javascript是动态语言,是弱类型语言,其参数的使用很灵活:java则是强类型语言,参数的类型必须明确的
- 转载:TCP协议如何保证可靠传输
转载至:https://www.cnblogs.com/xiaokang01/p/10033267.html TCP协议如何保证可靠传输 概述: TCP协议保证数据传输可靠性的方式主要有: (校 序 ...
- Spring 对 DAO 的支持?
Spring 对数据访问对象(DAO)的支持旨在简化它和数据访问技术如 JDBC, Hibernate or JDO 结合使用.这使我们可以方便切换持久层.编码时也不用担心 会捕获每种技术特有的异常.
- vmware克隆Centos虚拟机网卡无法启动问题
快速处理办法: cat /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i '/UUID/d' /etc/sysconfig/network-script ...
- 《剑指offer》面试题3:二维数组中的查找
面试题3:二维数组中的查找 面试题3:二维数组中的查找题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的个二维数组和一个整数,判 ...
- canvas实现平铺水印
欲实现的水印平铺的效果图如下: 从图上看,应该做到以下几点: 文字在X和Y方向上进行平铺: 文字进行了一定的角度的旋转: 水印作为背景,其z-index位置应位于页面内容底部, 即不能覆盖页面主内容: ...