1.mysql介绍#1.1.数据库相关概念#1.1.1.什么是数据?描述事物的符号记录称为数据,描述事物的符号可以是数字、文字、声音、图片、视频等。表现形式有很多种,都可以数字化存储在计算机中#1.1.2.什么是数据库?数据库(DataBase,简称DB),字面意思就是数据仓库,用来存储数据的仓库。该仓库以一定格式将数据存储在计算机存储设备#1.1.3上。什么是数据库管理系统数据库管理系统(DataBaseManagementSystem,简称DBMS),数据存储在数据库中,如何科学地组织和存储数据,如何高效地从数据库中获取和维护数据,这些都是要解决的问题由数据库管理系统完成。需要了解的是,数据库管理系统是一个系统软件,本质上是一个组织管理数据的软件,所以类似功能的软件还有很多,比如:MySQL、Oracle、SQLite、Access、SQLServer、Mongodb等#1.1.4。字段、记录、表字段是用来描述事物的某个特定特征的,比如某个商品的商品名称、价格、库存等,可以对应excel表格中的单元格理解,即列excel表中的记录可以看作是excel表中的行,在描述一个商品的时候,需要提取商品的典型特征,比如商品名称、价格、库存、折扣等,这些特征是不同的,和他们也会形成不同的记录。数据库中的表也可以看做是excel中的表,是很多行的集合,一张表#1.1.5可以放n行以上。数据库服务器、数据库管理系统、数据库、数据表、记录、字段的关系在服务器上安装数据库管理系统,提供数据服务就是我们所说的数据库服务器(其实就是运行数据库管理系统的远程计算机).数据库管理系统可以有效地管理数据库。数据库中组织了很多数据表,数据表中存储了很多数据记录。每条记录由多个字段描述#1.2.mysql安装配置installbrewinstallmysqlonmacsetpasswordmysql_secure_installationstartservicebrewservicesstartmysqlwindows使用集成环境工具下载地址:http://nodeing.com/group/4#1.3.mysql#1.3.1常用命令。登录并退出mysql-uroot-pexit或\q#1.3.2。查看数据库SHOWDATABASES;#1.3.3.创建数据库CREATEDATABASE数据库名称charsetutf8#1.3.4。选择数据库使用数据库名称#1.3.5。删除数据库DROPDATABASE[IFEXISTS]db_name#1.3.6。查看数据表SHOWTABLES#1.3.7。创建数据表CREATETABLE[IFNOTEXISTS]table_name(column_namedata_type,)主键约束PRIMARYKEY每个数据表只能有一个主键,主键保证记录的唯一性,主键自动为NOTNULL并且自动编号AUTO_INCREMENT自动编号必须与主键结合使用。默认初始值为1,每次增加1。/组/4/线程/22#1.5。常用数据类型#1.5.1.Number类型INT普通大小整数,可以是有符号或无符号整数如果是有符号整数,其允许取值范围为-2147483648~2147483647;无符号整数的范围是0到4294967295。最多可以指定11位数字。TINYINT非常小的整数,分为有符号和无符号。有符号时,允许取值范围为-128~127;无符号时取值范围为0~255。因此,最多可以指定4位数字。SMALLINT较小的整数,分为有符号和无符号。前面有符号时,允许的取值范围为-32768~32767;无符号时取值范围为0~65535。因此,最多可以指定5位数字。MEDIUMINT中型整数,有符号和无符号。有符号时,允许取值范围为-8388608~8388607;无符号时取值范围为0~16777215。因此,最多可以指定9位数字。BIGINT较大的整数,分为有符号和无符号。签名时允许取值范围为-9223372036854775808~9223372036854775807;无符号时取值范围为0~18446744073709551615。最多可以指定20位数字。FLOAT(M,D)无符号浮点数。M代表显示长度,D代表小数位。这两个参数不是必填参数,默认为10、2,表示小数点后有2位,整数位数为10位(包括小数位)。FLOAT类型的小数精度可达24位。DOUBLE(M,D)无符号双精度浮点数。M代表显示长度,D代表小数位。这两个参数不是必填参数,默认为16、4,表示小数点后有4位,整数位数为16位(包括小数位)。DOUBLE类型的小数精度可以达到53位。DOUBLE是REAL的同义词。DECIMAL(M,D)未压缩的无符号浮点数。在未压缩的十进制中,每个十进制数字对应一个字节。需要定义显示长度(M)和小数位数(D)。DECIMAL与NUMERIC同义。#1.5.2。日期时间类型DATEYYYY-MM-DD(年-月-日)格式显示日期,取值范围为1000-01-01至9999-12-31。例如,1973年12月30日存储为1973-12-30。DATETIME以YYYY-MM-DDHH:MM:SS格式显示的日期和时间,取值范围为1000-01-0100:00:00到9999-12-3123:59:59。例如1973-12-3015:30:00存储的是1973年12月30日下午3:30。以前的DATETIME格式,只是缺少数字之间的连字符。1973年12月30日下午3:30存入为19731230153000(YYYYMMDDHHMMSS)。TIME以HH:MM:SS格式存储的时间。YEAR(M)以2位或4位格式存储的时间。如果长度设置为2,比如YEAR(2),那么可以表示从1970年到2069年这些年份(70-69)。如果长度设置为4,YEAR(4),可以表示从1901到2155。默认长度为4。#1.5.3。字符串类型CHAR(M)固定长度的字符串,取值范围为1~255个字符,如CHAR(5)。存储时,指定的长度会在右边用空格补齐。长度不是强制参数,默认长度为1。VARCHAR(M)可变长度的字符串,范围从1到255个字符。例如:CHAR(25)。创建VARCHAR字段时,必须定义长度。最大长度为65535个字符的BLOB或TEXT字段。BLOB是BinaryLargeObjects(二进制大对象)的缩写,专门用来保存大量的二进制数据,比如图片或者其他类型的文件。TEXT类型的文件也可以保存大数据。两者的区别在于存储数据的排序和比较。BLOB类型的数据区分大小写,而TEXT类型的数据不区分大小写。此外,不能指定它们的长度。TINYBLOB或TINYTEXT最大长度为255个字符的BLOB或TEXT字段。也不能指定它们的长度。MEDIUMBLOB或MEDIUMTEXT最大长度为16777215个字符的BLOB或TEXT字段。也不能指定它们的长度。LONGBLOB或LONGTEXT最大长度为4294967295个字符的BLOB或TEXT字段。也不能指定它们的长度。ENUM枚举类型是一种非常独特的列表类型。ENUM类型的数据实际上是一个包含多个固定值的列表,只能选择这些值(包括NULL值)。例如,如果你想让一个字段包含“A”、“B”和“C”,你必须这样定义它:ENUM('A','B','C'),只有这些值(或NULL值)可以在此字段中填写。#1.6。基本CURD#1.6.1。查询数据查询一个表中的所有数据#user为表名SELECT*FROMuser查询表中某个字段SELECTnameFROMuser查询符合条件的数据SELECT*FROMuserWHEREname="xiaoqiang"#1.6.2.插入数据INSERTINTOuserVALUES(null,'zhangsan',20)#1.6.3.修改一条数据UPDATEuserSETname='zhangsan'WHEREid=2#1.6.4.删除一条数据DELETEFROMuserWHEREid=3
