请问一个带事务存储过程怎么写? [问题点数:100分,结帖人Radar2006]

Bbs1
本版专家分:19
结帖率 100%
Bbs9
本版专家分:55412
版主
Blank
GitHub 绑定GitHub第三方账户获取
Blank
进士 2017年 总版技术专家分年内排行榜第八
Blank
优秀版主 2016年10月优秀大版主
优秀小版主
Blank
银牌 2017年1月 总版技术专家分月排行榜第二
Bbs7
本版专家分:12730
Blank
蓝花 2018年1月 MS-SQL Server大版内专家分月排行榜第三
2017年12月 MS-SQL Server大版内专家分月排行榜第三
2017年9月 MS-SQL Server大版内专家分月排行榜第三
Bbs7
本版专家分:12730
Blank
蓝花 2018年1月 MS-SQL Server大版内专家分月排行榜第三
2017年12月 MS-SQL Server大版内专家分月排行榜第三
2017年9月 MS-SQL Server大版内专家分月排行榜第三
Bbs1
本版专家分:19
Bbs7
本版专家分:12730
Blank
蓝花 2018年1月 MS-SQL Server大版内专家分月排行榜第三
2017年12月 MS-SQL Server大版内专家分月排行榜第三
2017年9月 MS-SQL Server大版内专家分月排行榜第三
Bbs4
本版专家分:1161
Bbs7
本版专家分:12730
Blank
蓝花 2018年1月 MS-SQL Server大版内专家分月排行榜第三
2017年12月 MS-SQL Server大版内专家分月排行榜第三
2017年9月 MS-SQL Server大版内专家分月排行榜第三
Bbs4
本版专家分:1161
Bbs7
本版专家分:12730
Blank
蓝花 2018年1月 MS-SQL Server大版内专家分月排行榜第三
2017年12月 MS-SQL Server大版内专家分月排行榜第三
2017年9月 MS-SQL Server大版内专家分月排行榜第三
Bbs4
本版专家分:1161
Bbs1
本版专家分:19
Bbs5
本版专家分:3746
Bbs5
本版专家分:3746
Bbs2
本版专家分:313
Bbs1
本版专家分:19
请问这样的一个存储过程应该怎么
我在外部程序中输入到<em>存储过程</em>中一串字符串如,'1,2,4,5,6',rn过程的参数类型设为@list varchar(100),rnrn在过程中想实现rnselect xxx,yyy from tabname where id in(@list)rnrn可是执行时<em>存储过程</em>老是报错:rnrn varchar 值 '1,2,4,5,6' 转换为数据类型为 int 的列时发生语法错误。rnrn请高手帮帮看<em>怎么</em>解决,如果我的方法不对,应该用什么样的方法
一个关于查询的存储过程请问怎么写?
各位大哥,我是新手,求以下这个<em>存储过程</em>的代码,谢谢:rn两个表:表a,表brn查询条件(即输入参数):姓名,性别,身份证号,产品码.rn输出参数则为:结果集rn<em>存储过程</em>功能:rn根据用户输入的以上查询条件返回结果集.rn注:rn 1.查询条件可以为空(即输入参数为空),若查询条件为空,则在where语句中将此参数忽略rn 2. 返回的结果集中要包含产品名称.(产品名称是根据产品代码从b表中获取.)rn 3.<em>存储过程</em>中希望有错误处理和错误消息返回功能. rn谢谢各位高手!
返回一个查询字符串的存储过程请问怎么写?
我想通过<em>存储过程</em>获得<em>一个</em>查询字符串,如下,rn请帮忙看看有什么错。rnrnCREATE PROCEDURE GeneCmdrn (rn @vchReturn varchar(8000) OUTPUTrn )rnrnASrn declare @sql varchar(8000)rn set @sql = 'select 姓名'rn select @sql = @sql + ',sum(case 课程名称 when '''+课程名称+''' then 成绩 end) ['+课程名称+']'rn from (select distinct 课程名称 from _tbTrainScore) as arn select @sql = @sql+' from _tbTrainScore group by 姓名'rn rn select @vchReturn = @sql rn rn returnrnGOrn
我想写一个带表名参数的存储过程怎么写?
我是这么写的rncreate proc selectfromatablern(rn@tablename varchar(20)rn)rnasrnselect * from @tablenamernrn可是语法通不过啊
一个事务里能调用带事务存储过程吗?谢谢
rt~
请问这样的存储过程怎么写?
create proc dddd @xmqc varcher(200)rnasrnif @xmqc='1'rnselect * from table1rnrnif @xmqc='0'rnselect * from table2rnrnif @xmqc<>'1'or @xmqc<>'0'rnselect * from table3 where table3_xmqc like '%'+@xmqc+ '%'
请问这个存储过程怎么写?
假设<em>一个</em>表rn rn id photo(image字段)rn 1 .......rn 2 ......rn 3 ...... rn rn 使用<em>存储过程</em><em>怎么</em>把photo读取出来,然后直接保存在服务器路径 F:\photo\newrn rn 分别是 rn 1.jpgrn 2.jpgrn 3.jpg
请问这个存储过程怎么写?
我写了<em>一个</em><em>存储过程</em>,目的是想让OUTPUT参数@ResultID得到大于ID而小于ID+99的记录中最大的ResultID,如下:rnCREATE PROCEDURE mysp_GetMaxRecordID rn(rn @ID int ,rn @ResultID int OUTPUTrn)rnASrnSELECT @ResultID = MAX(RecordID) rnFROM myRecordsrnWHERE (RecordID > @ID ) AND (RecordID < @ID + 99 )rnGOrn我在.NET中调用<em>一个</em><em>存储过程</em>,当myRecords表中满足WHERE字句的记录数不为0时,可以得到我想要的ResultID值。但是当myRecords表中没有满足WHERE字句的记录的时候,@ResultID的值却为空。我想让它等于0,我该<em>怎么</em>改写<em>存储过程</em>?
请问这个存储过程怎么
<em>请问</em>,如果判断数据库里的<em>一个</em>字段的值为零,就将另<em>一个</em>字段的值写入到这个字段里面,rn这个<em>存储过程</em><em>怎么</em>写?rn
请问一个存储过程的写法
declare type_id varchar(2)rnselect * from mbinfo where ............rnrn<em>怎么</em>在where后面用case实现如下rncase type_idrn when '1' then mb_type>3rn when '2' then mb_type<=3rnendrnrn具体的sql语句<em>怎么</em>写啊,我<em>怎么</em>写出来的都说语法错误呢?
带输入参数的存储过程怎么
我在SQL中建了<em>一个</em><em>存储过程</em>叫AddCustomerrn有若干的参数,最后<em>一个</em>是输入参数,<em>请问</em>在C#中的程序改<em>怎么</em>个写法得那个输出参数rnusing (SqlConnection con = new SqlConnection(conString))rn rn con.Open();rn SqlCommand cmd = new SqlCommand("AddCustomer", con);rn cmd.CommandType = CommandType.StoredProcedure;rn cmd.Parameters.Add("@Name", SqlDbType.NVarChar, 50).Value = ci.CName;rn cmd.Parameters.Add("@Sex", SqlDbType.NVarChar, 1).Value = ci.CSex;rn cmd.Parameters.Add("@IDType", SqlDbType.NVarChar, 50).Value = pi.PType;rn cmd.Parameters.Add("@IDNumber", SqlDbType.NVarChar, 50).Value = pi.PNumber;rn cmd.Parameters.Add("@Desposit", SqlDbType.Money).Value = ci.CDeposit;rn cmd.Parameters.Add("@Phone", SqlDbType.NVarChar, 50).Value = ci.CPhone;rn cmd.Parameters.Add("@Address", SqlDbType.NVarChar, 50).Value = ci.CAddress;rn cmd.Parameters.Add("@Desource", SqlDbType.NVarChar, 50).Value = ci.CDesource;rn cmd.Parameters.Add("@Remark", SqlDbType.NVarChar, 255).Value = ci.CRemark;rn int result = cmd.ExecuteNonQuery();rn con.Close();rn
带输入参数的存储过程怎么写???
建立<em>一个</em><em>存储过程</em>,在运行这个<em>存储过程</em>的 时候需要输入<em>一个</em>参数值.那么这个<em>存储过程</em>该<em>怎么</em>写? 比如说<em>一个</em>需要参数才能运行循环的<em>存储过程</em> 能给个demo吗? 谢谢
请教下带条件判断的存储过程怎么
需求是这样的:在用户表里面插入一条记录,先根据用户名判断记录是否已存在,存在则返回已存在的记录ID,不存在则插入一条记录rnrn表结构:rn[code=sql]rnCREATE TABLE `t_user` (rn `UserID` INT(11) NOT NULL AUTO_INCREMENT,rn `UserName` VARCHAR(20) NOT NULL,rn `UserPwd` VARCHAR(20) NOT NULLrn)rn[/code]rn<em>存储过程</em>应该<em>怎么</em>写?
菜鸟提问:请问存储过程怎么表示一个事务”?
我也不知道<em>怎么</em>用语rn假如我要在某个<em>存储过程</em>里面update两个表rn我想它们要么都完成要么错误的话都撤销rn<em>请问</em><em>怎么</em>做啊?rncreate procedure myPro asrnbeginrn update table1 set ..rn update table2 set ..rnendrn这样行吗?
一个存储过程怎么写?
写个<em>存储过程</em>,查询表里id ='PE0906100044'或'PE0907110004' 所有数据rn[code=SQL]rndeclare @FeeIDs varchar (50)rnset @FeeIDs='PE0906100044','PE0907110004'rnselect * from Datum where where id in (@FeeIDs)rnrn这样写报错rnrn[/code]rnrn[code=SQL]rndeclare @FeeIDs varchar (50)rnset @FeeIDs='PE0906100044,PE0907110004'rnselect * from Datum where where id in (@FeeIDs)rnrn这样写就不是想要查的内容了rnrn[/code]rnrnrn高手帮忙,该<em>怎么</em>写
怎么一个高级的存储过程???
从本地数据库中的Northwind 数据库中的三个表 products 、 orders 、 [order details]rn要求写<em>一个</em><em>存储过程</em>,输入<em>一个</em>年月的数值,就可以显示出来每<em>一个</em>产品名和本月每一天的出货总量rn 如下信息:rnproductname D1 D2 D3 D4 D5 ....D31rnrnGeitost 27 109 4 45 0 47rnCamembert Pierrot 4 2 34 0 56 80rn.rn.rn.rn.rn<em>怎么</em>写呀,快崩溃了
一个存储过程怎么
想把表中的数据量传递给参数,同时表名也是<em>一个</em>参数,执行<em>存储过程</em>的时候输入表名。rnrn@num=select count(*) from @tablernrn
这样的一个存储过程怎么写?
<em>一个</em>工资表:姓名(Name),工资月份(SalaryMonth(2004-07-01,代表七月份),工资金额(Salary)rnrnrn我想用<em>存储过程</em>建<em>一个</em>表,显示某人一年十个月的工资。rn姓名 一 二 三 四 五 rn - - - rn
这样一个存储过程怎么写?
选出一些职位rn(2个表,T_Job,T_Company)rnrn1.要求职位所属公司应该是最新登录的30个(即按登录时间排倒序为TOP 30)rn2.同<em>一个</em>公司的职位只按排序顺序(JobOrder)选出前3个.少于三个的全部取出rnrn一些关键字段rnT_Job:Id,CompanyId,JobOrder,NamernT_Company:Id,LastTime(上次登录时间)
这样一个存储过程怎么写?
我不知道应该有多少个参数,可能是任意个(类型是相同的),我应该<em>怎么</em>编写<em>存储过程</em>呢?又应该<em>怎么</em>提取这样的任意参数呢?rn不太清楚,如果使用数组也望说明用法,我没有用过,工作需要才接触的!
请教一个存储过程怎么写?
有两个表:rntable1:rnpldid ylid zlrn1 1 20rn1 2 15rn1 3 5rn2 1 10rn2 2 16rntable2:rnplid ylid zlrnrn两个输入参数@pldid,@plidrn如何把select ylid,zl from table1 where pldid=@pldid产生的临时表数据中的全部插入到table2中,同时使plid=@plidrn
一个简单的存储过程 怎么
declare @sql varchar(8000)rnset @sql = 'select custom_area'rnselect @sql = @sql + ',sum(case machine_type when ''' + machine_type + ''' then 1 else 0 end) [' + machine_type + '(机器台数)] 'rn from (select distinct machine_type from customer_infor)arnselect @sql = @sql + ' from customer_infor group by custom_area'rnprint @sqlrnexec(@sql)rn rnrn上面的一段SQL语句的<em>存储过程</em><em>怎么</em>写?
怎么写这样一个存储过程
一般我们写Where条件都是如下:rnselect * from table1 where NO=@NOrnrn但是我的查询条件是按照如下格式传入:rnA1,A2,A3这样不等数目的条件,中间用逗号分开,那么语句就要写成:select * from table1 where NO=A1 or NO =A2 or NO=A3这样的才可以得到结果,如果是<em>存储过程</em>应该<em>怎么</em>写?需要注意的是我的条件数是不指定的,都是逗号分开
一个旷工的存储过程怎么写?
我有<em>一个</em>考勤表,其中有四个字段 KQ_date、stuff_id、KQ_time、statusrn这些都是在以后的程序中由打卡机来输入,分别为日期、员工号、时间、状态rn现在我有个月度考勤统计的需求,就是把<em>一个</em>月中<em>一个</em>员工的旷工次数统计出来,其中<em>存储过程</em>的格式设计为: rncreate proc rn(rn @startdate varchar(20),rn @enddate varchar(20rn) rn 传两个参数,<em>一个</em>统计开始的日期,<em>一个</em>统计结束的日期rn然后构成的表格式为: stuff_id,次数rn也就是员工号和统计的旷工次数,但现在我碰到的问题就是如果员工旷工那跟本就没有打卡,那也不会有相关的记录,<em>请问</em>我这个<em>存储过程</em>可以实现吗,如果可以告诉我思路或写出代码更好,谢谢!
请问事务的SQL语句怎么写?
<em>请问</em><em>事务</em>的SQL语句<em>怎么</em>写?里面有数据库链。谢谢!
请问触发器中事务怎么写???
现在触发器是这样的:rnrnBEGINrnrn语句1rnrn语句2rnrn语句3rnrnENDrnrn我希望整个结构完整,要求任何一语句出问题后取消整个<em>事务</em>,rn包括引发这个触发器的外部语句。。。一直退到应用程序上(ADO)rnrn那么在这里,我应该怎样写??/rnrn
事务怎么
怎样向一张表中增加数据,同时增加另一张表里的相应字段数据,用<em>事务</em>来写吗,<em>事务</em>是要写在<em>存储过程</em>里面吗,求具体代码rnJava后台要<em>怎么</em>调用呢
ACCESS数据库的事务怎么
RT
事务怎么写?
<em>怎么</em>dim cn as new connection里面只有<em>一个</em>rncn.beginTransaction<em>事务</em>,<em>怎么</em>没有回滚,还有提交rn这里面的<em>事务</em>要<em>怎么</em>写呢?请大虾指教
请教:带一个输入参数的存储过程及ASP调用怎么写?
rn rn对<em>存储过程</em>不熟,现在急需使用,哪位可以帮一下忙rnrn相关的SQL语句:rnselect * from db where id='"&request("id")&"'rnrn<em>怎么</em>将这个语句写成存储语句,并且在ASP中调用啊rn rn
请问如何实现存储过程事务
在DCOM连接中如何实现<em>事务</em>和<em>存储过程</em> 有高人能指点一二么?
使用存储过程,带的参数为表名。存储过程应该怎么
使用<em>存储过程</em>,带的参数为表名。<em>存储过程</em>应该<em>怎么</em>写 ?rnrn主要是表名<em>怎么</em>定义。ms sql server 没有此类型
下面存储过程 怎么应用事务
create proc insert_two_tablern@a int,rn@b int,rnasrnrnbeginrninsert into table1(a)values(@a)rninsert into table2(b)values(@b)rnrnendrnrn怎样保证 两个表操作同时成功???rnrn谢谢
ADO.NET事务存储过程事务
我开启了<em>一个</em>ADO.NET的<em>事务</em>,它去执行两个<em>存储过程</em>,其中每个<em>存储过程</em>中都有<em>事务</em>,第<em>一个</em><em>存储过程</em>执行没有问题,第二个执行的时候报错,ADO.NET的时候回滚,第<em>一个</em><em>存储过程</em>执行的也会回滚。为什么会这样?我第<em>一个</em>执行没有问题,<em>存储过程</em>中<em>事务</em>已经提交了,为什么还会回滚?
小妹请教一个事务应该怎么写!
我刚学习不久,请教各位师哥<em>一个</em><em>事务</em>应该<em>怎么</em>写!rnrn我有一张表table1结构、内容如下:rnid tnamern1 aarn2 bbrn3 ccrnrn我想写<em>一个</em><em>事务</em>,就是有一批数据,检查条件是否匹配,rnrn条件匹配就更新数据,如果发现有一条不匹配就回滚,rnrn以前更新的内容都失效,不要更新。rnrn例如我有一些数据rnrn1 aarn2 bbrn3 xxrnrn分别检查rnrnif(select count(*) from table1 where id=1 and tname='bb') 如果有记录rn就更新 update table1 set tname='aa' where id=1rnrn大概就这个意思,不知道师哥们看懂没!小妹才疏学浅,请各位师哥赐教!
请教怎么一个access的事务
3x
能否在一个事务存储过程中调用另一个事务存储过程呢?
mysql是否支持在<em>一个</em>带<em>事务</em>的<em>存储过程</em>中调用另<em>一个</em>带<em>事务</em>的<em>存储过程</em>呢?若能,<em>事务</em>的处理是否正常呢?rnrn比如这样rnrnCREATE PROCEDURE `sp_aa`()rnBEGINrnrn......rnrnSTART TRANSACTION;rnrn......rnrn call sp_bb();rnrn......rnrnCOMMIT;rnrn......rnrnENDrnrn///////////////////////////////////////////////rnrnCREATE PROCEDURE `sp_bb`()rnBEGINrnrn......rnrnSTART TRANSACTION;rnrn......rnrn......rnrnCOMMIT;rnrn......rnrnENDrn
关于带事务存储过程!老是实现不了
[code=C#]/// rn /// 带<em>事务</em>执行<em>存储过程</em>,该方法主要用于执行用于数据维护类的<em>存储过程</em>执行rn /// rn /// <em>存储过程</em>名称rn /// SQL参数数组rn public int ExecuteSPNoneQuery(string cmdText, SqlParameter[] parms)rn rn openConn();rn SqlTransaction transaction = sqlConn.BeginTransaction();rn SqlCommand myCmd = new SqlCommand(cmdText, sqlConn);rn myCmd.CommandType = CommandType.StoredProcedure;rn myCmd.Parameters.AddRange(parms);rn myCmd.Transaction = transaction;rn tryrn rn return myCmd.ExecuteNonQuery();rn transaction.Commit();rn rn catch (Exception ex)rn rn transaction.Rollback();rn throw ex;rn rn finallyrn rn closeConn();rn rn [/code]rn提示transaction是:“检测到无法访问的代码”?rn并且每次不不执行这个语句transaction.Commit();
存储过程、函数、带事务的触发器——对比
带<em>事务</em>的触发器:在MySQL中使用commit和rollback关键字来管理<em>事务</em>,commit表示提交,当整个<em>事务</em>在执行时没有出现任何差错,则提交<em>事务</em>。一旦出现某个不可预料的问题,导致了数据的不完整性,则使用rollback关键字进行<em>事务</em>回滚。 <em>存储过程</em>和函数的区别: 1. 一般来说,<em>存储过程</em>实现的功能要复杂一点,而函数的实现的功能针对性比较强。 2. <em>存储过程</em>返回参数,
问过带事务存储过程,顺便散分
[code=SQL]rn/**栏目表**/rncreate table Catalog (rn CatalogID int identity(1,1),rn CatalogName nvarchar(80) not null,rn AuditingStep tinyint null default 0,/**审核步骤**/rn constraint PK_CATALOG primary key (CatalogID)rn)rngorn/**文章内容表**/rncreate table ArticleDetails (rn ArticleID int identity(1,1),rn Title nvarchar(200) not null,rn Content ntext not null,rn constraint PK_ARTICLEDETAILS primary key (ArticleID)rn)rngorn/**栏目文章对应表**/rncreate table ArticleList (rn RecordID int identity(1,1),rn CatalogID int not null,rn ArticleID int not null,rn ApplyStatus tinyint null,/**文章审核状态**/rn constraint PK_ARTICLELIST primary key (RecordID)rn)rngorn[/code]rn有三张表Catalog,ArticleDetails,ArticleList,因为在这个系统里面存在着一篇文章属于多个栏目的情况,现在的想法是:发表一篇文章的时候,如果发表到的栏目审核步骤为0(即不需要审核),那么ArticleList表里对应的ApplyStatus为审核状态(假设为9),否则就为0(即未审核状态),并且将插入到文章表中的ArticleID作为参数插入到ArticleList表,<em>请问</em>这个带<em>事务</em>的<em>存储过程</em>如何写?
请问带 ???标记的句子应该怎么写?
Dim rsTemp As Recordsetrn Dim dbTemp As Databasern Dim astr As Stringrn rn rn rn Set dbTemp = DBEngine(0).OpenDatabase("e:\ga1\db1.mdb")rn rn rn SQL = "select distinct number,name from 表1"rn Set rsTemp = dbTemp.OpenRecordset(SQL)rn rn rn astr = "delete from 表1"rn dbTemp.Execute astrrn rn rn??? astr = "insert into [表1] ([number],[name]) select * from rstemp"rn dbTemp.Execute astrrn<em>请问</em>带 ???标记的句子应该<em>怎么</em>写?
请问带变量的like模糊查询怎么
select tb1.name from tb1,tb2rnwhere tb1.f1=tb2.f1rn原是相等,现在想,可不可以rn想用like 只要tb1.f1等于tb2.f1或者tbl.f1大于tb2.f1rn当tb2.f1="ab"参数rn当tb1.f1="abc" tb1.f1="abc"都成立的语句<em>怎么</em>写
请问一下该【存储过程怎么写?
表A有几个字段:ID varchar(32);StockID char(8),Date datetime,TimeSpan varchar(12),CanUsed char(1)rn意思分别是编号,股票代码,开始停牌时间,停牌多久(数值+单位),状态rnrn现在要写一SQL语句,更新数据库中的记录:rnrn如果系统当前时间小于Date,则设置状态值为1;rn如果系统时间大于Date,而小于dateadd(@timeunit,@timecount,@date);【其中@timeunit为TimeSpan的后2位,即单位(mm,dd,hh,mi,ss等),@timecount为TimeSpan的除最后两位外的整数部分】,此时设置状态值为0;rn如果系统时间大于dateadd(@timeunit,@timecount,@date),则设置状态值为2;rnrn请按照要求写一SQL语句或者<em>存储过程</em>。rn谢谢rnrn记录如下:rnID StockID Date TimeSpan CanUsedrn1001 SZ600001 2010-12-25 0:00:00 10mi 1rn1002 SZ600002 2010-6-30 0:00:00 10ss 0rn1010 SZ600010 2010-6-25 0:00:00 5dd 1rn1011 SH000011 2010-7-1 0:00:00 5dd 0rn1001 SZ600001 2010-12-25 0:00:00 10hh 1rn1002 SZ600002 2010-6-30 0:00:00 10hh nullrn1010 SZ600010 2010-6-25 0:00:00 5dd 1rn1011 SH000011 2010-7-10 0:00:00 8mm 0rn这些记录的CanUsed字段是错误,现在要更新这个字段
请问这个处理XML的存储过程怎么写?
<em>一个</em>XML格式的内容保存在表sales的字段details(text类型)中rn如何利用<em>存储过程</em>将details内容转成记录存放在<em>一个</em>临时表中?rn谢谢!
请问这个存储过程怎么写????(初学者)
我又<em>一个</em>SQL语句,不知道<em>怎么</em>吧她编程<em>存储过程</em>rn先取得ID字段的最大值rn Select max(ID) from table;rn然后将ID转换成数值rn Int(ID)rnrnrn<em>请问</em>这个<em>存储过程</em><em>怎么</em>写。rn
请问返回查询语句结果的存储过程怎么写?
Part表rnID Name Parentrnrn(ID主键,Parent是关联Part表的外键)rnrn想查出Parent为参数@parent的所有记录rnrnCREATE PROCEDURE dbo.GetPartChildernrn (rn @parent int rn )rnASrn SET NOCOUNT ONrn SELECT arn FROM Partrn WHERE (a.Parent = @parent)rn RETURNrnrn保存时出错:rn无法绑定由多个部分组成的标示符“a。Parent”rn列名‘a'无效rnrn是不是因为Parent是外键的原因?
请问这样的存储过程在Oracle中怎么写?
/*rn过程名: uspUpdateUserrn过程说明: 修改用户名密码rn参数说明:rn @UserName:用户名rn @Password: 密码rn*/rnIF EXISTS(SELECT * FROM sysobjects where Name='uspUpdateUser' AND TYPE='P')rnDROP PROCEDURE uspUpdateUserrnGOrnrnCREATE PROCEDURE uspUpdateUserrn(rn @id int,rn @UserName VARCHAR(20),rn @Password VARCHAR(30)rn)rnASrn IF EXISTS(SELECT UserName FROM Admin WHERE UserName=@UserName) rn BEGINrn RAISERROR 51002 '用户名已经存在,修改无效'rn ENDrn ELSErn BEGINrn UPDATE Admin SET UserName=@UserName,Password=@Passwordrn WHERE id = @id rn END
请问这个存储过程的调用怎么写?
<em>存储过程</em>:rnCreate procedure BERPProc_OrderNumberrn@Style nvarchar(4),rn@OrderNumber nvarchar(30)='' output,rn@Ret_Err int='0' outputrn……rnrn我想获得@OrderNumber的返回值
请问这个非常简单的存储过程怎么写?
<em>请问</em>这个非常简单的<em>存储过程</em><em>怎么</em>写?rn向<em>一个</em>表(Port)中插入数据,这个表中的某个字段(NationID)是<em>一个</em>int型的ID,它的值并不知道,只知道<em>一个</em>字符串型的NationName,NationName和NationID是在另<em>一个</em>表(Nation)中的两个字段。就是这个插入的<em>存储过程</em>如何写?rn不知道我描述的是否明白?rnrn表结构:rnPort表 ID Name NationIDrnNation表 ID Namernrn就是说我知道<em>一个</em>NationName的值,要找到在Nation表中对应的NationID值,再和<em>一个</em>PortName值一同插入到Port表中去。rn
请问这样的存储过程怎么写?
问题一: rnrn<em>一个</em>表有以下四个字段,rnProject(项目), Trade(行业),Workload(工作量),Rate(比率)rn其中,前三个字段都已经有了数据,现在关键是要计算“Rate 比率”的值。rnrnRate比率 = 该项目的工作量 / 和该项目属于同一行业的所有项目的工作量总和rnrnrn问题二:rnrn有两张表: rnTABLE_1 TABLE_2rnFIELD_1 FIELD2 FIELD_1 FIELD2rn两张表对应字段的结构是相同的, 现在 TABLE1 的两个字段都有了数据,TABLE2 只有 FIELD1 有数据,FIELD2 为空。 rnrn要求是: 根据 TABLE1 的内容,来填充 TABLE2.FIELD2 的值。 (注意:不能把TABLE2 的内容全部删除然后重新导入,因为 TABLE2 还有其它字段有数据的)rnrn例如: TABLE1 中有<em>一个</em>记录为 (1, 'A'),TABLE2 中有<em>一个</em>记录为 (1, NULL),现在就需要把 TABLE2 的该记录改成 (1, 'A')。
请问这个存储过程怎么写呢?
新建<em>一个</em>SQLServer登录用户'testuser',这个用户只属于<em>一个</em>数据库'testDatabase',且它的角色只有 'Public',现在要写<em>一个</em><em>存储过程</em>来控制'testDatabase'数据库中的所有<em>存储过程</em>和视图以及表。用<em>一个</em>循环控制。表的类型为‘系统’的表只给他<em>一个</em>'select'条件,而类型为‘用户’的表给他的条件是'select','update','insert','delete'四个操作都要选择。而关于<em>存储过程</em>,所有的<em>存储过程</em>的'Exec'都要选择上。但是不能给这个用户删除表的权限。我的思路是:查询数据库'testDatabase'中所有的表,如果类型为‘系统’的表则只给他‘select’权限,如果类型为用户的表则将四个基本操作的权限都给用户'testuser'。然后查询所有的<em>存储过程</em>,将'exec'的权限全都给用户'testuser'。我有几个问题请教高手们:rn1.<em>怎么</em>将这些对表的'select','update','insert','delete'这四个基本操作的权限给予用户'testuser'rn2.<em>怎么</em>将这些对<em>存储过程</em>的'Exec'操作的权限给予用户'testuser'rn3.<em>怎么</em>给予用户'testuser'不能有删除表和<em>存储过程</em>的权限。rn如果有高手能够将这个<em>存储过程</em>全都写出来就太谢谢了,绝对加分!!!rn
请问存储过程where是变化的怎么
我用的是sql server2008 rn有这么个情况,比如条件1的时候,我需要写成where id = @id rn条件2的时候,我需要写成where name = @name rn我应该<em>怎么</em>写才行呢? rn我的做法是 rndeclare @query varchar(100) rnif(...) rnbegin rnset @query = 'id = '+@id rnend rnelse if(...) rnbegin rnset @query = 'name = '+@name rnend rn... rnrn但是似乎不能放到where后面去啊。。。 rn还望指点! rn谢谢!!
请问这个存储过程或SQL怎么
有<em>一个</em>字段,字段内容为 xxxx?sid=12345 或 XXXX?sid=123&open=truern我想取出sid的值,即12345和123这样的<em>存储过程</em>或sql该如何写?
请问这个存储过程应该怎么写呀?
[color=#FF0000]简介表[/color]rn[img=http://hi.csdn.net/attachment/201101/30/9287493_1296379345c4rZ.jpg][/img]rn rn[color=#FF0000]图片表[/color] rn[img=http://hi.csdn.net/attachment/201101/30/9287493_1296379355zyXj.jpg][/img]rnrn[color=#FF0000]位置表[/color]rn[img=http://hi.csdn.net/attachment/201101/30/9287493_1296379364hgj6.jpg][/img]rnrnrn我的问题是 我在程序中 想删除图片路径(ImageUrl 在图片表)和简介内容(IntroduceContent 在简介表)rn可是 外键却在 位置表 里面。rnrn现在 我想写<em>一个</em><em>存储过程</em>执行删除的功能 我在前台就有<em>一个</em>删除按钮! 谢谢了
请问这样的sql语句怎么存储过程
select * into temp from openrowset( 'SQLOLEDB', 'SHANGYIN-AD52B3\SQLEXPRESS2005'; 'sa'; '2010',Chbase.dbo.Chinese_Area)rnrn<em>请问</em>上面的服务器、用户名、密码通过输入参数传入<em>怎么</em>写?rnrn注意关键是上面单引号我不知道<em>怎么</em>处理!!!!!!
请问这个存储过程怎么
rnupdate Table1 set Value = @Value where Table_ID in (1,2)rnrn我想使用<em>存储过程</em>的参数替换“1,2”rnrn@ID_List [varchar](255)rnrnupdate Table1 set Value = @Value where Table_ID in (@ID_List)rnrn可是使用的时候就说不能转换成int,大家帮我看看<em>怎么</em>改
请问这个分页存储过程怎么写,
[code=SQL]rnrnalter PROCEDURE [dbo].[GetsearchPage] rn@nPage int,---第几页rn@Pnum int,--每页页数rn@key nvarchar(100),rn@f_allidnum nvarchar(100) output --返回总页数rnAS rndeclare @sql nvarchar(3000),@c nvarchar(20)rnrnrn set @sql='WITH OrderedOrders ASrn(SELECT count(id),soft_names,addtime,softsize,soft_garde,system_set,downcount,rnROW_NUMBER() OVER (order by [id])as RowNumber FROM soft where soft_names like ''%'+@key+'%'''+' )rnSELECT id,soft_names,addtime,softsize,soft_garde ,system_set,downcountrnFROM OrderedOrders rnWHERE RowNumber>'+cast((@nPage-1)*@Pnum as nvarchar(50))+' and RowNumberrnexec(@sql)rnrnrnrnrn[/code]rn@f_allidnum总是null
请问这个简单的存储过程怎么写?
数据库PLM里面有<em>一个</em>表SM_User,该表有Usercode,UserName,Password三个字段!rn现在要写<em>一个</em><em>存储过程</em>是在该表添加数据,并且在<em>存储过程</em>里面验证Usercode不能为空,rn而且Usercode不能有重复的值!
请问这个算法的存储过程怎么写?
哪位帮我以下这个算法的<em>存储过程</em><em>怎么</em>写rn(目的:库存表生产日期最先生产的先出库)rnrn例:rnselect * from 库存表rnrn编号 名称 数量 批号rn001 电脑 20 0609011rn001 电脑 20 0609021rn001 电脑 10 0609031rn-----------------------rn例:出库100台或30台)rnrn出库100台要求的结果:rnrn编号 名称 数量 批号rn001 电脑 -50 0609181rnrn出库30台求的结果rn编号 名称 数量 批号rn001 电脑 10 0609021rn001 电脑 10 0609031rnrn----------------------------------------------------rn算法:rnrnj为出库的数量rnc为库存总数量rnrsc=select sum(数量) as 总数量 from where 编号='001' rn c=rsc('总数量').valuernif j>c then rnbeginrn更新当前库存为c-jrnexit;rnend;rnrnrs=select * from 库存表 where 编号='001' order by 批号 ascrnfor i=1 to rs记录集总数 dornbeginrnrn if j>=当前指的记录的数量 thenrn beginrn j =j-当前指的记录的数量 rn 删除当前指的记录rn   移动到下一条记录rn  end  rn else rn  beginrn j=当前指的记录的数量-j rn 更新当前记录数量为jrn    退出循环rn end;rn
存储过程怎么写?">请问,这个简单的"自动编号"的存储过程怎么写?
[code=sql]ALTER PROCEDURE USP_AutoIdrn (rn @TableName nvarchar(20), --表名.rn @AutoId nvarchar(5) OUTPUT --输出的自动编号.rn )rnASrn SET NOCOUNT ON rn beginrn declare @temp nvarchar(50)rn set @temp = ltrim(rtrim(@temp))rn select @temp = max([FId]) from T_DailyNoteBook --获得原先最大值.rn set @temp = cast((cast (@temp as int) + 1) as nvarchar) --加1.rn set @AutoId = @temprn endrn rn rn [/code]rn如果是select的话,返回的是DataTable,不想那样取得.rn在这里,<em>怎么</em>获得?rn固定的会,但是动态的就不会了...rn谢了..
请问迭代的存储过程怎么写呢?
ID Parent Name Partrnrn1 0 A NULLrn2 1 AA 112rn3 1 AB NULLrn4 5 ABA 111rn5 0 B 5454rnrn其实是个树,删除<em>一个</em>节点,要删除以下所有的节点rnrn[code=SQL]rnCREATE PROCEDURE dbo.DeleteRecodern (rn @id intrn )rnASrn SET NOCOUNT ONrn declare @tmp intrn set @tmp = (select ID from PartsClass where Parent=id)rn if exists @tmprn select (exec dbo.DeleteRecode ID) from PartsClass where Parent=idrn elsern Delete * from PartsClass where ID=idrn RETURNrn[/code]rnrn不过好像不对rnrn谢谢回帖
高手帮小弟分析一个事务存储过程?
CREATE PROCEDURE p_set_time_sendrn AS rnbeginrnSET XACT_ABORT ONrnbegin tran zhuanyidingshifasongrninsert into tb_queue_list select * from tb_set_time_msg where send_time <= getdate()删除的数据不一样多.rn会不会出现:在删除前又有满足条件的数据写入 tb_set_time_msg ,但这些数据没有被写入tb_queue_list. 说明 tb_queue_list,tb_set_time_msg结构一样.
想实现一个事务存储过程,老是实现不了?
Alter proc inertAllrn(rn@商品类型名称 nvarchar(64),rn@详细商品类型名称 nvarchar(64),rn@商品名称 nvarchar(64),rn@商品ID varchar(64),rn@销售价格 money,rn@会员价 money,rn@最后进货日期 datetime,rn@库存量 int,rn@商品表备注 nvarchar(256),rn@供货数量 int,rn@进货单价 money,rn@进货时间 datetime,rn@保质期 INT,rn@共计 money,rn@进货表备注 nvarchar(128),rn@供货商名 nvarchar(64),rn@供货商ID int,rn@供货商地址 nvarchar(64),rn@联系电话 varchar(64),rn@供货商表备注 nvarchar(128)rn)rnASrnBEGIN rn IF(not exists (select * from dbo.商品类型表 where 商品类型名称=@商品类型名称))rn BEGIN rn BEGIN TRANSACTION inserAll_a rn BEGIN rn insert into dbo.商品类型表 values(@商品类型名称) rn insert into dbo.详细商品类型表 values(@详细商品类型名称,@商品类型名称) rn insert into dbo.商品表 values (@商品名称,@商品ID,@详细商品类型名称,@销售价格,@会员价,@保质期,rn @最后进货日期,@库存量,@商品表备注) rn insert into dbo.供货商表 values(@供货商名,@供货商ID,@联系电话,@供货商地址,@供货商表备注) rn insert into dbo.进货表 values(@商品ID,@供货商ID,@供货数量,@进货单价,@进货时间,@共计,@进货表备注) rn ENDrn IF @@ERROR!=0rn BEGINrn ROLLBACK TRANSACTION inserAll_arn ENDrn ELSErn BEGINrn COMMIT TRANSACTION inserAll_arn ENDrn ENDrn ELSErn SELECT '' rnENDrn我想让它执行完所有的插入语句,如果有问题则回滚全部的插入,否则提交<em>事务</em>。以上的代码不起作用,不知道那里出错了,还是我对<em>事务</em>或<em>存储过程</em>不了解!@
关于存储过程事务一个小问题
目前我有<em>一个</em>程序,做<em>事务</em>管理,但我调用了<em>存储过程</em>rnrn随意程序简单描述如下:rn 查询rn 修改rn 添加rn 调用<em>存储过程</em>rn 修改rn rn<em>请问</em>,rn1.<em>存储过程</em>当中,我如果不commit,我是否可以在外面进行事物管理,rn2.如果可以,<em>存储过程</em>当中如果有异常,当异常发生的时候,我是否要在<em>存储过程</em>内部进行回滚rn3.在外面我我都是在catch的时候rollback,在finally的时候commit,disconectrn是否可以或可行,在线等待,谢谢各位rnrn
一个事务对应多条存储过程
我有A,B,C,D四个<em>存储过程</em>,总是一起按ABCD的顺序一起执行,我能不能在A(A是查询库存数量的)里开始<em>一个</em><em>事务</em>rnCREATE PROCEDURE [A] rn (@doctorname [varchar](50), @czyname [varchar](50))rnASrnBEGIN TRANSACTION tran1 --名为tran1的<em>事务</em>开始rnINSERT INTO [yd].[dbo].[sale] ( [doctorname],[czyname]) rnVALUES ( @doctorname, @czyname)rnselect SCOPE_IDENTITY( ) AS djhrnreturnrnGOrn然后在D里用rnIf @@error<>0rn If @@TranCount=1rn Rollback Transaction tran1 --中间出现<em>事务</em>每次要进行以此判断rnelsern If @@TranCount=1rn Commit TRANSACTION tran1rn结束<em>事务</em>。rn在中间的<em>存储过程</em>B,C里不用再写什么代码了吗?系统会认为<em>存储过程</em>A,B,C,D都在<em>事务</em>tran1里面吗(其中<em>存储过程</em>C需要多次调用)?rn在C/S结构里,如果1号工作站先执行<em>存储过程</em>A(就是先开始执行<em>事务</em>tran1),这时2号工作站也调用<em>存储过程</em>A还会执行<em>事务</em>tran1吗?就是同时执行<em>事务</em>tran1?(尽管不是同时开始,但1号工作站的tran1<em>事务</em>还没执行完毕,2号工作站的tran1<em>事务</em>也会执行吗?)
一个基础的存储过程事务
<em>存储过程</em>的<em>事务</em> 是不是就是 比如执行10条SQL语句 有一条发生错误其它的就都不执行??rnrnrn我想求<em>一个</em><em>事务</em> 要求是传入<em>一个</em>参数 参数就是几条SQL语句 然后执行参数,如果有错误就回滚 返回1;没有错误都执行了就返回0;rnrn 十分感谢!!
存储过程事务
<em>存储过程</em>里的全部语句,会当作<em>一个</em><em>事务</em>处理吗?rn比如<em>一个</em>业务,删除某表数据,同时又增加另<em>一个</em>表的数据,同时可能还要有人来读数据,在过程中<em>怎么</em>做呢?rnrn
存储过程+事务
<em>存储过程</em>what      一堆SQL语句+流程控制编写的模块when      数量大且比较复杂的业务(比如当完成<em>一个</em>功能需要好几张表时,可以用<em>存储过程</em>,只需打开一次数据库;若不用<em>存储过程</em>,你得写好几个调用表的方法,连接好几次数据库)      优点 提高运行速度 <em>存储过程</em>在创建时进行编译,在调用<em>存储过程</em>的时候,其执行的SQL语句大部分准备工作都已完成;而交互执行的SQL语句是编译执行的,所以速
存储过程事务
<em>存储过程</em>嵌<em>事务</em>,可执行于对多个表的增删改
存储过程 事务
我在<em>存储过程</em>中用到了<em>事务</em>,一次插入多张表的信息,其中有的表的字段是电话号,在程序中我判断了一下是否是电话号,如果不是,就不执行村粗过程,但是报错。rn错误信息为:数据录入失败!过程或函数'ProInfoInsert'需要参数@LinkPhone,但为提供该参数。不知道怎样能够不弹出对话框,程序不执行插入。
事务存储过程
有下面一段代码:rn cdsmat.First;rn if not dm.adoconn.InTransaction thenrn dm.adoconn.BeginTrans ;rn tryrn while not cdsmat.Eof dorn beginrn adospcreat_iss.Parameters.ParamByName('@comid').Value:='aaa';rn adospcreat_iss.Parameters.ParamByName('@matno').Value:=cdsmat.fieldbyname('matno').AsString;rn ...rn adospcreat_iss.Parameters.ParamByName('@bz').Value:=bz;rn adospcreat_iss.Parameters.ParamByName('@id').Value:=id; //传递参数rn adospcreat_iss.Prepared;rn adospcreat_iss.ExecProc;rn cdsmat.Next;rn dm.adoconn.CommitTrans;rn exceptrn dm.adoconn.RollbackTrans;rn raise;rn end;rnrn在循环过程中调用了<em>存储过程</em>,直接插入数据到表中,那么如果在循环过程中发生了问题,不是在发生问题以前的记录都插入数据库中了吗?这个<em>事务</em>好像没有发挥作用了?rn<em>请问</em>这种情况应该如何去做才对?rn谢谢rn
存储过程事务
定义<em>存储过程</em>和<em>事务</em>在什么地方写,在程序里<em>怎么</em>调用?
电脑维修知道哦(帮助你成为维修好手)下载
电脑维修的一些知识。因为自己感觉还不错,就拿来和大家分享 相关下载链接:[url=//download.csdn.net/download/mm8989/2700145?utm_source=bbsseo]//download.csdn.net/download/mm8989/2700145?utm_source=bbsseo[/url]
java教程 第三课-2下载
java java学习 java自学 java入门 相关下载链接:[url=//download.csdn.net/download/jliu2390/4357633?utm_source=bbsseo]//download.csdn.net/download/jliu2390/4357633?utm_source=bbsseo[/url]
一款由89C51与ADC0832组成的数码电压表下载
一款由89C51与ADC0832组成的数码管带8个发光管提示电压等级的电压表。 相关下载链接:[url=//download.csdn.net/download/wjg3721/4532873?utm_source=bbsseo]//download.csdn.net/download/wjg3721/4532873?utm_source=bbsseo[/url]
我们是很有底线的