mysql数据库基础一(单表)
1.数据库(DB):存储数据的仓库,数据库中数据存在硬盘上,主要是用来存取数据,生成新的数据 2.数据库管理系统(DBMS):管理和操作数据库的软件mysql数据库,如:oracle,mysql,sql server 3.数据库管理员(DBA):管理操作数据库 4.数据库发展史:线型数据库,网状数据库,关系型数据库,非关系列数据库 关系型数据库:Oracle,mysql,sql server,DB2… 非关系型数据库:redis,Mango DB,nosql… 5.关系型数据库的组成:由表,表与表之间的关系及对象组成 6.数据库表用来存储数据.数据库由行和列 7.数据库表中行=记录=实体 8.数据库表中列=域=字段 9.数据库最重要是数据完整性 数据完整性:数据的准确性和安全性 10.MySql:是前sun公司推出一个关系型数据库产品,MySql5.5之前开源,免费,体积小;MySql5.5之后开始收费;MySql数据库默认用Innodb引擎 11.MySql的卸载和安装 1:MySql的卸载的步骤: 1:停止MySql服务:任务栏鼠标右键-》选择任务管理器-》详情信息-》服务-》MySql右键停止。 2:控制面板-》程序和功能-》MySql-》右键卸载。 3:清注册表:系统盘(C盘)-》ProgramData-》MySql右键删除。 2:MySql的安装: 略 1:找到my.ini:D:\Program Files\MySQL(mysql的安装路径) 2:修改my.ini中编码: 12.启动/停止服务: 1:启动/关闭服务:任务栏鼠标右键-》选择任务管理器-》详情信息-》服务-》MySql右键开始/停止; 2:启动/关闭服务:我的电脑鼠标右键-》管理-》服务-》MySql右键开始/停止; 3:启动/关闭服务:用管理员身份运行cmd->输入命令net stop/start mysql; 13.登录MySql数据库管理系统: 1:第一种登录:打开MySql客户端-》输入root账号对应的密码; 2:第二种登录:打开cmd-》cd MySql安装文件bin目录下-》输入登录命令:mysql -u 账号 -p 密码; 3:第三种登录:用Navicat for MySQL创建连接就可登录。 14.Sql:数据库结构化查询语言。操作数据库管理系统,默认讲Sql-92标准 1:DDL:数据库定义语言,创建,删除及修改数据库及表等 2:DCL:数据库控制语言,创建和删除用户,给用户授权,撤消权限等 3:TCL:事务控制语言,与事务相关操作等 4:DML:数据库操作语言,对数据库表中数据作增加,修改,删除操作 5:DQL:数据库查询语言,对数据库表中数据作查询操作 15:DDL数据库定义语言: 1:查看数据库:show databases; 2:创建数据库:create database [IF NOT EXISTS] 数据库名 [default charset utf8]; 3:查看数据库的创建:show create database 数据库名; 4:修改数据库的字符编码:alter database 数据库名 character set utf8; 5:删除数据库:drop database [if exists] 数据库名; 6:查看当前数据库:select database(); 7:进入数据库:use 数据库名; 8:创建表:
注意:主键列 VS 唯一键 相同点:确保列值不重复; 不同点:主键列不能为空;唯一键可以为空;主键列可以由一列或多列组成,但是唯一键一般都是用来限制一个列。由多个列组成主键叫复合主键,复合主键列要求组成的列有一个列值不同就是不同的主键,复合主键要求组成的列的所有列值相同就是重复主键。 9:查看当前数据库下所有表:show tables; 10:查看表中字段:desc 表名; 11:查看数据库的创建语言:show create table 表名; 12:向表中添加列:alter table 表名 add 列名 数据类型 [列的约束]; 13:修改表中列的数据类型:alter table 表名 modify 列名 数据类型; 14:删除表中列:alter table 表名 drop 列名; 15:修改表名:RENAME TABLE 原表名 TO 新表名; 16:修改表的字符集为gbk:ALTER TABLE 表名 CHARACTER SET gbk; 17:修改列名: ALTER TABLE 表名 CHANGE 原列名 新列名 数据类型; 18:删除表:drop table 表名; 16.DML数据库操作语言:对数据库表中数据作增,改,删 1:向表添加数据 1:添加一条数据的语法:
注意:列名与值要一一对应(个数一样,顺序一样,数据类型要匹配) 注意:如果表中所有列都要插入表名后面(列名1,列名2…)可以省略
2:添加多条数据的语法:
注意:列名与值要一一对应(个数一样,顺序一样,数据类型要匹配)
3:插入默认列的值:
2:修改表中数据的语法:update 表名 set 列名1=值1,列名2=值2…[where 条件];
3:删除表中数据: 1:删除表中一条或多条数据的语法:
注意:如果删除表中数据时,没有写where 条件,删除表中所有数据
2:删除表中记录。(先把表删除,然后再创建空表)语法:
3:删除表总结: 语法一:
注意:一般情况下,删除表中数据一定要加条件,否则删除整张表的数据。delete删除记录行后,标识数据删除后,标识数据不再重复
删除表中所有记录 第一种:drop table 表名; 删除最彻底,将整张表及与表相关的数据(包括表结构,表中数据,标识种子)全部删除。 第二种:truncate table 表名;删除效率最高,将表中数据一页一页的删除,但是表的结构还在(将原表删除,新建一个与原表结构相同的表),原来表中标识种子也删除了重新生成新的标识种子。 第三种:delete from 表名;只删除了表中数据(一条一条删除表中记录),表的结构,表的标识种子都在。 注意:标识种子:指的标识列的起始值;标识种子删除后,无法再继续自增
17.DQL数据库的查询语言:查询数据库表中数据 1:查询语法:
2:聚合函数:求和 sum(列名),求总记录数 count(列名), 求最大值 max(列名),求最小值 min(列名),求平均数 avg(列名) 注意:聚合函数一般不能与普通列一起查询(语法没有问题,逻辑有问题),结果集无法匹配;除非普通列作为分组条件.。聚合函数不能用在查询的where后面,其他地方可用。
3:分组查询和筛选 注意:有having地语句一定有groub by;有groug by的语句不一定有having
4:(MySql)limit的用法 1:限制查询的结果条数: limit 条数;
2:分页:
分页的总语法:
5:模糊查询: 通配符: *: 代表表中所有列 _ :任意一个字符 %:任意0~n个字符 1:like的使用,某个列像…,like只能用于字符列
2:between min and max查询列名在min到max之间 注意:between…and…适用于数据列;between…and…小范围的值写在前面,大范围的值写在后面;反之,语法不报错,但是无意义。
3:in(值1,值2…) 查询列名满足in后面括号中任意一个值都可以
4:列名 is [not] null,判断一个列是否为空.列名 is not null 不为空
5:(oracle,mysql)DISTINCT 去重
18.在SQL语句中,运算符(算术运算符,赋值运算符,比较运算符,逻辑运算符)可以直接用 1.在MySql中不等于: 或 != 等于: = 2.逻辑运算符: and(并且),or(或者) 19.数据的完整性:数据库最重要的就是数据的完整性 1.完整性:数据的可靠性和准确性 2.数据完整性:实体完整性,域完整性,引用完整性,自定义完整性 3.实体完整性:主键约束,唯一约束,标识列 注意:一般情况下,每张表都要有一个主键 4.域完整性:数据类型,默认约束,非空,检查约束(check); 注意:MySql5.5之后不支持检查约束 5.引用完整性:外键约束 外键约束的优点:保护数据的安全性 缺点:效率低 综合外键约束的优缺点:一般不建立外键约束 6.自定义完整性:规则、存储过程、触发器 (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |