关于MySQL数据库
MySQL数据库
一、数据库的基本概念1、数据库管理技术的发展阶段
什么是数据管理:对各类数据进行分类,组织,编码,存储,检索,维护。
数据管理的技术发展:
人工管理
C/C++学习秃头俱乐部 MySQL数据库 一、数据库的基本概念1、数据库管理技术的发展阶段 什么是数据管理:对各类数据进行分类,组织,编码,存储,检索,维护。 数据管理的技术发展: 人工管理阶段:(20世纪50年代,计算机硬件还没发达,没有磁盘, 纸袋) 文件系统阶段:(20世纪50年代后期-60年代中期),出现了磁盘,高级语言,操作系统 数据库系统阶段:(20世纪60年代后期-现在),网络技术的发展,软硬件功能提升,文件系统已经远远不能满足于要求,尤其是关系型数据库。 2、数据库系统的概念 什么是数据库:按照一定的规则进行存储,管理数据的仓库。 什么是数据库管理系统:操作和管理数据库的大型软件。建立、使用、维护数据库。对数据库进行统一的管理和控制。 常用的数据库管理系统:MySQL, Oralce, SQL Server , DB2 什么是关系型数据库:采用关系模型来组织数据的数据库,(关系模型可以简单的理解为二维表格模型) 3、什么是SQL语句 结构化查询语句, (Structure Query Language) 由IBM公司70年代设计出来的,被ISO组织纳为关系数据库的国际标准,也是目前使用最广泛的关系数据库标准语句。 4、MySQL的发展历史 1985年 ,由瑞典的XXX和XXX成立了一家公司,MySQL AB公司,ISAM存储引擎算法。 MySQL是一款免费开源mysql数据库,小型,关系型数据库。 2000年,MySQL对原来的存储引擎进行整理,命名为MyISAM 2004年,发布了4.0经典版 2005年,发布了5.0版本 2008年,被Sun公司收购 2009年,Sun公司被Oracle公司收购了 二、MySQL的安装和配置1、下载MySQL 2、安装MySQLa.解压 b.添加环境变量 D:\Program Files\mysql-8.0.22-winx64\bin c.安装数据库 mysqld --initialize --console mysqld –install(注意:一般要以管理员身份运行控制台) net start mysql开启MySQL服务 如果要停止MySQL服务 如果要卸载MySQL 首先:先停止MySQL服务 然后:删除服务名 再次:删除D:\Program Files\mysql-8.0.22-winx64\这个文件夹下所有文件:MySQL文件 最后:删除环境变量; d.登录MySQL数据库 mysql –uroot –pxxx 可以登录,不推荐,因为密码暴露 建议这么写: e.初次修改密码 alter user root@localhost identified by '12345678'; f.退出 exit; quit; 三、MySQL数据库基本操作1、系统数据库 查看数据库 show databases; SHOW DATABASES; SQL语句不区分大小写 2、创建数据库 create database 数据库名; 数据库命名规则: 1、数据库名不能与已经存在的数据库重名。 2、由字母,数字,下划线,@, #,$符号组成,a-z, A-Z, 其他语言的字母; 3、首字母不能是数字和$ 4、标识符不能是MySQL的保留字 5、不允许有空格和特殊字符 6、长度不能超过128位 7、数据库名一定要有实际意义,见名知意。 create database test; 执行完毕之后,提示分为三部分: Query OK: 表示SQL语句执行成功; 1 row affected:表示操作只影响了一行记录; (0.01sec):表示操作执行的时间。 注意:数据库已经存在了,再次创建就会报错: 可以使用安全的方式创建数据库: create database if not exists test; 3、选择数据库 use 数据库名 这个语句可以打分号,也可以不打分号 如果你选择不存在的数据库,则会报错: 4、删除数据库 drop database 数据库名; 注意: 1、如果删除的数据库已经删除或者不存在,则会报错: 2、执行这条命令的时候,一定要谨慎,数据不能恢复 四、数据库的存储引擎 存储引擎是什么:目的就是为了提高MySQL数据库管理系统的使用效率和灵活性。 我们可以根据实际的需要选择合适的存储引擎。 存储引擎,指定了表的类型,表的存储方式,索引数据,是不是支持事务。 1、通过show engines;查看数据库所支持的存储引擎 show engines; show engines \g show engines \G 注意:”;”、”\g”:都是作为语句的结束,作用是一样的。 “\G”:以每一行显示 2、通过show variables来查看所支持的存储引擎 3、查询默认的存储引擎 查询my.ini文件 四、MySQL数据类型 主要有数值类型、日期/时间类型、字符串类型 (1)、数值类型: 整数类型:tinyint、smallint、mediumint、int、bigint 浮点小数类型:float 、double 定点小数类型:decimal (2)、字符串类型: 字符串类型:文本字符串类型、二进制字符串类型 包括:char 、varchar、binary、blob、text、enum、set等 (3)、日期/时间类型 包括:year、time、date、datetime、timestmap 1、整数类型 注意:如果你无法区分每一个整数类型的取值范围,可以查看MySQL的帮助信息。 helpcontents; help Data types; help tinyint; 创建数据库: create database test; 使用数据库: use test 创建数据表: create table test_int( num1 tinyint unsigned, num2 smallint, num3 mediumint, num4 int, num5 bigint ); 注意:如果是有符号或者无符号,类型后面加上unsigned或者 signed,默认有符号,可以不加。 测试数据: insert into test_int (num1, num2, num3, num4, num5) value (1, 32766, 1234567, 2000000000,123456789012); 如果数据超过表示范围,将报错。 也可以使用SQL语句 show errors;或者show warnings;来观察错误或者警告信息。 查询所有数据: select * from test_int; 2、浮点型和定点型 浮点型: 定点型: 浮点型和定点型都可以使用(M,N)来表示,M:精度,表示总共的位数;N:标度,表示的小数的位数。 float(M,D): M:总位数,D:小数点后面的位数,如果省略M和D,这个值,将在硬件允许的限制范围,单精度浮点数一般精确到7位小数。 double(M,D): M:总位数,D:小数点后面的位数,如果省略M和D,这个值,将在硬件允许的限制范围,双精度浮点数一般精确到15位小数。 decimal (M,D): M:总位数,D:小数点后面的位数,如果省略D,默认值为0,如果省略M,默认值为:10 注意:如果要求小数数据精确度非常高,可以使用dec和decimal类型 创建数据表: create table test_float( num1 float, num2 double, num3 decimal(64,30) ); 插入数据: insert into test_float (num1, num2, num3) value (1.0, 123456789.123456789, 1234567890123456789012345678901234.123456789012345678901234567890); 注意:float、double类型在存储的时候,存储的都是近似值,而decimal存储的是字符串,因为提供的是更高的精度,需求要表示金额等货币类型的时候,优先选择decimal 3、位类型 说明:bit数据类型,用来存储bit位 bit(M) : 代表可以存储M个bit, M的取值范围:1-64 创建数据表: create table test_bit( id bit(8) ); 插入数据: create table test_bit( id bit(8) ); 4、日期和时间类型 查看系统时间:select curdate(), curtime(), now(), year(now()), time(now()); 创建数据表: create table test_datetime( num1 date, num2 datetime, num3 timestamp, num4 time, num5 year ); 插入数据: insert into test_datetime (num1, num2, num3 , num4, num5) value (curdate(), now(), now(), time(now()), year(now())); (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |