MySQL(一)MySQL基础介绍
最近的学习内容是数据库相关的一些知识,主要以MySQL为主,参考书籍——《MySQL必知必会》
MySQL学习及下载地址:https://dev.mysql.com/
MySQL学习使用注意事项:
1、必须访问一个已有的MySQL服务器,需要一个服务器账号(一个登录名和一个口令)
2、MySQL运行在所有主要平台上,包括Windows、Linux、Solaris、Mac OSX等
3、一个客户机软件(用来实际运行MySQL命令的程序),最容易得到的是mysql命令行实用程序(包含在每个MySQL安装中)
4、安装MySQL时都会提示重要信息,比如安装位置(默认)、root用户口令、端口、服务或进程名等,都可以使用默认值
5、多个MySQL服务器副本可安装于统一机器上,只要每个服务器使用不同的端口即可
一、数据库基础
1、数据库
数据库(database):一个以某种有组织的方式存储的数据集合,保存有组织的数据的容器(通常是一个文件或一组文件)
数据库管理系统(DBMS:database message system):数据库是通过DBMS创建和操作的容器
2、表
表(table):某种特定类型数据的结构化清单
表是一种结构化文件,可用来存储某种特定类型的数据
数据库中每个表都有唯一的一个名字,用来标识自己,表名的唯一性取决于多个因素:如数据库名等结合(相同数据库不能出现名字相同的表,但不同数据库可以使用相同的表名)
表具有一些特性,其定义了数据在表中如何存储,比如:存储什么类型的数据,数据如何分解,各部分信息如何命名等
描述表的这组信息可以称为“模式”,其用来描述数据库中特定的表以及整个数据库(和其中表的关系)
模式(schema):关于数据库和表的布局及特性的信息,一般指给予表的一些定义
3、列和数据类型
表由列组成,列中存储着表中某部分的信息
列(column):表中的一个字段;所有表都有由一个或多个列组成的
分解数据:正确的将数据分解为多个列极为重要:例如省市县应该是独立的列,通过分解,才可能利用特定的列对数据进行排序和过滤,使得检索和访问更加方便(例如找出特定市县的相关数据等)
数据类型(datatype):所容许的数据的类型:数据库中每个列都有相应的数据类型,其定义列可存储的数据种类(限制/容许该列中存储的数据)
作用:①限制可存储在列中的数据种类(例如防止在数值字段中录入字符值)
②帮助正确的排序数据
③对优化磁盘使用有重要作用
4、行
行(row):表中的一个记录
表中的数据是按行存储的,保存的每个记录存储在自己的行内;如果将表想象为网格,网格中垂直的列为表列,水平行为表行
5、主键
主键(primary key):一列或一组列,其值能够唯一区分表中的每一行;唯一标识表中每行的这个列(或这组列)称为主键
主键用来表示一个特定的行;没有主键,更新或删除表中特定行很困难,因为没有安全的方法保证操作只涉及相关的行
主键并不总是需要,但大多数情况下都应保证每个表具有一个主键,以便于数据操作和管理
表中任何列都可以作为主键,只要满足以下2个条件:
①任意两行都不具有相同的主键值;
②每个行都必须具有一个主键值(主键列不允许NULL值);
主键值规则:主键通常定义于表的一列上,但也可以一起使用多个列作为主键,这种情况下,上述2个条件必须应用到构成主键的所有列,所有列值的组合必须是唯一的(单个列可以不唯一)
设置主键的几个好习惯:
①不更新主键列中的值;
②不重用主键列的值;
③不在主键中使用可能会更改的值(例如使用电话号码作为主键以标识某个人,当该人更改电话号码时,必须更改这个键)
二、SQL简介
SQL:结构化查询语言(Structured Query Language)缩写,一种专门用来与数据库通信的语言
设计SQL的目的是很好的完成一项任务,即提供一种从数据库中读写数据的简单有效的方法
优点如下:
①几乎所有的DBMS都支持SQL
②SQL简单易学,语句由描述性很强的英语单词构成,而且单词的数目并不多
③一门强有力的语言,灵活使用其语言元素,可进行非常复杂和高级的数据库操作
三、MySQL简介
MySQL是一种DBMS,即它是一种数据库软件
MySQL优点:
①成本低,MySQL开放源代码,一般都可以免费使用甚至免费修改
②性能好,MySQL执行效率很快
③很多大型公司(包括一些全世界知名的互联网企业)使用MySQL来处理自己的重要数据
④简安装使用非常容易
1、客户机-服务器软件
DBMS可分为两类:一类为基于共享文件系统的DBMS(包括诸如Microsoft和FileMaker),用于桌面用途,通常不用于高端或更关键的应用;一类为基于客户机-服务器的DBMS
常见的例如MySQL、Oracle、Microsoft SQL Server等数据库是基于客户机-服务器的数据库,分为2个部分:
服务器部分是负责所有数据访问和处理的一个软件,该软件运行在称为数据库服务器的计算机上;关于数据增删改查的所有请求都由服务器软件完成,这些请求来自客户机软件的计算机
客户机部分是与用户打交道的软件,由客户机软件通过网络提交请求给服务器软件,服务器软件根据需要处理数据,然后将结果返回给客户机软件
服务器软件为MySQL DBMS,可在本地安装的副本上运行,也可以连接到运行在你具有访问权的远程服务器上的一个副本
客户机可以是MySQL提供的工具、脚本语言(如Perl)、Web应用开发语言(如ASP、ColdFusion、JSP和PHP)、程序设计语言(如Java、C、C++)等
2、MySQL工具
MySQL是一个客户机-服务器DBMS,使用它需要一个客户机,即用来与MySQL打交道(给MySQL提供需要执行的命令)的应用;最好使用专门用途的实用程序,推荐如下三个:
①MySQL命令行实用程序
该程序是安装MySQL时自带的一个简单命令行实用程序;没有下拉菜单、用户界面、鼠标支持或其他支持的东西,但最好熟悉它,因为它是使用者安全依靠的一个客户机
②MySQL Adiministrator
MySQL Adiministrator(MySQL管理器)是一个图形交互客户机,用来简化MySQL服务器的管理
下载地址:http://dev.mysql.com/downloads/
③MySQL Query Browser
MySQL Query Browser(MySQL查询浏览器)是一个图形交互客户机,用来编写和执行MySQL命令
下载地址:http://dev.mysql.com/downloads/
四、连接MySQL及简单操作
连接MySQL数据库需要以下这些条件:
①主机名(计算机名):如果是本地MySQL服务器,为localhost
②端口:如果使用默认端口,则为3306
③一个合法的用户名
④用户口令:即登陆密码(如果需要)
1、选择数据库
安装并且成功连接数据库之后,需要选择一个数据库,如果使用的是命令行实用程序,则可以使用user关键字(比如:user tables;)
关键字(key word):MySQL语言组成部分的保留字,决不能用关键字命名一个表或列
2、了解数据库和表
数据库、表、列、用户以及权限等信息被存储在数据库和表中,内部表一般不直接访问,可以使用show命令来显示(比如:show tablebases;)
show tablebases;返回可用数据库的一个列表
show tables;返回当前选择的数据库内可用表的列表
show也可用来显示表列,比如:show columns from tables
自动增量:某些表列需要唯一值,例如:顾客ID,在每行添加到表中时,MySQL可以自动为每行分配下一个可用编号,不用手动分配,这个功能就是自动增量
如果需要该功能,则需要在用create语句创建表时把它作为表定义的组成部分
其他常见show语句还有:
show status:用于显示广泛的服务器状态信息
show create database 和show create table:分别用来显示创建特定数据库或表的MySQL语句
show grants:用于显示授予用户(所有用户或特定用户)的安全权限
show errors和show warnings:用于显示服务器错误或警告消息
MySQL(一)MySQL基础介绍相关推荐
- 一、MySql优化的基础介绍
一.为什么要学习MySql优化 1.避免网站页面出现访问错误 2.增加数据库的稳定性 3.优化用户的体验 二.查询过慢的原因 1.有规律速度过慢:可能用户访问量激增 , 可以使用mysql集群处 ...
- MySQL 教程基础介绍
MySQL 教程基础介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库. 每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据. ...
- Linux下Mysql数据库的基础操作
Linux下Mysql数据库的基础操作 一.Mysql数据介绍 二.数据库相关术语介绍 1.数据库相关名词 2.相关术语介绍 三.Mysql数据库的管理 1.创建数据库用户 2.查询用户状态 3.修改 ...
- mysql核心数据库_从MySQL基础进军MySQL核心架构 178集MySQL数据库核心基础视频教程 MySQL基础案例教程...
从MySQL基础进军MySQL核心架构 178集MySQL数据库核心基础视频教程 MySQL基础案例教程 课程目录 (1) 01MySQL基础_课程引入.avi (2) 02MySQL基础_为什么学习 ...
- [Python从零到壹] 八.数据库之MySQL和Sqlite基础知识及操作万字详解
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- MYSQL的安装基础语法笔记
MYSQL基础语法 学习目标 能够理解数据库的概念(知道数据库是用来干嘛的) 能够安装MySQL数据库 能够启动,关闭及登录MySQL 能够使用SQL语句操作数据库(创建.删除.修改.查询数据库) 能 ...
- MYSQL(3)---MySQL的基本概念介绍
MySQL的相关概念介绍 MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格 ...
- (一)mysql 运维基础篇(Linux云计算从入门到精通)
学习预览: (一)mysql 运维基础篇(Linux云计算从入门到精通) (二)mysql 索引和视图(数据库运维基础补充) (三)mysql 触发器.存储过程和函数(数据库运维基础补充) (四)My ...
- 视频教程-19全新mysql教程零基础入门实战精讲mysql视频DBA数据库视频教程SQL教程-MySQL
19全新mysql教程零基础入门实战精讲mysql视频DBA数据库视频教程SQL教程 7年的开发架构经验,曾就职于国内一线互联网公司,开发工程师,现在是某创业公司技术负责人, 擅长语言有node/ja ...
最新文章
- 昨晚,周杰伦新歌《说好不哭》一夜赚了1000万!
- 安卓绿色联盟两项免费福利重磅发布:EMUI9.0和绿色应用2.0测试能力
- 黯然微信小程序杂记(三):微信小程序实现倒计时功能 附讲解教学 附源码
- tensorflow2.X安装及使用
- AlexNet代码解读
- 最新可用NOD32免ID升级服务器
- JavaScript部分问题
- jsp 或 php 等view之中使用javascript简单处理的使用技巧
- ForkJoinPool 偷任务
- HDOJ 2642 HDU 2642 Stars ACM 2642 IN HDU
- Date类型之组件方法
- JavaScript函数参数缺省值
- 贾俊平《统计学》常用公式
- 【SystemVerilog基础】OOP思想之重载
- 安装office2010失败,提示因为安装了office2010早期试用版本或在安装过程中出错
- 【Java_Spring详解】
- 关于USB Type A/B/C的区别和基本知识
- memcache的优点与缺点
- 找不到该项目,请确认该项目的位置
- 机器人总动员cp图_阿尔法蛋冠名《人偶总动员4》 牵手高天鹤萌翻全场