在过程内增加两个变量,分别用MainMenuId赋值,然后分别应用

解决方案 »

  1.   

    create or replace procedure P_DEL_MainMenu( MainMenuId in  int ) is
     menuid int;
     menuid2 int ;
    begin 
      menuid :=MainMenuId;
      menuid2 :=MainMenuId;
      Delete  from  t_sysmenuinfo  t where t.mainmenuid=menuid;
      Delete from t_sysmainmenu t 
      where t.mainmenuid = menuid2;
     
    end P_DEL_MainMenu;
      

  2.   

    Delete 语句加上cascade constraints关键字即可
      

  3.   

    同意
     TwinkleCrystals(小雨点)
      

  4.   

    t_sysmenuinfo  与t_sysmainmenu  确实存在外键存在我试下
      

  5.   

    cascade constraints 放在哪里 我出错了我请大家继续指点一下
      

  6.   

    Delete  from  t_sysmenuinfo  t where t.mainmenuid=MainMenuId;相当于 delete from t_sysmenuinfo;呵呵
      

  7.   

    create or replace procedure P_Update_MainMenu(MainMenuId in  int , MainMenuName in varchar2, MainMenuDec in varchar2 )
    is
    MainMenuId_Param  int;
           begin
         MainMenuId_Param :=0;
         --如果存在更新记录MainMenuId_Param 为1
         select count(*)   into MainMenuId_Param  from  t_sysmainmenu t where t.mainmenuid=MainMenuId;
        --如果不为 0 更新数据
         if (MainMenuId_Param<>0) then
          begin 
             update    t_sysmainmenu  t 
             set  t.mainmenuname=MainMenuName ,t.mainmenudesc=MainMenuDec
             where t.mainmenuid=MainMenuId;
             
          end ; 
              end if;
      
    end P_Update_MainMenu;出现问题  比如原表
    主菜单ID 主菜单名称 菜单描述 
    56          bbgb   系统帮助 
    1          首页   系统 执行一次update后  我只想更新 1 首页得 
    56          bbgb   系统帮助
    1          首页   12345但事实上得到 
    主菜单ID 主菜单名称 菜单描述 
    56          bbgb    12345
    1          首页   12345怎么回事呀???
      

  8.   

    Delete  from  t_sysmenuinfo  t where t.mainmenuid=MainMenuId
    相当于 delete from t_sysmenuinfo不可能Delete  from  t_sysmenuinfo  t where t.mainmenuid=1
    也只删除了一条记录
      

  9.   

    大虾帮忙呀!!随便推存点好书给我只要 pl/sql的oracle的帮助太臭 我搞了就都没法
      

  10.   

    delete from tabname cascade;
      

  11.   

    delete from tabname cascade constraints ;
      

  12.   

    更正一下
    Delete  from  t_sysmenuinfo  t cascade where t.mainmenuid=menuid;
    Delete from t_sysmainmenu t cascade where t.mainmenuid = menuid2;
    请楼主再试一下
      

  13.   

    还有一个问题
    请楼主把输入参数名字改一下,改成跟字段名不同的名字。
    因为oracle无法区分你的是字段名还是参数名。因而MountLion(闷头睡) 的说法是对的。
    我试过了。
    也请楼主试试。
    一定行的!!
      

  14.   

    Oracle专家高级编程原书名:Expert one-on-one Oracle  
    原出版社:Wrox Press  
    作者: Thomas Kyte 
    译者: 袁勤勇 张玉魁等    
    书号: 7-302-05334-0 
    页码: 1276 
    出版社: 清华大学出版社  
    评级:中文版四星半 英文版 五星
     
    这本书经典之作的作者是Thomas Kyte,也就是asktom.oracle.com技术专栏背后的Tom.该书从Oracle的基本原理讲起,对Oracle的各个重要特性(比如说索引/分
    析函数等)都进行了细致而深入的分析.尤为有趣的是,在描述一些特性和功能的时
    候,作者喜欢用"事实说话".用了很多范例,而且这些范例看似信手拈来,其实却用意深刻,读后让人茅塞顿开,痛快之极.在中文的Oracle技术论坛上,经常可以看到类似的话:这个问题你可以去阅读Tom的那本书,在某章某节.可见这本书在众多从事Oracle的技术人员心目中的地位.很多时候,DBA每每在检查数据库之后,几乎一定会说上一句:"程序员根本没有使用绑定变量." 说实话,进行数据库的开发的程序员很少能有意识去写有效的数据库程序.
    而这几乎是数据库不能有良好性能的主要根源.如何书写有效的、高效的数据库应用
    程序,在这本书里完全可以找到答案。缺点:代码不够美观.可能作者的写作时间比较仓促,很多代码似乎是直接从SQL*Plus中粘贴过来的,没有经过修饰.
    翻译不够专业,这是这本书的中文版被垢病的原因.不过,套用一个朋友的话:百分之九十的内容都可以看懂.如果每个人都能做到这样,这本书买的也就算值了.虽然作者说此书主要是针对应用开发人员而写,不过在我看来,这本书对DBA等更有实际的意义.强烈建议DBA们人手一本.Tom的新书:《Effective Oracle by Design》 也即将出版,无疑又是一本重量级的经典之作,让我们拭目以待。(本来是Wrox要出版,可惜Wrox的母公司破产)有兴趣的读者可以到这个链接查看一些信息:
    http://www.amazon.com/exec/obidos/tg/detail/-/0072230657/103-4773573-3082206----------------------------------------------------------------------------
    Oracle9i/8i Database Concepts
    电子版/英文
    http://tahiti.oracle.com/如果想认真学习一下Oracle的话,这两本手册应该是必读之物。概念手册很清晰的解释了Oracle的架构、概念、原理等内容.
    经常在论坛上看到不少朋友问一些概念上的问题,可以说,仔细读一下这个手册,大部分问题也就不会再有人提问了.当然,不是每一个人都有耐心去读英文资料的.还是推荐大家能够阅读一下,毕竟,这个是免费的.只要在OTN上注册了之后,就可以下载Oracle的大部分手册.学习Oracle,Oracle的技术文档的确是最具有权威性的。----------------------------------------------------------------------------
    Oracle 24*7技术与技巧---数据库高可用性实现方案   
    原书名: Oracle 24*7 Tips&Techniques  
    作者: Devraj,V.S.  
    译者: 胡季红  
    书号: 7-111-08221-4 
    页码: 598 
    出版社: 机械工业出版社  
    评级:四星 原出版社 Osborne/McGraw-Hill  该书的内容似乎有些陈旧,但是笔者还是强烈建议数据库管理员能读一读此书。这本书包括的内容有:对高可用性的策略上的指导,如何理解数据库的高可用性,如何建立并维护数据库的高可用性如何为用户提供24*7的数据库环境?如果对高可用环境维护管理与优化?一些经典的错误的解决方法与思路。当然,内容还远远不止这些,在仔细阅读之后,你会发现自己对Oracle数据库的整体架构有了进一步的了解。对于需要提出应用解决方案的情况下,也是一本不错的参考性著作。----------------------------------------------------------------------------
    Oracle9i 实务管理讲座——系统核心篇   
    作者: 何致亿 
    书号: 7-5053-8655-7 
    页码: 370 
    开本: 16开 
    出版社: 电子工业出版社  
    评级:三星半      
     
    最近CSDN对此书大作广告.看了看感觉是属于"图文并茂"的那种.台湾的技术作家的作品的一个特点就是写作的思路比较清晰,易读性比较强.不过一些术语可能两岸的差异比较大,有些拗口.单以这本书来说,作为入门书来看,整理的质量还是不错的.能看得出来作者的认真负责的态度.也能看出来作者对Oracle的实践经验还是比较少,有的地方给出的思路比较迂回(比如说,如何修改数据库的初始参数的办法,作者用的方法就不够灵活)这本书的整体内容有些类似实验手册(题目有些夸大,呵呵).可作为学习Oracle9i的入门书。----------------------------------------------------------------------------
    Oracle 性能优化技术内幕
    原书名: Oracle Performance Tuning 101   
    作者: Gaja Krishna Vaidyanatha Kirtikumar Deshpande John Kostelac  
    译者: 钟鸣 石永平 等  
    书号: 7-111-10102-2 
    页码: 284 
    出版社: 机械工业出版社  原出版社 McGraw-Hill  
    评级:三星半      用作者的话说:一本讲述Oracle优化的书,不应该超过40页(作者虽然也认为有点偏激).敢这样说的技术作家,想必技术也不会差.
    读罢该书,感觉作者所言非虚.书中提到了不少技术论文,在www.hotsos.com可以下载到.这本书其实也是若干篇技术论文的综合产物.书中倡导的优化过程简单性的原则让人读起来很清新,没有那么多的深奥的数据库视图,也没有过多的脚本,而只是说明原则,
    其他的由你来掌握.----------------------------------------------------------------------------
    Oracle性能优化——已证实的获得最佳性能和可用性的方法   
    原书名: High-performance Oracle:Proven Methods for Achieving Optimum Performance and Availability [原书信息]  
    作者: Geoff Ingram  
    译者: 张建明 英宇  
    书号: 7-302-06424-5 
    页码: 592 
    出版社: 清华大学出版社 原出版社 Wiley Publishing  
    评级:四星      
         
    这本书的副标题--"已证实的获得最佳性能和可用性的方法"揭示了此书所面向的角度。一些章节,比如:压力测试和基准测试/Oracle高可用的VERITAS解决方案等都是以实际应用为目的进行讲解,很有指导性.而这样的内容在别的图书中还真不多见.
    最后一章的:Oracle DBMS疑难解答,介绍了很多鲜为人知的方法与技术(如Unix内核跟踪等),很是经典.通观全书,和Tom的那本《Oracle专家高级编程》,有的地方还是有可比性的。----------------------------------------------------------------------------
    Oracle8i DBA宝典          
    原书名: Oracle8i DBA Bilbe  
    作者: Jonathan Gennick Carol McCullough-Dieter Gerrit-Jan Linker  
    译者: 赵艳勤 刘冠英 秦玉杰 等  
    书号: 7-5053-6299-2 
    页码: 948 
    出版社: 电子工业出版社  原出版社 IDG Books Worldwide,Inc.  
    评级:三星
     
    很多DBA可能都看过这本书,有些人还喜欢推荐此书.说实话,对这本书,Fenng感觉并不是很好(IDG的Bible系列的图书其实都一般).
    这本书的特点是面广,但是不够深入.很多地方浅尝辄止,是属于“授人以鱼"的书籍,我们买书最好能够买到“授人以渔”,而不是买了一本How To .
    覆盖面只有8i.有些过时.----------------------------------------------------------------------------
    Oracle编程入门经典——覆盖至Oracle 9i版本   
    原书名: Beginning Oracle Programming  
    作者: Sean Dillon;Christopher Beck Thomas Kyte等  
    译者: 袁勤勇 何欣等  
    书号: 7-302-05988-8 
    页码: 1024 
    出版社: 清华大学出版社  原出版社 Wrox Press  
    评级:四星     又是一个大砖头,又是清华出版的Wrox图书。翻译还是一样的人,翻译质量还是如此。有些东西还是要说一下。之所以提到了这本书,完全是因为作者之一是Thomas Kyte(在China-pub上的简介没有提及)。另外两个作者也不差--都是Tom的同事。
    这本书的定位是Oracle编程入门性教材(Beginning Oracle Programming)。有了Tom的加入整本书的一些思想有了很大的变化.
    此书以Oracle的一些基本概念开始,逐步介绍了Oracle 编程所需的技能与技巧.后面的部分还介绍了两个完整的应用程序的开发.这本书的一个特点就是在学习的过程中,作者也会潜移默化的教给你Oracle编程的一些好习惯。如果您打算找一本书来系统的学习Oracle的编程,Fenng向您推荐这本。书中的一些内容和《Oracle专家高级编程》略有重复.此外,Wrox的一些书有一个通病:作者众多,草草完成.这本书多多少少也有这个毛病.