`
jiangka88
  • 浏览: 15062 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类

mssql procedure 作业 存储过程

阅读更多

前些日子客户过来个需求,是要把以前所有DB里面记录用户消费coinlog的表做统一成一样的字段(以前由于DB很多LOG表很乱)。上个礼拜把设计书写好后,今天开始写存储过程。很久没有写存储过了,上午在网上做功课下午写,还好有公司前辈高手指导算是在下班前完成了。把写的存储过程的代表性的一个记录一下,以便以后温习只用。

 

作业内容:将某DB的原来coinLog表内的某些字段根据条件复制到新表中,每一天复制前一天产生的数据,具体procedure如下:

 

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go


-- =============================================
-- Author: Jiang	
-- create Date: 2011/05/09
-- Description: 邦楽フルプラスEZコインログ出力
-- =============================================
ALTER PROCEDURE [dbo].[CopyTo_CoinEventLog_FullpE]
	
AS

BEGIN
BEGIN TRAN
	SET NOCOUNT ON;


	INSERT
		CoinEventLog_FullpE
	(
		uid,	--ユーザーID
		credit_coin,	--イベントコイン
		rest_coin,		--残りコイン
		event_cd,		--イベントコード
		event_desc,		--イベント詳細記述
		upd_nm,		--レコード更新者
		upd_pg,		--レコード更新プログラム
		upd_dt		--レコード更新時間
	)
	SELECT 
		uid,
		credit_coin,
		rest_coin,
		CASE 
			WHEN [event_cd] = 'give' OR [event_cd] = 'change' THEN 'give'
			WHEN [event_cd] = 'use' THEN 'use'
			WHEN [event_cd] = 'lost' THEN 'lost'
			WHEN [event_cd] = 'takeover' THEN 'takeover'
			WHEN [event_cd] = 'campaign' THEN 'campaign'
			ELSE ''	-- 'give','use','lost','takeover','change',campaign以外の値なら、''に設定する
		END,
		event_desc,
		upd_nm,
		upd_pg,
		upd_dt
	FROM 
		fullp_e.dbo.CoinEventLog
	--前日の1日分のコインログを抽出する
	WHERE upd_dt >= CONVERT(varchar(10), getdate() - 1, 111)
		and upd_dt < CONVERT(varchar(10), getdate(), 111)

	IF @@error<>0
		BEGIN
			rollback tran
			return
		END

COMMIT TRAN
END

0
5
分享到:
评论

相关推荐

    MySQL实验报告5(存储过程与函数)(1)(1).pdf

    根据提供的文件内容,本篇实验报告主要围绕MySQL数据库中存储过程和函数的应用,涵盖了创建存储过程、函数、游标以及异常处理等高级特性。下面将详细解析报告中的每个知识点。 1. 创建存储过程 存储过程是一种在...

    【数据库作业14】第五章: 数据库完整性 习题 + 存储过程

    在MySQL中,CREATE PROCEDURE用于定义存储过程,@符号开头的变量是局部变量,AS关键字标志着过程体的开始,而BEGIN和END则定义了过程的执行逻辑。通过执行存储过程,可以简化复杂的操作,提高代码的可读性和维护性。...

    mysql暑假作业.zip

    暑假作业通常涉及到学习的巩固和深化,对于MySQL来说,可能涵盖了一系列的主题,包括基础语法、数据类型、表的创建与管理、查询操作、索引、视图、存储过程、触发器以及数据库的安全性等方面。下面将对这些知识点...

    MySQL存储过程作业6.docx

    ### MySQL存储过程知识点详解 #### 一、创建数据库与表结构 在MySQL中,我们首先需要创建一个数据库,本例中的数据库名为`test_pro`。接下来,在该数据库中创建两个表:`admin`和`beauty`。 1. **创建数据库**: ...

    mysql数据库作业3.docx

    MySQL 作业 3 的主要目的是通过四个任务练习 MySQL 数据库的基本操作和管理,包括用户管理、视图创建、事务处理和存储过程等。 任务 1: 创建用户和授予权限 在 MySQL 中,创建用户可以使用 `CREATE USER` 语句,...

    mysql作业第3天,mysql-day03.rar

    2. 存储过程(Stored Procedure):预编译的SQL代码集合,可以封装复杂的业务逻辑,提高效率和安全性。 3. 触发器(Trigger):在特定数据库事件(如INSERT, UPDATE, DELETE)发生时自动执行的程序,常用于实现业务...

    mysql 让一个存储过程定时作业的代码

    1、在mysql 中建立一个数据库 test1 语句:create database test1 2、创建表examinfo create table examinfo( id int ... 4 创建存储过程test CREATE PROCEDURE test () BEGIN update examinfo SET endtime = now() WH

    储存过程分页

    在数据库管理中,存储过程(Stored Procedure)是一种预编译的SQL代码集合,它封装了特定的数据库操作,可以提高数据库应用的性能和安全性。在处理大量数据时,特别是进行分页查询,存储过程有着显著的优势。本篇将...

    Mysql 叶鑫宇作业.zip

    8. **存储过程(PROCEDURE)和函数(FUNCTION)**:可重用的 SQL 代码块,可以接收参数并返回结果。它们提高了代码的组织性和效率。 9. **事务(TRANSACTION)**:一组 SQL 操作,要么全部成功,要么全部回滚。这...

    Week-4-MySQL-Assignment:第4周MySQL作业

    在本篇中,我们将深入探讨如何利用MySQL创建存储过程,以完成第4周的作业任务。存储过程是数据库中预编译的SQL语句集合,它们可以被多次调用,提高了代码的重用性和效率。MySQL中的存储过程分为以下几个部分: 1. *...

    MySQL的家庭作业

    9. **存储过程与函数**:定义和调用存储过程(PROCEDURE)和用户自定义函数(FUNCTION),以封装和重用SQL代码。 10. **事务处理**:理解ACID属性(原子性、一致性、隔离性、持久性),并学会使用BEGIN、COMMIT、...

    mysql-lesson-04-homework:MySQL第4课作业

    - `PROCEDURE`:创建存储过程,封装一组SQL语句。 - `FUNCTION`:创建用户自定义函数,返回一个值。 - `DECLARE`:声明变量和游标。 三、TSQL中的异常处理 TSQL提供`TRY...CATCH`结构来捕获和处理运行时错误,...

    定期删除数据表里数据方法汇总

    这里我们将深入探讨几种常用的方法,包括作业(Jobs)和存储过程(Stored Procedures),以及如何在不同的数据库系统中实现这些方法。 一、SQL Server 作业(SQL Server Agent Jobs) 在SQL Server中,可以利用SQL ...

    mysql代码-sql第二次作业

    此外,SQL还有许多高级特性,如视图(VIEW)、存储过程(STORED PROCEDURE)、触发器(TRIGGER)和事务(TRANSACTION)。视图可以被视为虚拟表,其数据来源于一个或多个表的查询结果。存储过程是预编译的SQL语句集合...

    数据库作业-工厂物料管理系统.doc

    设计中涉及到的SQL语句包括CREATE TABLE(创建表)、TRIGGER(创建触发器)、PROCEDURE(创建存储过程)等,这些都是数据库管理和开发的基础工具。 这个物料管理系统数据库设计的关键点在于正确捕捉业务需求,合理...

    kettle 常见问题

    - 通过“Execute SQL Script”步骤执行存储过程,增强灵活性。 10. **字符集** - 字符集配置影响数据的编码和解码。 - 正确设置字符集可避免乱码问题。 11. **预定义时间维** - 时间维用于跟踪数据随时间的...

    大数据面试知识点

    MySQL是目前使用最广泛的开源关系数据库管理系统,其核心特性包括事务支持、存储过程、触发器等。MySQL索引分为多种类型,包括普通索引、唯一索引、全文索引等。不适合建立索引的情形包括数据量小、更新频繁的表字段...

    基于GWT的服装订单系统(论文)开题报告

    通过OMS,商家可以实时了解订单进度,提高作业效率,降低成本,增强市场竞争力。 2. **订单处理流程**:订单处理包括订单接收、确认、状态管理(如取消、付款、发货等状态),以及订单出库和查询。这些功能旨在提供...

    大数据工程师简历3份.docx

    同时,对YARN(Yet Another Resource Negotiator)的资源调度和作业监控有深入了解,可以优化集群资源分配。 3. **Storm与RPC**:掌握Storm流处理技术,用于实时数据处理。对分布式RPC(Remote Procedure Call)有...

Global site tag (gtag.js) - Google Analytics