精华内容
下载资源
问答
  • SQL语句创建存储过程

    2010-06-08 22:09:08
    创建数据库的存储过程 要求: 实现增,删,查,改!!
  • JDBC基础-用SQL语句创建存储过程本节例示一个不带参数的简单存储过程。多数存储过程的功能比本例复杂多了,但这里主要说明存储过程的一些基本要点。如前面所述,不同DBMS定义存储过程 的语法是不同的。例如,有些...
    JDBC基础-用SQL语句创建存储过程
    本节例示一个不带参数的简单存储过程。多数存储过程的功能比本例复杂多了,但这里主要说明存储过程的一些基本要点。如前面所述,不同DBMS定义存储过程 的语法是不同的。例如,有些DBMS使用begin . . . end或其他关键字指明存储过程定义的开始和结束。在有些DBMS中,下面的SQL语句可创建一个存储过程:
    create procedure SHOW_SUPPLIERS
    as
    select SUPPLIERS.SUP_NAME, COFFEES.COF_NAME
    from SUPPLIERS, COFFEES
    where SUPPLIERS.SUP_ID = COFFEES.SUP_ID
    order by SUP_NAME

    下面的代码将SQL语句放到一个字符串中,然后赋给变量createProcedure以备后用:

    String createProcedure = "create procedure SHOW_SUPPLIERS " +
    "as " +
    "select SUPPLIERS.SUP_NAME, COFFEES.COF_NAME " +
    "from SUPPLIERS, COFFEES " +
    "where SUPPLIERS.SUP_ID = COFFEES.SUP_ID " +
    "order by SUP_NAME";

    下面的代码段使用Connection对象con来创建Statement对象,用于把创建存储过程的SQL语句发送给数据库:

    Statement stmt = con.createStatement();
    stmt.executeUpdate(createProcedure);

    存储过程SHOW_SUPPLIERS将作为一个可调用的数据库对象在数据库中编译并存储,调用时就像调用其他方法一样。

    从JDBC调用存储过程

    JDBC允许在用Java编写的程序中调用存储过程。第一步 是创建一个CallableStatement对象。就像Statement和PreparedStatement对象一样,利用一个打开的 Connection对象即可完成创建。CallableStatement对象包含了存储过程的一个调用;但它不包含存储过程本身。下面的第一行代码使 用连接con创建了存储过程SHOW_SUPPLIERS的一个调用。花括号内的那部分就是存储过程的转义语法。当驱动程序碰到“{call SHOW_SUPPLIERS}”时,它将把这个转义语法转换成数据库使用的本地SQL,以调用名为SHOW_SUPPLIERS的存储过程。


    CallableStatement cs = con.prepareCall("{call SHOW_SUPPLIERS}");
    ResultSet rs = cs.executeQuery();

    执行后结果集rs的内容如下:

    SUP_NAME			COF_NAME
    ---------------- -----------------------
    Acme, Inc. Colombian
    Acme, Inc. Colombian_Decaf
    Superior Coffee French_Roast
    Superior Coffee French_Roast_Decaf
    The High Ground Espresso

    注意,用于执行cs的方法是executeQuery,因为 cs调用的存储过程包含一个查询,执行后产生一个结果集。如果存储过程包含一条更新或一条DLL语句,那就要使用executeUpdate方法。但有时 一个存储过程包含多条SQL语句,因而它产生的不只是一个结果集、不只是一个更新计数或产生一些结果集和更新计数的组合。这样就有多个结果集,这时就应该 使用execute方法来执行CallableStatement。

    CallableStatement类是 PreparedStatement的子类,因此CallableStatement对象可与PreparedStatement对象一样带有输入参数。 此外,CallableStatement对象还可带输出参数或输入/输出参数。INOUT参数和execute方法很少使用。要获取更详细信息,请参考 “使用Java进行JDBC数据库访问”。

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-132041/,如需转载,请注明出处,否则将追究法律责任。

    转载于:http://blog.itpub.net/374079/viewspace-132041/

    展开全文
  • 展开全部可以在客户端里面直接写 比如用 navicat 就写:delimiter$$;createprocedurelucia_proc16(countint)beginDECLAREname_procVARCHAR(20)CHARACTERSETutf8;DECLAREsex_procVARCHAR(4)CHARACTERSETutf8;...

    展开全部

    可以在客户端里面直接写 比如用 navicat 就写:delimiter $$;

    create procedure lucia_proc16(count int)

    begin

    DECLARE name_proc VARCHAR(20) CHARACTER SET utf8;

    DECLARE sex_proc VARCHAR(4) CHARACTER SET utf8;

    DECLARE age_proc INT(10);

    DECLARE class_proc VARCHAR(20) CHARACTER SET utf8;

    DECLARE Addr_proc VARCHAR(50) CHARACTER SET utf8;

    DECLARE i INT;

    set i = 1;

    set sex_proc = '女';

    set age_proc = 20;

    set class_proc = '山治班';

    set Addr_proc = '北京市朝阳区';

    while i

    set name_proc = CONCAT('露西亚',i);

    insert into students(Name,Sex,age,class,Addr)values(name_proc,sex_proc,age_proc,class_proc,Addr_proc);

    set i = i+1;

    end while;

    end

    $$;

    delimiter;

    call lucia_proc16(500);

    fa8c5f214da3872c20cb229caf6c23dd.png

    这个就是一个循环插32313133353236313431303231363533e58685e5aeb931333361313961入 500 条记录的 sp 效果如下:

    74cbfd105debc2dbc6e30edc56536fe3.png

    展开全文
  • 在SQLyog上使用SQL语句创建存储过程

    千次阅读 2018-11-29 13:46:23
    首先来写一条简单的创建存储过程语句,将教师表中中符合条件的教师数量进行统计返回到num中,代码如下: CREATE PROCEDURE teacherSum(IN sex varchar(4), IN depart varchar(10), OUT num INT) BEGIN SELECT ...

    首先来写一条简单的创建存储过程的语句,将教师表中中符合条件的教师数量进行统计返回到num中,代码如下:
    CREATE PROCEDURE teacherSum(IN sex varchar(4), IN depart varchar(10), OUT num INT)
    BEGIN
    SELECT COUNT(0) INTO num FROM teachers t WHERE t.SEX = sex and t.depart = depart;
    END;
    Navicat中运行
    在Navicat中我们会发现这段代码运行没有问题,但是在SQLyog中,就会报错,这是需要将代码改为,如图:
    在这里插入图片描述
    这样就可以了,不需要通过界面去手动点击创建。

    展开全文
  • SQL语句创建存储过程,并执行

    万次阅读 2015-12-29 17:21:00
    创建一个存储过程 里面有个输出参数output create proc multi @num1 int, @num2 int=10 output --output的功能类似于C#中的out修饰参数 as set @num2=@num2*@num1 print @num2 二.执行存储过程 exec multi 5,5...

    一.创建一个存储过程

    里面有个输出参数output

    create proc multi
    @num1 int,
    @num2 int=10 output     --output的功能类似于C#中的out修饰参数
    as
    set @num2=@num2*@num1
    print @num2

    二.执行存储过程

    exec multi 5,5
    这时输出:25

    忽略了输出参数的默认值10


    exec multi 5
    这时输出:50

    输出参数的默认值10起作用


    展开全文
  • 存储过程如下: --Class插入语句 create proc InsertClass  @ClassName varchar(50),  @GradeID int as  insert into Class(ClassName,GradeID) values (@ClassName,@GradeID) select @@identity ...
  • 具有更好的性能存储过程是预编译的,只在创建时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编译一次,因此使用存储过程可以提高数据库执行速度。2.功能实现更加灵活存储过程中...
  • 使用Java代码/SQL语句调用存储过程并接收存储过程返回值创建存储过程SQL运行存储过程Java代码调用存储过程,接收返回值数据连接JAVA调用数据存储过程测试结果 创建存储过程 CREATE PROCEDURE add_pro (IN a1 ...
  • sql语句创建库 表 视图与存储过程sql语句创建库 表 视图与存储过程
  • 创建一个名为 Query_student 的存储过程,该存储过程的功能是根据学号查询学生表中某一学生的学号、姓名、性别及出生日期。 create proc Query_student @snum varchar(10) as select snum,sname,ssex,2020-sage as ...
  • SQL: 创建存储过程

    2020-02-23 10:39:34
    存储过程就是一条或多条 SQL 语句的集合,可视为批文件,...可使用CREATE PROCEDURE语句创建存储过程: 语法格式如下: CREATE PROCEDURE <过程名> ( [过程参数[,…] ] ) <过程体> [过程参数[,…] ] 格...
  • 自动执行SQL语句&创建标准的Sql 存储过程
  • 1.创建存储过程的基本语法模板: if (exists (select * from sys.objects where name = 'pro_name')) drop proc pro_name go create proc pro_name @param_name param_type [=default_value] as begin sql语句 ...
  • 存储过程创建,数据库的创建,表的创建,视图的创建,是很好的学习sql的资料,只要修改一下相应的名称就可以创建自己的存储过程,数据库,表,视图等.是练习的好资料
  • /*以下是有关安全控制的系统存储过程SQL 语句,详细语法查阅《联机丛书》相关内容*/--创建新的 SQL Server 登录,使用户得以连接使用 SQL Server 身份验证的 SQL Server。EXEC sp_addlogin @loginame = '', @...
  • Oracle之创建存储过程SQL语句

    千次阅读 2020-05-19 17:23:26
    1、创建存储过程。 create or replace procedure myprocedure(sid in number) as exam number; begin select * from score where sid=score.userid; dbms_output.put_line(exam); if exam>60 then dbms_o
  • 存储过程(stored procedure)是一组为了完成特定功能的SQL语句集合,经编译后存储在服务器端的数据库中,利用存储过程可以加速SQL语句的执行。 自定义存储过程,由用户创建并能完成某一特定功能的存储过程存储过程...
  • (文章中的sql语句基于sql server) 目录 存储过程: 1.CREATE PROCEDURE语句 EXEC语句执行一个已定义的存储过程 【强化练习】 事务: L1.事务处理 1.开始事务 2.结束事务 3.撤销事务 4.回滚事务...
  • SQL 语句存储过程

    2012-04-18 17:33:43
    里面包括动态创建数据库,动态查询,登录存储过程等,这些SQL语句都是动态应用的,不需要在使用Use指令,在一个数据库,就可以操作所有数据库
  • 语句查找存储过程的内容结果查出来是空的,换了DBA角色也不行,最后我把text换成*,却查出来了,郁闷。。。。。求解 还有一个问题:我创建的包和包体在右边的packages的文件树形结构下的图标上面都有一个红色的叉号...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,899
精华内容 3,159
关键字:

sql语句创建存储过程