`
sogotobj
  • 浏览: 619791 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

MySQL笔记(MYSQL准备语句)

 
阅读更多

MYsql准备语句

MySQL支持准备语句,即在执行真正的查询前,将查询的模式先发送到服务器进行解析,将解析和优化的结果保存下来,在一些编程库中支持这种功能,通过准备语句可以很高效的在客户端和服务器端进行数据发送。

准备语句中,将?作为参数,例如:

INSERT INTO people(last_name,first_name) values(?,?);

Mysql将把一个状态句柄发送给客户端,客户端根据状态句柄把每个问号对应的值发送到服务器执行查询,具体方式取决与编程语言

准备语句具有以下优点:

1.只需解析一次查询

2.缓存了部分执行计划

3.使用二进制发送参数,速度更快

4.只发送参数,减少网络流量

5.参数被保存在服务器缓冲区,无需在内存中到处拷贝数据

除了函数库,MySQL也有准备语句的sql接口,例如:

mysql> set @sql = 'select * from people where last_name = ?';

Query OK, 0 rows affected (0.00 sec)

mysql> PREPARE pre_test FROM @sql;

Query OK, 0 rows affected (0.00 sec)

Statement prepared

mysql> SET @name ='zz11';

Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE pre_test USING @name;

+-----------+------------+------------+--------+

| last_name | first_name | dod | gender |

+-----------+------------+------------+--------+

| zz11 | ss | 0000-00-00 | m |

+-----------+------------+------------+--------+

1 row in set (0.01 sec)

通过这种方法,可以在存储过程内实现一种类似“动态SQL”的效果。但注意这里SQL接口使用的并不是二进制协议。

准备语句具有一些局限:

1.只针对一个连接;

2.不能使用5.0之前的缓存

3.不能在存储函数内使用

4.如果忘记销毁,可能在服务器端产生资源泄漏,并且有一个全局参数限定存储语句数量。

分享到:
评论

相关推荐

    MySQL语句汇总及重要笔记

    MySQL语句汇总及重要笔记,汇总了数据库创建,相关配置等资料

    MySQL语句笔记.doc

    MySQL语句笔记.doc

    MySQL笔记及常用SQL语句

    MySQL笔记及常用SQL语句

    mysql个人学习笔记

    这里有mysql的增删改查基本语句,完全是自己看视频总结的,比较适合新手快速使用mysql

    MySQL笔记.pdf

    笔记当中对SQL语句进行了详细的介绍,对数据库的创建,表的创建,数据库的查询,表内容的查询进行了十分详细的介绍,并且也附上了详细的代码供阅读者使用

    MySQL笔记,小赵同学整理

    带书签目录,每一个知识点都附带有语句代码和运行截图,跟着笔记学习3天时间足够吃透MySQL基础,这是带印记的

    mysql基础笔记

    mysql 学习基础笔记 .Mysql 基础操作 1.1 mysql表复制 1.2 mysql索引 1.3 mysql试图 1.4 mysql 内置函数 1.4.1 字符串函数 1.4.2 数学函数 1.5 mysql预处理语句 1.6 mysql事务处理 1.7 mysql存储 1.8 ...

    MySQL基础-笔记.md

    2. 能够安装MySQL数据库 3. 能够启动,关闭及登录MySQL 4. 能够使用SQL语句操作数据库 5. 能够使用SQL语句操作表结构 6. 能够使用SQL语句进行数据的添加修改和删除的操作 7. 能够使用SQL语句简单查询数据

    mysql语法学习笔记

    记的视频来自于:...我在视频的基础上做了一些修改:比如说视频中可能有些不是太严谨但是被我发现了的,或者在弹幕中我看到有人提出疑问的,再或者一些我自己的见解,我都会有说明

    mysql笔记,初学者和复习者可以看下

    自己做的笔记,初学者和复习者可以看下,很有用,有兴趣的可以看一下,有详细的查询语句什么的

    MySQL数据库sql语句增删改查笔记

    MYSQL增删改查笔记,属于基础类的,有需要的朋友可以下载。

    MySQL快速学习及sql语句大全.rar

    该笔记记录了详细的mysql各个知识点,包括数据的类型,表的创建及操作,数据库的创建和操作,...以及平时需要使用到的各种数据库语句,可以说该笔记集合了学习及提供mysql语句于一体的功能,让你免去自己写sql的操作。

    超强MySQL课程笔记_V4.0.ctb

    安装部署 备份恢复 主备复制 读写分离 HA架构 监控审计 压力测试 性能优化 自动化运维 ==数据的存储方式 ... A.数据库管理系统(DataBase Management System, DBMS): ORACLE、MySQL、DB2 ...MySQL 开源 MariaDB

    韩顺平j2ee-JDBC与MySQL学习笔记

    韩顺平j2ee-JDBC与MySQL学习笔记

    MySQL个人学习笔记

    个人学习MySQL的一套学习笔记,记录了我所学的各种MySQL语句及其知识要点,采用思维导图的方式记录,逻辑清晰,分类准确,方便查找所需的知识点,也方便随时打开查阅,可以拿来复习、学习、或者查阅相应语句,也可以...

    MySQL数据库笔记主要是java中使用的语句

    MySQL数据库笔记主要是java中使用的语句

    MySQL学习笔记(含基础、运维、进阶三部分)

    MySQL学习笔记(含基础、运维、进阶三部分) MySQL学习笔记(含基础、运维、进阶三部分) MySQL学习笔记(含基础、运维、进阶三部分) 包含了我学习 MySQL 过程中的笔记和资源,从入门到进阶的内容都有涉及。通过...

    高级MySQL笔记时,需要深入了解数据库的内部机制和优化技巧,以提高数据库性能和效率

    在进行高级MySQL笔记时,需要深入了解数据库的内部机制和优化技巧,以提高数据库性能和效率。索引优化:索引是提高数据库查询速度的重要工具。可以通过分析查询语句和表结构,合理地设计和使用索引,避免全表扫描,...

    MySQL优化文档笔记

    MySQL Server中的核心组件有 连接器:负责对接客户端提交的连接请求 分析器:对发送过来的语句进行词法分析 和语法分析 优化器: 基于CBO的方式来对语句进行基础优化,并规定执行路径 执行器: 用来根据优化后的语句...

Global site tag (gtag.js) - Google Analytics