1.我用SQL SERVER的存储过程时发现功能挺强大,可以在里面做简单的逻辑处理。我想问在对服务器段没大影响的情况下,可不可以把增、删、改、查都用类似于存储过程的服务器端手段实现,如果可以真的有这么做的吗?
duwamish例子中就是这么处理的,不过是要增加服务器端的负担,
这么做有利于减少项目的逻辑操作。
2.我怎么在一个存储过程里调用另一个存储过程,并得到它的返回值进行进一步处理。
exec 存储过程名称 参数名1称,参数名称2 , 返回的值可以放到一个临时表中处理,没有试过直接得到它的返回值,帮你顶。
3.SQL基本语法里怎么定义整形数组啊?
用游标加循环来处理,没有试过整形数组,帮你顶。
4.我想每天7点半插入若干条记录,要怎么写触发器语句?
用作业来执行
5.存储过程和触发器一般是不是短小精悍比较好,我写了大约200行的一个存储过程,是不是有点大,这两个东西一般适当的大小是多大?
确实需要也是可以的。应该不成问题。

解决方案 »

  1.   

    同时也欢迎来我们论坛进行交流!一起进步!!
    ================================================
    WWW.ITZYK.NET IT资源库 ----> 专业的DoNet技术论坛 
    ===============================================
    www.itzyk.net 是一个刚刚创建起来的专业DoNet技术论坛,讨论与交流各种关于DoNet技术方面的信息,由于论坛正在起步阶段,需要大量高手,牛人们前来相助,特此诚邀各位兄弟姐妹们来参与论坛的建设,一起来打造属于我们的程序员们的专业技术论坛。
      

  2.   

    1.我用SQL SERVER的存储过程时发现功能挺强大,可以在里面做简单的逻辑处理。我想问在对服务器段没大影响的情况下,可不可以把增、删、改、查都用类似于存储过程的服务器端手段实现,如果可以真的有这么做的吗?
        可以,而且执行速度会加快。真有这么做的,我们前不久作的一个比较大的项目就用到了几百个存储过程。
    2.我怎么在一个存储过程里调用另一个存储过程,并得到它的返回值进行进一步处理。
       可以调用,将返回值保存到临时表中。其实你也可以用函数,如果可以实现功能的话。
    3.SQL基本语法里怎么定义整形数组啊?
      不能定义吧,你可以直接用临时表代替的,用起来和数组一样,配合游标。
    4.我想每天7点半插入若干条记录,要怎么写触发器语句?
      这个不知道,我再查查资料
    5.存储过程和触发器一般是不是短小精悍比较好,我写了大约200行的一个存储过程,是不是有点大,这两个东西一般适当的大小是多大?
    一般而言是小点好,易维护,易理解。但是如果处理的功能复杂,你也可以长点,没什么问题。不过你也可以尝试着将它拆分。
      

  3.   

    1:技术上本身没问题,但是不易移值。如果换成Oracle,数据这块就得重做。如果做在程序中,模块化很好。基本不是个负担。
    5:两者都是编译在本地的代码,好处就是速度。你的问题可能不必考虑
      

  4.   

    我最近弄这个比较多,回答你一下,不详细的地方你可以查查帮助1.我用SQL SERVER的存储过程时发现功能挺强大,可以在里面做简单的逻辑处理。我想问在对服务器段没大影响的情况下,可不可以把增、删、改、查都用类似于存储过程的服务器端手段实现,如果可以真的有这么做的吗?
        如果你的add,del,alt,sel都不是非常复杂(比如说你要delete一个表的同时又要对其痕迹进行处理),或者你的add,del,alt,sel不是写得非常长(上千行),用store procedure和在客户端传sql语句到服务器是没什么区别的.2.我怎么在一个存储过程里调用另一个存储过程,并得到它的返回值进行进一步处理。
       分两种情况,一:你要得到一个或者几个结果,可以使用output的参数
                  二:要得到一张表形式的结果,你需要使用游标读store procedure---cursor
       
    3.SQL基本语法里怎么定义整形数组啊?
      declare @tempArr table ( myData int ) /*类似这样写*/4.我想每天7点半插入若干条记录,要怎么写触发器语句?
      使用job,不需要触发器,job你在enterprise manager中直接就可以用了.5.存储过程和触发器一般是不是短小精悍比较好,我写了大约200行的一个存储过程,是不是有点大,这两个东西一般适当的大小是多大?
       我有很多store procedure 有上千行,还分几个子store procedure,因为我需要非常复杂的逻辑
       触发器尽量越小越好