`
endual
  • 浏览: 3566827 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

mysql必知必会 over 存储过程和触发器

 
阅读更多

==========

咒骂一句mysql必知必会,存储过程的代码是无法实现的,坑爹么?

==========

推荐大家看上面那本书,通熟易懂,看的时候,请先看最后的那一张,里面有几个表先建立起来,那么

你学的时候就可以用到了,该死我的现在才知道,所以在敲书上的代码的时候,都是自己设计的表。

 

 

---------------------

于是今天看好了,除了一个爽子,还是爽,因为这是我2年来看的唯一一本mysql的书。对sql语句有一个全面的了解的。

可能平时在写代码过程中更加好吧。

 

--------------------------

存储过程

使用的大多数SQL语句都是针对一个或者多个表的单条语句,并非所有操作都这么简单,经常会有一个完整的操作需要多条语句才能完成。

1.为了处理订单,需要核对以保证库存中有相应的物品

2.如果库存有物品,这些物品需要预定以便不能将她们再卖给别的人,并且要减少可用的物品数量以反映正确的库存量

3.库存中没有的物品需要订购,这需要与供应商进行某种交互

4.关于哪些物品入库和哪些物品退订,需要通知相应的客户

 

 

存储过程的优势的简单 爱情 可靠

确定是复杂 而且要权限

 

mysql执行存储过程叫做CALL,称为调用,所用用的CALL的关键词。

 

执行存储过程

CALL productpricing (

@pricelow,

@priceHigh,

@priceave

 

)

 

存储过程的调用可以存入参数,也可以不传入参数的

 

创建存储过程

 

CREATE PROCEDURE proce()

BEGIN

  SELECT AVG(id) AS idave FROM test1

END

 

SELECT VERSION();

 

 

 CREATE PROCEDURE pxx (

 

 OUT a VARCHAR(50),

 OUT b VARCHAR(50),

 OUT c VARCHAR(50)

 

 )

BEGIN

SELECT sname INTO a FROM tb_x ;

SELECT sname INTO b FROM tb_y ;

SELECT sname INTO c FROM tb_z ;

END ;

 

CALL pxx(

 @a,

 @b,

 @c

)

 

SELECT @a 就可以返回a的结果了

 

CREATE PROCEDURE ordertoal (

 IN inid INT ,

 OUT outvalue VARCHAR(60)

)--这个是注释

BEGIN

SELECT sname FROM test1

WHERE id = inid

INTO outvalue;

 

END;

 

//

触发器的学习

 

mysql语句在需要时被执行,存储过程也是如此,但是,如果你想要某条语句在事件发生时自动执行,怎么办?例如,

 

每当增加一个顾客到某个数据表时,都检查其电话号码格式是否正确,州的缩写是否为大写

每当订购一个产品时,都从库存数量中减去订购的数量

无论何时删除一行,都在某个存档表中保留一个副本

 

所有的这些例子的共同之处就是他们都需要再某个表发生更改是自动处理,这确切的说就是触发器,触发器是mysql响应一下任意语句而

自动执行的一条SQL语句

delect 

INSERT

UPDATE

 

其他mysql语句是不支持触发器的

 

 

创建触发器:

 

在创建触发器时,需要给出4条信息

1.唯一的触发器的名字

2.触发器关联的表

3.触发器应该响应的活动(DELETE INSERT UPDATE)

4.触发器何时执行 (处理之前还是之后)

 

 

CREATE TRIGGER newpre 

AFTER  INSERT ON producets 

FOR

  EACH ROW SELECT 'producet added'

 

 

CREATE TABLE tb_tr (

 

 id INT NOT NULL,

 sname VARCHAR(60)

)

 

CREATE TRIGGER newtri 

AFTER INSERT ON tb_tr

FOR EACH ROW SELECT new.

 

SHOW CHARACTER SET;

 

SHOW COLLATION;

 

SELECT USER FROM USER;

 

USE mysql;

 

CREATE USER endual IDENTIFIED BY '123456';

 

SELECT * FROM USER;

 

SHOW GRANT FOR endual;

 

我们的国家控制着绝大部分的资源,他们圈养了暴力机器,然后让我们在水深火热中生活,

这样的社会,如果我们不努力,那么等待我们的将是贫困和艰难。所以,除了努力,我们这一代人没的选择。

分享到:
评论

相关推荐

    mysql触发器+存储过程

    文件“MySQL存储过程.pdf”和“OReilly.MySQL.Stored.Procedure.Programming.rar”可能会提供关于如何创建、调用和管理MySQL存储过程的详细指南,而“MySQL触发器.rar”则可能包含触发器的创建、使用和优化方面的...

    MYSQL必知必会的PDF书和源代码

    这份"MYSQL必知必会"的PDF书籍和源代码,为学习和掌握MySQL提供了宝贵的资源。以下是一些关于MySQL的重要知识点,这些内容可能在书中有所涵盖: 1. **SQL基础**:SQL(Structured Query Language)是用于管理关系...

    《MySQL必知必会》高清PDF

    书中继承了《MySQL必知必会》的优点,没有过多阐述数据库基础理论,而是紧贴实战需要,直接从数据检索开始,逐步深入各种复杂的内容,包括联结的使用、子查询、正则表达式和基于全文本的搜索、存储过程、游标、...

    MySQL必知必会.高清文字版.带书签目录.pdf

    书中继承了《MySQL必知必会》的优点,没有过多阐述数据库基础理论,而是紧贴实战需要,直接从数据检索开始,逐步深入各种复杂的内容,包括联结的使用、子查询、正则表达式和基于全文本的搜索、存储过程、游标、...

    MYSQL必会必知

    标题《MYSQL必会必知》指出了本文的重点在于介绍MySQL数据库的基础知识,强调了学习MySQL的必要性。描述部分重复强调了“mysql基础”,可能是由于文档错误,不过这仍然突出了本文的主旨:掌握MySQL的基础操作和概念...

    mysql必知必会PDF和随书源码

    《MySQL必知必会》是一本非常适合初学者的教材,它深入浅出地介绍了MySQL的基本概念、语法和实际应用。书中涵盖的内容包括但不限于数据库设计、SQL查询语言、表的创建与管理、数据的增删改查、索引、视图、存储过程...

    MySQL存储过程和触发器

    MySQL中的存储过程和触发器是数据库管理中两个重要的概念,它们极大地增强了数据库的功能和灵活性。 存储过程是一种预编译的SQL语句集合,它可以视为数据库中的一个可执行对象。存储过程有以下几个显著优点: 1. *...

    MySQL必知必会PDF 高清晰中文书签版

    "MySQL必知必会"是一本深入浅出的教材,适合初学者和有一定基础的开发者阅读,帮助他们掌握MySQL的核心概念和实用技能。这本书的PDF高清晰中文书签版,提供了方便的导航,使得学习过程更加高效。 在书中,你可以...

    Mysql存储过程游标触发器

    Mysql存储过程游标触发器

    mysql必知必会pdf

    尽管提供的部分内容似乎偏离了主题(主要包含了一些重复的网址链接),但我们可以基于标题和描述中的关键词“必知必会”来展开关于MySQL的重要知识点。 ### MySQL基础概念 1. **SQL语言**:SQL (Structured Query ...

    MYSQL触发器与存储过程.ppt

    MySQL中的存储过程和触发器是数据库管理中两个重要的高级特性,它们极大地增强了数据库的灵活性和安全性,同时也优化了性能。 **存储过程**是预编译的SQL语句集合,存储在数据库服务器上,可以在需要时被调用执行,...

    MySQL必知必会(官网购买)原版电子版(非扫描版)带清晰详细书签

    MySQL必知必会是数据库领域的经典著作,专为想要深入理解和掌握MySQL的读者设计。这本书详细介绍了MySQL的各种功能和操作技巧,旨在帮助读者快速成为MySQL的专家。原版电子版确保了内容的准确性和权威性,同时配备了...

    MySQL触发器、存储过程、自定义函数、视图示例

    #### 二、MySQL存储过程 存储过程是一组预编译的SQL语句,它们可以作为一个单元调用并执行。使用存储过程可以提高代码重用性和执行效率,并且可以封装复杂的逻辑处理。 **示例:** 本例中创建了一个存储过程`sp_...

    必知必会mysql学习.zip

    "必知必会MySQL学习"的压缩包文件显然旨在提供一个全面的学习资源,帮助初学者或进阶者深入理解MySQL的核心概念和技术。在这个教程中,我们可以期待涵盖以下几个关键知识点: 1. **基础概念**:首先,我们会学习...

    MySQL必知必会

    本书《MySQL必知必会》深入浅出地介绍了MySQL的基础知识和实用技能,是学习数据库管理的重要参考资料。 首先,我们需要理解什么是数据库。数据库是一个有组织地存储数据的系统,它允许高效、安全地存储和检索数据。...

    数据库实验报告-存储过程、触发器

    通过这些实验步骤,学生能够深入理解存储过程和触发器的工作原理及其在实际数据库应用中的作用。同时,这些操作也展示了如何在数据库管理系统中编写和管理这些数据库对象,有助于提升数据库设计和管理能力。

    Mysql必知必会+高性能MYsql等资源

    1. **《Mysql必知必会》**:这本书是MySQL初学者的理想入门读物,详细介绍了MySQL的基础概念、安装配置、SQL查询语言、表的设计与操作、索引、视图、存储过程、触发器等核心知识。读者通过本书可以快速掌握数据库的...

    MYSQL必知必会笔记的数据库文件仅供参考

    MYSQL必知必会笔记的数据库文件仅供参考MYSQL必知必会笔记的数据库文件仅供参考MYSQL必知必会笔记的数据库文件仅供参考MYSQL必知必会笔记的数据库文件仅供参考MYSQL必知必会笔记的数据库文件仅供参考MYSQL必知必会...

    mysql存储过程、触发器.pdf

    MySQL 存储过程和触发器详解 MySQL 存储过程是指一组为了完成特定功能的 SQL 语句集合。存储过程的优点包括: 1. 封装性:存储过程可以将多个 SQL 语句封装在一起,方便调用和维护。 2. 可增强 SQL 语句的功能和...

Global site tag (gtag.js) - Google Analytics