🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: cn.bbs.comp.program
Article #1081

Sybase�洢��̵Ľ�����ʹ��

#1081
From: ���ܵ�Сʨ
Date: Thu, 07 May 1998 00:00
168 lines
10723 bytes
  �洢��̵��ص�Sybase�Ĵ洢����Ǽ��д洢��SQL Server�е�Ԥ
�ȶ������Ѿ�����õ����񡣴洢�����SQL�������̿��������
�ɡ���Ĺ��ܰ���:���ܲ���;������һ���;����һ��״ֵ̬�����
��̻�����,ָʾ���óɹ���ʧ��;�������ɸ�����ֵ����ù�̻�
����,Ϊ�������ṩ��̬���;��Զ��SQL Server�����еȡ�
    �洢��̵������ص�����:
    ���洢�����Ԥ������,�����ζ��������ͨ��SQL������
���SQL��䲻ͬ�����״�����һ���洢���ʱ,SQL Server�IJ�ѯ��
����������з���,���ų����﷨����֮���γɴ洢��ϵͳ�еĿ�ִ
�з��������ڲ�ѯ����Ĵ󲿷ֹ����Ѿ����,���Դ洢���ִ����
�Ⱥܿ졣
    ���洢��̺ʹ������ݶ�����ͬһ̨����SQL Server�ļ���
����,ʹ�ô洢��̲�ѯ���ص����,Ч����Ȼ�ܸߡ�
    ���洢���һ�����Client��ͨ��洢��̵����ֽ��е���,��
�����͵�ֻ�Ǵ洢��̵����ּ������IJ���(����еĻ�),����
���ɴ洢��̵����SQL���,��˿��Լ������紫����,�ӿ�ϵͳ��
Ӧ�ٶȡ�
    ���洢��̻�������ͬC�����Ӻ�������ı����úͷ���ֵ�ķ�
�����ԡ�
    ����,�洢��̴����ǿ��SQL���ԵĹ��ܡ�Ч�ʺ�����ԡ�����
��Ӧ�úô洢���,�Խ�һ������Sybase��ݿ�ϵͳ��ǿ��������
��Ҫ�����塣
    �洢��̵��﷨����
    �����洢��̵��﷨����Ϊ:
    CREATE PROCedure[owner.]procedurename[;number]
    [[(]@parameter_name datatype[=default][OUTput]
    [,@parameter_name datatype[=default][OUTput]]...[)]]
    [WITH RECOMPILE]
    AS SQL_statements
    ʹ�ô洢��̵��﷨����Ϊ:
    [EXECute][@return-status=]
    [[[server.]database.]owner.]procedurename[;number]
    [[@parameter_name=]value|[@parameter_name=]@varialbe[OUT
put]
    [,[@parameter_name=]value|[@parameter_name=]@variable[OU
Tput]...]]
    [WITH RECOMPILE]
    �����Ҫ��������������ij���ѡ���Լ�������ʹ�ô洢��̵�
Ҫ��,����ѡ��ĸ�Ϊ��ϸ��˵����ο��й��ֲᡣ
    ��[[[server.]database.]owner.]procedure_name:�洢��̵�
���֡�
    ��@parameter_name datatype[=default][OUTput]:��ʽ����(��
��)����ơ����͡�df ault�Ǹ����ȱʡֵ(��ѡ),OUTputָ������
��Ϊ�������(��ѡ)���β��Ǵ洢����е��Ա���,�����ж��,����
������@��ͷ,�30���ַ�
    ��SQL_statements:����洢��̹��ܵ�SQL��䡣
    ��@return_status:���ܴ洢��̷���״ֵ̬�ı�����
    ��[@parameter_name=]value:ʵ�ʲ���(ʵ��),@parameter_name
Ϊʵ�ε����(��ѡ)�����ij��ʵ����@parameter_name=value�ṩ,
��ô����ʵ��Ҳ��Ҫ������һ��ʽ�ṩ��
    ��[@parameter_name=]@varialbe[OUTput]:������@varialbe��
��ֵ��Ϊʵ�δ��ݸ��β�@parameter_name(��ѡ),������@varialb
e���������ܷ��صIJ���ֵ,��ѡ��OUTput����ȱ�١�

    �洢��̵Ľ�����ʹ��
    ���ǽ�ͨ������ӽ��н��ܡ�
    ������һ�������������ɵļ��ܹ��ʱ�RS-LS-GZ-JiNeng:
    create table RS_LS_GZ_JiNeng         /*���ܹ��ʱ�*/
    (GeRen_id char(4),                   /*���˴��� */
    RiQi smalldatetime,                  /*ִ������ */
    YuanYin_id char(1) null,             /*�䶯ԭ����� */
    JinE smallmoney)                     /*���ܹ��ʽ�� */
    �ñ�洢��ij��λԱ�����������ܹ��ʵ���ʷ������
    ��1.���Ҫ��ѯȫ��Ա���ļ��ܹ��ʱ䶯��ʷ,����Ƚ���һ��
�洢���p-RsGz-JiNeg -All:
    create procedure p_RsGz_JiNeng_All
    as
    select *
    from RS_LS_GZ_JiNeng
    order by GeRenid,RiQi
    Ȼ�������������ô洢���p_RsGz_JiNeng_All���в�ѯ:
    execute p_RsGz_JiNeng_All
    ����ֻ��ʾ��ѯ�������,�����롢�������,����򵥵�һ����
����̡�
    ��2.���Ҫ��ѯij�˼��ܹ��ʵı䶯��ʷ,�ɽ�����һ���洢��
��p_RsGz_JiNeng:
    create procedure p_RsGz_JiNeng
    @c_GeRenId char(4)
    as
    select *from RS_LS_GZ_JiNeng
    where GeRen_id=@c_GeRenId
    order by RiQi
    ֮�������������ô洢���p_Rs_Gz_JiNeng���в�ѯ:
    declare @GeRenId char(4)
    select @GeRenId="0135"  /*��Ҫ��ѯԱ���ĸ��˴���Ϊ"0135"
*/
    execute p_RsGz_JeNeng @c_GeRenId=@GeRenId
    �洢���p_RsGz_JiNeng�ж�����һ���β�@c_GeRenId,���ַ���
�������ڵ��øù�̵�������,�ȿ����þ����ֵҲ�����ñ�����
Ϊʵ�Ρ��ñ�����ʵ��(�籾��)ʱ,������del are������˵����ֵ
��ע�����,������ĵ��ù�������,@c_GeRenId=@GeRenId�е�@
 c_GeRenId�Ǵ洢���p_RsGz_JiNeng�е��β���,���������еı�
��,���Բ��ܽ�������d eclare���ı������С�
    ��3.���Ҫ���㵱�¹���,�ͱ���ӹ�����ʷ�в��Ա�����뵱
ǰ����һ�μ��ܹ��ʱ䶯�Ľ��:
    create procedure p_RsGz_JiNeng_Slt
    (@c_GeRenId char(4),@sm_JinE smallmoney output)
    as
    select @sm_JinE=JinE
    from RS_LS_GZ_JiNeng
    where RiQi=(select max(RiQi)
    from RS_LS_GZ_JiNeng
    where GeRenid=@c-GeRenId)/*�ҳ���ʷ��¼�о��뵱ǰ����
����*/
    ���ô洢���p_RsGz_JiNeng_Slt���в�ѯ:
    declare @GeRenId char(4),@JinE smallmoney
    select @GeRenid="0135"/*��Ҫ��ѯԱ���ĸ��˴���Ϊ"0135"*/
    select @JinE=0
    execute p_RsGz_JiNeng_slt @c_GeRenId=@GeRenId,@sm_JinE=@
JinE output
    ����,���� @JinE�����洢����β�@sm_JinE���صĽ��ڵ�
�ù�������,@sm_JiE = @JinE output�е�output����ʡ�ԡ�����,
����@JinE���ò����βδ��ص���ֵ��ʼ��Ϊ��(���ڳ�ֵ)��
    ��4.�鵽�˸��˴���Ϊ"0135"Ա���ļ��ܹ��ʾ���ʾ����ʷ��¼
,�鲻������ʾһ��������Ϣ��
    create procedure p_RsGz_JiNeng_Rtn
    @c_GeRenId char(4)
    as
    declare @ErrCode smallint
    select @ErrCode=0
    if exists(select* from RS-LS-GZ-JiNeng
      where GeRenid=@c-GeRenId)
      begin
        select *
        from RS_LS_GZ_JiNeng
        whrer GeRen_id=@c_GeRenId
        order by RiQi
        return @ErrCode
      end
    esle
      begin
        select @ErrCode=1
        return @ErrCode
      end
    ���ô洢���p_RsGz_JiNeng_Rtn:
    declare @GeRenId char(4),@RtnCode smallint
    select @GeRenId="0135"
    select @RtnCode=0
    execute @RtnCode=p_RsGz_JiNeng_Rtn @c_GeRenId=@GeRenId
    if @RtnCode=1
      print"No this one!"
    �洢���p_RsGz_JiNeng_Rtn������߷���һ���洢�ڱ���@ErrC
ode���ֵ,���ֵ����Ϊ״ֵ̬,��������߷�ӳ�洢���ִ�еij�
��״̬���ڱ�����,���鲻��ָ��Ա�����ܹ��ʵ��κμ�¼ʱ,����
Ϊ"���޴���",���س���״ֵ̬1������,���سɹ�״ֵ̬0��
    ���ù�̵��������ʹ�ñ���@RtnCode�洢���ص�״ֵ̬,һ
������洢���p_RsG_ JiNeng_Rtn�����˴����־(@RtnCode=1),��
��ʾһ����Ϣ"No this one!"��
    ��
    �����ĸ����Ӽ�Ҫ�����˴洢��̳��õļ�����ʽ,����������
���������Ե���ı����ɫ�Լ�ʹ���ϵ�����Ժͷ����ԡ�
    ��Ȼ���������ڵ��ô洢���ʱ������SQL���������ʵ�ֵ�,
��������ζ������Ψһ�ķ����������ڴ洢����е��ô洢���(��
��ν���Ƕ��)������ͺܳ�������,������Sybase��ݿ⿪��ϵͳ
(��PowerBuilder)�� script����е���Sybase�Ĵ洢���Ҳ�dz���
�顣


--
 ________ _____          _____        ______________  _____ 
 ___  __ \___(_)________ ___(_)       __  ___/___  /_ ___(_)
 __  /_/ /__  / ___  __ \__  /        _____ \ __  __ \__  / 
 _  ____/ _  /  __  /_/ /_  /         ____/ / _  / / /_  /  
 /_/      /_/   _  .___/ /_/          /____/  /_/ /_/ /_/   
                /_/                                         

�� ��Դ:���ϴ�С�ٺ���Ϣ����վ bbs.nju.edu.cn��[FROM: hsia.nju.edu.cn]
Technical Details
Message-ID: <3OOYLi$u10@bbs.nju.edu.cn>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: Chinese,GB
X-Google-Thread: fc86e,92246f1e0118cbb4,start
X-Google-Attributes: gidfc86e,public
From: pipishi.bbs@bbs.nju.edu.cn (���ܵ�Сʨ)
Subject: Sybase�洢��̵Ľ�����ʹ��
Date: 1998/05/07
Message-ID: <3OOYLi$u10@bbs.nju.edu.cn>
X-Deja-AN: 351560151
X-Filename: Programming/M.894547484.A
Organization: nju_bbs
Newsgroups: cn.bbs.comp.program