sql 储存过程的使用
--获取所有数据 根据自定义函数传人类型id返回类型名称 USE [Cloths] GO /****** Object: StoredProcedure [dbo].[Proc_all] Script Date: 05/23/2014 12:10:37 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[Proc_all] AS BEGIN SET NOCOUNT ON; select ClothColorId ,Name ,dbo.myfun1(TypeId) as typename from dbo.ClothColors; END
这些储存过程都是修改的,吧ALTER改为create 就可以在数据库中创建
USE [Cloths] GO /****** Object: UserDefinedFunction [dbo].[myfun1] Script Date: 05/23/2014 13:53:46 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --自定义函数 ALTER FUNCTION [dbo].[myfun1] ( @a varchar(50) ) returns varchar(50) as begin declare @name varchar(50); select @name=[types].name from [types] where typeid=@a; return @name; end
//既有传人参数,又有返回参数
USE [Cloths] GO /****** Object: StoredProcedure [dbo].[Proc_all] Script Date: 05/23/2014 13:56:48 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO--储存过程 ALTER PROCEDURE [dbo].[Proc_all] ( @name varchar(50), --默认传人 @count int output ) AS BEGIN SET NOCOUNT ON; select ClothColorId ,Name ,dbo.myfun1(TypeId) as typename from dbo.ClothColors where Name=@name; select @count=COUNT(1) from dbo.ClothColors; END
//是c#实现传人参数和返回参数
SqlCommand comm = new SqlCommand();
comm.Connection = new SqlConnection("Data Source=.;Initial Catalog=Cloths;Integrated Security=True");
comm.CommandType = CommandType.StoredProcedure;
comm.CommandText = "Proc_all";
comm.Parameters.Add(new SqlParameter("@name", "大红"));//传人参数
comm.Parameters.Add(new SqlParameter("@count",DbType.Int32));
comm.Parameters["@count"].Direction = ParameterDirection.Output; //这个必须写,不写不会返回要传出的参数
SqlDataAdapter sda = new SqlDataAdapter(comm);
DataSet ds=new DataSet ();
sda.Fill(ds);
sql 储存过程的使用的更多相关文章
- C#函数与SQL储存过程
一点点小认识作为memo,求指正. C#的函数与SQL的储存过程有很多的相似性, 它们都是一段封闭的代码块,来提高代码的重用性,虽然现在复制粘贴很方便,但是我们在写多个函数的时候频繁的复制粘贴相同的内 ...
- sql储存过程in(多个参数)
一.用sql函数 首先要创建一个截取字符串的函数,新建一个查询,把下面代码复制进去执行. 函数SqlitIn的第一个参数是储存过程要in的字符串,第二个参数是分隔符 CREATE function S ...
- 关于SQL储存过程中输出多行数据
declare @num1 int --为符合条件的总行数 select @num1=COUNT(1) from cardInfo where openDate between @ ...
- SQL储存过程
基本语法 创建存储过程 create procedure sp_name @[参数名] [类型],@[参数名] [类型] as begin ......... end 以上格式还可以简写成: crea ...
- SQL获取所有数据库名、表名、储存过程以及参数列表
SQL获取所有数据库名.表名.储存过程以及参数列表 1.获取所有用户名:SELECT name FROM Sysusers where status='2' and islogin='1'islogi ...
- SQL SERVER 判断是否存在并删除某个数据库、表、视图、触发器、储存过程、函数
-- SQL SERVER 判断是否存在某个触发器.储存过程 -- 判断储存过程,如果存在则删除IF (EXISTS(SELECT * FROM sysobjects WHERE name='proc ...
- Sql语句导出数据库表结构及查询表视图储存过程名
--一句Sql把表结构全部查询出来 SELECT 表名 = Case When A.colorder=1 Then D.name Else '' End, 表说明 = Case When A.colo ...
- SQL Server 储存过程的output 参数
要做的参数的回传一方面要做到有储存过程的配合,再一方面也要有调用方法的配合,也就是说错误的调用方法是没有办法把值回传的. 下面是例子 --1.储存过程方面的配合 create procedure db ...
- Sql Server分页储存过程
--分页储存过程if exists (select * from sys.procedures where name='Page')drop proc Pagegocreate proc Page@P ...
随机推荐
- selenium之封装登陆操作
# selenium 封装登录操作举例 import os, time # from selenium import webdriver class LoginPage(): '''登录模块''' d ...
- c#异步编程(三)—ASP.NET MVC 异步控制器及EF异步操作
ASP.NET MVC 异步控制器及EF异步操作 异步控制器 ASP.NET MVC2后开始了对异步请求管道的支持,异步请求管道的作用是允许web服务器处理长时间运行的请求,比如 那些花费大量时间等待 ...
- BZOJ2938[Poi2000]病毒——AC自动机
题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码段,试问,是否 ...
- Zabbix3.0学习笔记
第1章 zabbix监控 1.1 为什么要监控 在需要的时刻,提前提醒我们服务器出问题了 当出问题之后,可以找到问题的根源 网站/服务器 的可用性 1.1.1 网站可用性 在软件系统的高可靠性(也 ...
- 网络流Dinic模板
#include <iostream> #include <cstdio> #include <cstring> #include <queue> #d ...
- Codeforces Round #411 div 2 D. Minimum number of steps
D. Minimum number of steps time limit per test 1 second memory limit per test 256 megabytes input st ...
- Python条件控制与循环语句
1. 条件控制 # if-elif-else结构 age = 12 if age < 4: price = 0 elif age < 18: price = 5 else: price = ...
- (转) JVM——Java类加载机制总结
背景:对java类的加载机制,一直都是模糊的理解,这篇文章看下来清晰易懂. 转载:http://blog.csdn.net/seu_calvin/article/details/52301541 1. ...
- typescript函数(笔记非干货)
函数类型 Function Type 为函数定义类型 Define types for functions 我们可以给每个参数添加类型之后再为函数本身添加返回值类型. TypeScript能够根据返回 ...
- MATLAB:图像减法运算(imsubtract函数)
图像减法运行涉及到imsubtract函数 实现代码如下: clear all; %关闭当前所有图形窗口,清空工作空间变量,清除工作空间所有变量 clc close all; A=imread('ca ...