mysql数据库学习笔记(1)
? ? ?今天开始学mysql数据库,为什么要学这个呢,因为数据库可结构化存储大量的数据信息,方便用户进行有效的检索和访问。数据库可有效地保持数据信息的一致性、完整性、降低数据冗余。数据库可满足应用的共享和安全方面的要求,把数据放在数据库中在很多情况下也是出于安全的考虑。数据库技术能够方便智能化地分析,产生新的有用信息。这些都是数据库的应用,所以学习数据库是有必要的,这里主要使用mysql数据库,因为它有免费的社区版,并且mysql市场占比也是比较高的,在学习之前有必要了解三个有关数据可以的概念
1.数据库相关概念
? ? ?主要是数据库,数据库管理系统,SQL
? ? ?数据库(DataBase):是存储数据的仓库,数据是有组织的进行存储
? ? ?数据库管理系统(DataBase Management System):是操纵和管理数据库的大型软件
? ? ?SQL(Structured Query Language):操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准
? ? ? 主流的关系型数据库有很多,比如Oracle 、Mysql、 Microsoft SQL Server等,但它们都是使用SQL语言来进行操作
? ? ? ?这里我们使用mysql数据库,安装过程自行百度即可
2.数据模型
? ? ? (1)关系型数据库(RDBMS)
? ? ? ? ? ?概念:建立在关系模型基础上,由多张相互连接的二维表组成的数据库
? ? ? 什么是二维表呢,指的就是由行和列组成的表,类似于excel表格,基于二维表存储数据的数据库就是关系型数据库,否则就是非关系型数据库。、
? ? ? ? ? ? 特点:使用表存储数据,格式统一,便于维护;使用SQL语言操作,标准统一,使用方便
? ? (2)数据模型
? ? ? ? ? ? Mysql是关系型数据库,基于二维表进行数据存储,结构如下:
? ? ? ?我们可以通过mysql客户端连接数据库管理系统,然后通过它操作数据库
? ? ? ?使用SQL语句,通过数据库管理系统操作数据库,以及数据库中的表结构和数据
? ? ? ? 一个数据库服务器中可以创建多个数据库,一个数据库中也可以包含多个表,一张表也可以包含多行记录
3.SQL(Structured Query Language)
? ? ? ? ?是结构化查询语言,操作关系型数据库的语言,定义了一套操作关系型数据库统一标准
3.1 SQL通用语法
? ? ? ? ?在学习具体的语法之前,先了解其通用语法。
? (1)SQL语句可以单行或者多行书写,用分号结束。
? (2)SQL可以使用空格或者缩进来增强可读性。
? ? (3)? ?Mysql数据库的SQL语句不区分大小写,关键字最好大写。
? (4)注释:单行:-- 注释内容 或? # 注释内容
? ? ? ? ? ? ? ? ? ? ? ?多行:/*注释内容*/
3.2 SQL分类
? ? ? ? ? ?主要分为4类:DDL、DML、DQL、DCL。
? ? ? ? ?今天先学习DDL,循序渐进
3.3 DDL(Data Definition Language)
? ? ? ?数据定义语言,用来定义数据库对象(数据库,表,字段)
3.3.1 数据库操作
? ? (1)查询所有数据库
show databases;
? ? (2)查询当前数据库
select database();
? ? (3)创建数据库
create database [if not exists] 数据库名 [default charset 字符集] [collate 排序规则];
? ? ?比如创建一个itcast 数据库,使用数据库默认的字符集
create database itcast;
? ? ? 在?同一个数据库服务器中,不能创建两个名称相同的数据库,否则会报错,可以通过if not exists 参数来解决问题,数据库不存在则创建,存在就不创建
create database if not exists it;
? ? ?再者,创建一个hellomysql数据库,指定字符集
create database hellomysql default charset utf8mb4;
? ? (4)删除数据库
drop database [if exists] 数据库名;
? ? ?如果删除一个不存在的数据库,会报错,所以加上if exists参数,存在才会执行删除操作?
? ? ?(5)切换数据库
use 数据库名;
? ? ? 如果想要操作某一个数据库下的表时,就要通过该指令,切换到对应的数据库下,否则不能进行操作。比如:
use itcast;
?3.3.2 表操作-查询创建
? ? ? (1)查询当前数据库所有表
show tables;
? ? ? ?比如:
use sys;
show tables;
?
? ? ?(2)?查看指定表结构
desc 表名;
? ? ?通过这条指令,我们可以看到指定表的字段及其类型,是否可以为NULL。是否存在默认值等信息。
(3)查询指定表的建表语句
show create table 表名;
? ? ? 这条语句主要是看建表语句的,但是部分参数我们在建表时,并没有指定也能查询到,因为这部分是数据库的默认值,比如:存储引擎、字符集等。
? ? ? ? 这里的表格是我提前创建好的,马上就会教大家如何创建一个表。
? ? (4)创建表结构
? ? ?最后一个字段后面没有逗号 。
? ? ?比如我们创建下面一张表:
? ? ?代码如下,暂且先不用知道varchar是什么数据类型
create table tb_user(
id int comment '编号',
name varchar(50) comment '姓名',
age int comment '年龄',
gender varchar(1) comment '性别'
) comment '用户表';
? ? ? ? 今天的mysql学习就先到这了,下集再见。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!