sql存储过程中将1改为可用,0改为禁用

问题描述

sql存储过程中将1改为可用,0改为禁用

存储过程,B,A两张表,两表中都有状态的字段,A表中的状态值默认为1和0,1代表可用,0代表禁用,
在执行存储过程时,如何将B 表中的1 改为可用,0改为 禁用,很急,请各位帮帮忙!!!

解决方案

有个比较好想的方法~~,你可以先将所有的所有的0改为2,再将所有的1改为0,最后将所有的2改为1~~~

解决方案二:

1、不改表,只是查询时显示出来的方法:decode(state,1,'可用',0,'禁用',state)
2、在存储过程中把A表数据插入B表,再执行
update b表 set state='可用' where state=1;
update b表 set state='禁用' where state=0;

时间: 2024-11-08 19:07:36

sql存储过程中将1改为可用,0改为禁用的相关文章

sql 存储过程有insert和update怎么改为函数

问题描述 sql 存储过程有insert和update怎么改为函数 知道函数不能用insert和update,但课本题目就是这样. 解决方案 你应该去问你们的老师 解决方案二: use hr go if exists(select * from sys.sysobjects where [name]='grades') drop function grades go create function grades(@employee_Id int ,@start_date datetime,@jo

SQL 存储过程加密与解密实例详解

存储过程加密很简单    代码如下 复制代码 USE test_db GO IF   EXISTS   (SELECT   name   FROM   sys.objects WHERE   name   =   'encrypt_this '   AND   type   =   'P ') DROP   PROCEDURE   encrypt_this GO   --创建存储过程并加密  代码如下 复制代码 CREATE   PROCEDURE   encrypt_this WITH   E

|M| 300分 SQL存储过程没有学过 麻烦大家帮我改一下存储过程让他能够不按主键排序

问题描述 下面的是我现在用的分页存储过程但这里只能按主建进行排序现在我的表有一个日期字段 我想要在下面的参数@Col为SaleDate的时候进行日期排序要怎么改谢谢SETQUOTED_IDENTIFIEROFFGOSETANSI_NULLSOFFGOALTERPROCEDURESP_Page@TBVARCHAR(1000), --表名@COLVARCHAR(1000),--主键--@COLTYPEINT,@ORDERBYBIT,--是否Desc排序@COLLISTVARCHAR(3000),--

Sql存储过程游标循环的用法及sql如何使用cursor写一个简单的循环_MsSql

用游标,和WHILE可以遍历您的查询中的每一条记录并将要求的字段传给变量进行相应的处理 ================== DECLARE @A1 VARCHAR(10), @A2 VARCHAR(10), @A3 INT DECLARE CURSOR YOUCURNAME FOR SELECT A1,A2,A3 FROM YOUTABLENAME OPEN YOUCURNAME fetch next from youcurname into @a1,@a2,@a3 while @@fetch

[20130607]PL/SQL存储过程的commit提交问题.txt

[20130607]PL/SQL存储过程的commit提交问题.txt 昨天在看别人写的存储过程的时候,发现程序代码里面不好的写法,就是把commit写在循环体内,这样写按照以前应该会产生很大的redo日志,主要是redo waste也会增加,但是我在11G下测试,情况好像不一样. 1.建立测试环境: SQL> @ver BANNER --------------------------------------------------------------------------------

使用SQL存储过程要特别注意的问题-注意顺序读取

存储过程|问题     存储过程是一个运行于SQL数据库之中最核心的事务,它通过长驻内存的形式,进行读取\处理\写入最为频繁处理的数据.     ASP虽然在微软的ASPX的侵袭下,仍旧是中小企业继续在用的一种网页语言,但是当要读取海量数据的时候,如果仍旧使用普通的SQL进行读取运行与写入,将导致系统资源的严重浪费,所以我们在ASP中使用存储过程,以提高数据的存取速度,同时通过SQL核心的获取数据的方法,可以有效的减少垃圾数据(不被立即使用,而且也不备较短的时间里被使用的数据)操作.     在

ASP.Net学习之常用SQL存储过程

asp.net|存储过程 在ASP.Net项目中使用存储过程,首先可以提高数据库的安全性,其次可以提高运行SQL代码运行的速度,在大型项目中一般是必不可少的.Visual Studio.Net为SQL的存储过程提供了强大的支持,您既可以通过visual studio.net来新建存储过程,也可以直接在Sql Server的查询分析器中运行,还可以通过企业管理器创建,使用起来也非常方便.大家一直都误认为SQL存储过程是一个比较"高深"的技术,其实掌握一般的语法是没有什么大问题的,而我们在

asp.net sql存储过程_实用技巧

Visual Studio.Net为SQL的存储过程提供了强大的支持,您既可以通过visual studio.net来新建存储过程,也可以直接在Sql Server的查询分析器中运行,还可以通过企业管理器创建,使用起来也非常方便.大家一直都误认为SQL存储过程是一个比较"高深"的技术,其实掌握一般的语法是没有什么大问题的,而我们在使用存储教程中也主要是增删减的操作,学会使用一般的T-SQL就很容易上手了. 我们先来看一下在Sql-server中是如何创建一个存储过程的吧,我们可以使用S

数据-sql存储过程的问题,拆分并加值

问题描述 sql存储过程的问题,拆分并加值 传入'1,2,3'怎么拆分并分别加入到表里面 (三条数据) 解决方案 create function func_splitstring (@str nvarchar(max),@split varchar(10)) returns @t Table (c1 varchar(100)) as begin declare @i int declare @s int set @i=1 set @s=1 while(@i>0) begin set @i=cha