0904 存储过程、触发器、事务、视图、生成脚本

create database lianxi0904
go
use lianxi0904
go

create table gong
(
  gcode int primary key identity(1001,1),
  gname varchar(20),
  gtel int
)
go
insert into gong values(‘可口可乐公司‘,1234567)
insert into gong values(‘日用品公司‘,1234567)
insert into gong values(‘名鞋公司‘,1234567)
insert into gong values(‘文具公司‘,1234567)
go

create table cang
(
  ccode int primary key identity(10001,1),
  cname varchar(20),
  cshu int,
  cprice decimal(18,2),
  cg int
)
go

insert into cang values(‘可口可乐‘,4,5,1001)
insert into cang values(‘牙刷‘,5,5.5,1002)
insert into cang values(‘阿迪‘,2,225,1003)
insert into cang values(‘毛笔‘,15,5,1004)
      
insert into cang values(‘芬达‘,15,4.5,1001)
insert into cang values(‘牙膏‘,3,9.5,1002)
insert into cang values(‘耐克‘,2,995,1003)
insert into cang values(‘钢笔‘,12,10.5,1004)
      
insert into cang values(‘雪碧‘,4,3.5,1001)
insert into cang values(‘杯子‘,6,10,1002)
insert into cang values(‘乔丹‘,3,345,1003)
insert into cang values(‘铅笔‘,12,2,1004)
      
insert into cang values(‘可乐‘,22,5,1001)
insert into cang values(‘洗衣粉‘,12,8,1002)
insert into cang values(‘鸿星尔克‘,2,145,1003)
insert into cang values(‘中性笔‘,6,2,1004)
go

create table piao
(
  pcode int primary key identity(1000001,1),
  pname varchar(20),
  pshu int,
  pprice decimal(18,2),
  pzong decimal(18,2),
  pc int
)
go

create proc cun
@a varchar(20),
@b int
as
begin
update cang set [email protected] where [email protected]
end
go
exec cun ‘可口可乐‘,1
select cshu from cang where cname=‘可口可乐‘

create proc chu
@c int,
@e varchar(20)
as
declare @d int
select @d=cshu from cang where [email protected]
declare @f decimal(18,2)
select @f=cprice from cang where [email protected]
declare @g decimal(18,2)
set @[email protected]*@c
declare @h int
select @h=ccode from cang where [email protected]
begin
if @c<[email protected]
 begin
 update cang set [email protected]
 insert into piao values(@e,@c,@f,@g,@h)
 select *from piao
 end
else
print ‘您需要进货‘+cast((@[email protected]) as varchar(20))+‘个‘[email protected]
end
go
exec chu 10,‘芬达‘

时间: 2024-08-04 20:37:52

0904 存储过程、触发器、事务、视图、生成脚本的相关文章

关于oracle的函数,存储过程,触发器,序列,视图,左右连接一些的应用 带案例

CREATE TABLE STUDENT( --创建学生表  ID NUMBER(10) PRIMARY KEY,   --主键ID  NAME VARCHAR2(20),  CLASSNAME VARCHAR2(20) --班级ID);CREATE SYNONYM STU FOR STUDENT; --给学生表STUDENT创建别名(同义词)INSERT INTO STUDENT VALUES(1,'Tom',1);INSERT INTO STUDENT VALUES(2,'Jack',1);

MYSQL--存储过程-触发器-事务

本文内容: 存储过程  触发器 事务 一.存储过程 什么是存储过程 大多数SQL语句都是针对一个或多个表的单条语句.并非所有的操作都怎么简单.经常会有一个完整的操作需要多条才能完成.存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它.存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程.

MySQL拓展 视图,触发器,事务,存储过程,内置函数,流程控制,索引,慢查询优化

视图: 1.什么是视图 视图就是通过查询得到一张虚拟表,然后保存下来,下次直接使用即可 2.为什么要用视图 如果要频繁使用一张虚拟表,可以不用重复查询 3.如何使用视图 create view teacher2course as select * from teacher inner join course on teacher.tid = course.teacher_id; 强调: (1)在硬盘中,视图只有表结构文件,没有表结构数据 (2)视图通常是用于查询,尽量不要修改视图中的数据 dro

MySQL-视图-触发器-事务-存储过程-函数-流程控制-索引与慢查询优化-06

目录 视图*** 什么是视图 为什么要用视图 如何生成视图 修改视图 --> 最好(千万)不要 关联表数据改动前 关联表数据改动之后 触发器 什么是触发器 触发条件 触发器语法结构 修改mysql的默认结束符(;) 触发器死循环 六个触发器的执行时机 新增前.新增后.删除前.删除后.更新前.更新后 NEW对象指代的就是当前记录(对象) 事务 ***** 什么是事务 事务的四大特性 ACID A:原子性 atomicity C:一致性 consistency I:隔离性 isolation D:持

SQL Server镜像自动生成脚本

SQL Server镜像自动生成脚本 镜像的搭建非常繁琐,花了一点时间写了这个脚本,方便大家搭建镜像 执行完这个镜像脚本之后,最好在每台机器都绑定一下hosts文件,不然的话,镜像可能会不work 192.168.1.1 WSQL01192.168.1.2 WSQL02192.168.1.3 WWEB03 --★Do部分都是需要填写的 -- ============================================= -- Author: <桦仔> -- Blog: <ht

一个简单的存储过程使用事务的例子

在存储过程中使用事务时非常重要,使用数据库可以保持数据的关联完整性,在SQL Server存储过程中使用事务也很简单,举个例子: Create Procedure MyProcedure ( @Param1 nvarchar(10), @Param2 nvarchar(10) ) AS Begin Set NOCUNT ON; Set XACT_ABORT on; Begin Tran Delete from table1 where name='abc'; insert into table2

SQL点滴17—使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识

原文:SQL点滴17-使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识 在开发过程中会遇到需要弄清楚这个数据库什么时候建的,这个数据库中有多少表,这个存储过程长的什么样子等等信息,今天把自己工作过程中经常用到的一些数据库引擎存储过程,系统视图等等总结一下以备不时之用.下面的知识多是自己总结,有一些参考了MSDN. sp_help 有时候想尽快查出数据库对象的相关信息,这个存储过程就很有用了.使用它可以查询出整个数据库中所有对象的相关信息.直接运行sp_help结果如下图1,

ORA-02266错误的批量生成脚本解决方案

原文:ORA-02266错误的批量生成脚本解决方案 ORA-02266: unique/primary keys in table referenced by enabled foreign keys这篇博客是很早之前总结的一篇文章,最近导数时使用TRUNCATE清理主表数据又遇到了这个错误,发现还有其它解决方案: a) 禁用与主表相关的外键约束 b) TRUNCATE TABLE c) 启用那些外键约束. 在实际操作中,发现使用上面的流程操作虽然正确,但是要写很多脚本,有些主表中的字段可能是多

sql存储过程和事务的应用

在去年,学习数据库的时候就学过存储过程了.一直都只知道一些理论,却不知道如何去使用.时隔一年,终于找到如何使用存储过程了. 在机房收费系统中,有些操作,需要多次执行sql语句,多次执行完成才算是完成这个事件流.但是如果其中有一个环节出了错误,那么没出错误的那些操作是不是就多余了. 执行存储过程,就是执行多句SQl语句.而事务,是为了控制这些语句 要么都做,要么 都不做. 在机房收费系统中,执行sql语句的时候. 一般的sql语句使用方法:定义一个字符串,用于存放sql语句.之后指明command

LoadRunner 11中Record无法自动生成脚本——解决办法

[问题描述] 安装loadRunner 11, 使用IE为默认浏览器,打开一个页面进行脚本录制:录制完成后,无法生成脚本. [问题现象] 控制台输出如下: ****** Start Log Message ******Web Recorder version : 11.0.0.8859 Recording Mode: HTML-based scriptCorrelation is enabled system wideNot recording headersNot excluding cont