随笔分类 - MySQL
摘要:1.停止mysql服务 2.安全模式启动 3.重新登录,不输入密码,直接回车 4.重置密码为root 5.重启mysql服务
阅读全文
摘要:事务处理用来维护数据库的完整性,它保证成批的MYSQL操作要么完全执行,要么完全不执行。如果没有错误发生,整组语句提交给写到数据库表,如果发生错误,则进行回退以恢复数据库到某个已知且安全的状态。 术语: 事务 :指一组SQL语句 回退 :指撤销指定SQL语句的过程 提交 :指将未存储的SQL语句结果
阅读全文
摘要:有时需要在检索出来的行中前进或后退一行或多行,这就是游标的用处所在。 下面使用一个例子来说明游标的使用:
阅读全文
摘要:存储过程就是为以后使用而保存的一条或多条SQL语句。 为什么使用存储过程? 安全,简单,高性能 通过把处理封装在容易使用的单元中,简化复杂的操作 由于不要求反复建立一系列处理步骤,这保证了数据的完整性。如果所有开发人员和应用程序都使用同一(试验和测试)存储过程,则所使用的代码都是相同的。这一点的延伸
阅读全文
摘要:视图是虚拟的表,和包含数据的表不一样,视图只包含使用时动态检索数据的查询。 为什么使用视图? 重用SQL语句 简化复杂的SQL操作 使用表的一部分而不是整个表 保护数据 更改数据格式和表示 创建了一个名为 ProductCustomers的视图,返回订购了任意产品的所有顾客的列表。 下面检索订购了产
阅读全文
摘要:[TOC] 插入数据 虽然这种语法简单,但是不安全,这种SQL语句高度依赖表中列的定义次序,应该尽量避免使用。 另外需要注意一点是, 和`value`的区别: 插入单行的时候使用VALUES,在插入多行的时候使用VALUE 这样比较快一点 。 插入检索出的数据 从一个表复制到另一个表 这句话的意思是
阅读全文
摘要:[TOC] 查询 子查询 即嵌套在其他查询中的查询 表结构说明:每个订单包含订单编号,客户ID,订单日期,在Orders表中。各订单的物品存储在相关的OrderItems表中,Orders表中不存储客户信息,只存储客户ID。客户实际信息存储在Customers表中。 问题1:检索出订购物品RGAN0
阅读全文
摘要:为什么需要分组? 先来看一个问题,如果需要返回供应商DLL01提供的产品数目,SQL如下: 那么如果要返回每个供应商提供的产品数目呢?这时就可以使用分组将数据分为多个逻辑组,对每个组进行聚集计算。 注意, 必须出现在 之后, 之前 。 过滤分组 再来看一个问题,如果需要检索出每个客户的订单数量,根据
阅读全文
摘要:[TOC] 函数 需要明确的一点是,SQL函数是不可移植的 大多数SQL支持一下类型的函数, 用于处理文本字符串 用于在数值上进行计算操作 用于处理日期和时间 返回DBMS正在使用的特殊信息,比如用户登录信息 常用的文本处理函数 | 函数 | 说明 | | | | | LENGTH() | 返回字符
阅读全文
摘要:[TOC] 计算字段并不实际存在于数据库表中,计算字段是运行时在 语句内创建的 问题:要生成一个供应商报表,需要在格式化的名称中列出供应商的位置 解1: MySQL不支持 解2: MySQL支持 这里可以使用 去掉值右边的所有空格, 去掉左边空格, 去掉两边空格。 从前面输出中,我们会发现一个问题,
阅读全文
摘要:[TOC] 高级数据过滤 问题:检索由供应商DLL01制造且价格小于等于4美元的所有产品的名称和价格 解: 乍一看,似乎没有问题, 很符合题目,但是看一下结果: 为什么会出现价格低于10美元的产品?? 原因在于求值顺序 ,也就是 在求值过程中优先级更高,操作符被错误的组合。 正解: 提示: 任何时候
阅读全文
摘要:[TOC] 1. 检索数据 1.只检索前5行数据 2.指定从哪儿开始及检索的行数 从第6行开始的2行数据,注意, 第一个被检索的是0行,而不是第一行 。结果如下: 当然,也可以写成 2. 使用注释 使用 使用 使用 3. 排序检索数据 需要明白的一点是,检索出的数据并不是随机显示的,数据一般将以它在
阅读全文
摘要:创建DB 使用以下命令创建db,用于后续所有命令练习 create table insert data OK,创建完成后我们就会拥有一个有数据的db,开始我们后续的练习吧
阅读全文

浙公网安备 33010602011771号