MSSQL Procudure Sample
代码:
USE [Internal_Timesheet]
GO
/****** Object: StoredProcedure [dbo].[ManageTSReminder] Script Date: 06/27/2014 18:16:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[managerTSReminder]
AS -- =============================================
-- Author: xxxxxx
-- Create date: 06/27/2014
-- Description: Checking Missed TimeSheet
-- ============================================= DECLARE @Uid varchar(25),
@FirstName varchar(25),
@LastName varchar(25),
@team varchar(25),
@Uid2 varchar(25),
@currentdate DATETIME,
@USlist varchar(MAX),
@CNlist varchar(MAX) SET @currentdate = CURRENT_TIMESTAMP
SET @USlist = ''
SET @CNlist = '' DECLARE curP CURSOR
FOR SELECT uid, first_name, last_name, team
FROM Internal_Timesheet.dbo.user_info
WHERE status = 1
AND uid <> 'xxxxxxx' OPEN curP
FETCH NEXT FROM curP INTO @Uid, @FirstName, @LastName, @team WHILE (@@FETCH_STATUS = 0)
BEGIN DECLARE curP2 CURSOR
FOR SELECT uid FROM Internal_Timesheet.dbo.projects_user_timesheet_xref
WHERE uid = @Uid
AND week_start_date < (DATEADD(wk, DATEDIFF(wk, 0,@CURRENTDATE),0)) OPEN curP2
FETCH NEXT FROM curP2 INTO @Uid2 IF (@@FETCH_STATUS <> 0)
BEGIN
IF(@team = 'US') BEGIN
SET @USlist = @USlist + @FirstName + ' ' + @LastName + ';
'
END
ELSE IF(@team = 'CN') BEGIN
SET @CNlist = @CNlist + @FirstName + ' ' + @LastName + ';
'
END
END CLOSE curP2
DEALLOCATE curP2 Fetch Next From curP Into @Uid, @FirstName, @LastName, @team
END
PRINT 'US Team: ' + @USlist
--EXEC msdb.dbo.sp_send_dbmail @profile_name='profilename',
--@recipients='xxxxx@xxxxx.com',
--@subject='Weekly TimeSheet Missing List',
--@body='The system can not find the following user's TimeSheet: --@CNlist --If you have any questions, please contact the system admin.' PRINT 'CN Team: ' + @CNlist
--EXEC msdb.dbo.sp_send_dbmail @profile_name='profilename',
--@recipients='xxxxx@xxxxx.com',
--@subject='Weekly TimeSheet Missing List',
--@body='The system can not find the following user's TimeSheet: --@USlist --If you have any questions, please contact the system admin.' CLOSE curP
DEALLOCATE curP Check Email status SELECT * FROM msdb.dbo.sysmail_sentitems SELECT * FROM msdb.dbo.sysmail_mailitems SELECT * FROM msdb.dbo.sysmail_log
MSSQL Procudure Sample的更多相关文章
- SonarQube+Jenkins安装工程中遇到的吭
1. SonarQube是不是有点飘了,居然要java11+才能运行 解决方案: 重新下载老版本 也不知道哪个版本才好用,就下载了7.0 和6.6,这两个版本用jdk1.8就可以用 2. 配置数据库u ...
- mssql 注入
注入查阅 .返回的是连接的数据库名 .作用是获取连接用户名 .将数据库备份到Web目录下面 ;backup database 数据库名 to disk='c:\inetpub\wwwroot\1.db ...
- [干货来袭]MSSQL Server on Linux预览版安装教程(先帮大家踩坑)
前言 昨天晚上微软爸爸开了全国开发者大会,会上的内容,我就不多说了,园子里面很多.. 我们唐总裁在今年曾今透漏过SQL Server love Linux,果不其然,这次开发者大会上就推出了MSSQL ...
- 分享MSSQL、MySql、Oracle的大数据批量导入方法及编程手法细节
1:MSSQL SQL语法篇: BULK INSERT [ database_name . [ schema_name ] . | schema_name . ] [ table_name | vie ...
- Linux下UPnP sample分析
一.UPnP简介 UPnP(Universal Plug and Play)技术是一种屏蔽各种数字设备的硬件和操作系统的通信协议.它是一种数字网络中间件技术,建立在TCP/IP.HTTP协 ...
- MSSQL远程连接
背景:部署公司自己研发的ERP系统. 1)系统架构: .NET+MSSQL. 2)服务器系统:Windows Server 2008 R2 Enterprise 3)数据库:MSSQL Server ...
- 学习笔记 MSSQL显错手工注入
和朋友一起学习,速度就是快.感谢珍惜少年时. 网上很多都在长篇大论MSSQL显错手工注入,其实原理只有一小段.如下: ' and (查询一段内容)=1 and 'C'='Cnvarchar类型(查询一 ...
- MSSQL部分补丁的列表及下载地址(持续更新)
整理了MSSQL部分补丁的列表及下载地址(截至2016-11-18),供参考下. Edition Version Date Published Download Link SQL Server 201 ...
- .NET+IIS+MSSQL配置
好久没配置.NET+IIS+MSSQL了,跟以前不大一样了.总结下吧. 环境: Windows Server 2012 标准版 x64 SQL Server Express 2014 一.HTTP E ...
随机推荐
- 拓扑排序(Toposort)
摘自:https://blog.csdn.net/qq_35644234/article/details/60578189 <图论算法> 1.拓扑排序的介绍 对一个有向无环图(Direct ...
- C语言实训——扑克牌洗牌程序
说明此程序本来是21点扑克程序的一个被调函数,在这里我单独将它拿出来作为一个小程序. #include<stdio.h> #include<time.h> #include&l ...
- 软件工程课堂作业(一)——随机产生四则运算题目(C++)
一.设计思想: 1.首先主函数只用来调用随机产生并输出运算题目函数,随机产生并输出这一部分功能用一个randout函数实现: 2.随机产生运算数这一功能,两个运算数可以用随机函数生成,并将它们控制在1 ...
- Android中使用ViewPager制作广告栏效果 - 解决ViewPager占满全屏页面适配问题
. 参考界面 : 携程app首页的广告栏, 使用ViewPager实现 自制页面效果图 : 源码下载地址: http://download.csdn.net/detail/han1202 ...
- eg_2
2. 编写一个程序,输出在一个字符串中,指定的字符串出现的次数 第一种方法: public class Test { public static void main(String[] args) { ...
- HDU2376Average distance(树形dp|树上任意两点距离和的平均值)
思路: 引:如果暴力枚举两点再求距离是显然会超时的.转换一下思路,我们可以对每条边,求所有可能的路径经过此边的次数:设这条边两端的点数分别为A和B,那 么这条边被经过的次数就是A*B,它对总的距离和的 ...
- osg::Vec2 Vec3 Vec4
osg::Vec2可以用于保存2D纹理坐标. osg::Vec3是一个三维浮点数数组. osg::Vec4用于保存颜色数据.
- MATLAB中mat2gray的用法【转】
函数简介 函数功能:实现图像矩阵的归一化操作.所谓"归一化"就是使矩阵的每个元素的值都在0和1之间.该函数在数字图像处理中经常用到. 调用格式: I = mat2gray(A, [ ...
- sql批量更新关系型数据库
更改gb_groupd里的chargingrulesname的值UPDATE tb_group SET tb_group.chargingrulesname =tb_chargingrules.c ...
- UVA.674 Coin Change (DP 完全背包)
UVA.674 Coin Change (DP) 题意分析 有5种硬币, 面值分别为1.5.10.25.50,现在给出金额,问可以用多少种方式组成该面值. 每种硬币的数量是无限的.典型完全背包. 状态 ...