三、删除数据的存储过程
------------------存储过程--------------------------
drop table 学生基本信息表
create table 学生基本信息表
(
StuID int primary key,
StuName varchar(10),
StuAddress varchar(20)
)
insert into 学生基本信息表 values(1,'三毛','wuhan')
insert into 学生基本信息表 values(2,'三毛','wuhan')
create table 学生成绩表
(
StuID int,
Chinese int,
PyhSics int
foreign key(StuID) references 学生基本信息表(StuID)
on delete cascade
on update cascade
)
insert into 学生成绩表 values(1,99,100)
insert into 学生成绩表 values(2,99,100)
--创建存储过程
create procedure delePro
@StuID int
as
delete from 学生基本信息表 where StuID=@StuID
--创建完毕
exec delePro 1 --执行存储过程
--创建存储过程
create procedure selePro
as
select * from 学生基本信息表
--创建完毕
exec selePro --执行存储过程
------------------在JAVA中调用----------------
import java.sql.*;
public class ProcedureTest
{
public static void main(String args[]) throws Exception
{
//加载驱动
DriverManager.registerDriver(new sun.jdbc.odbc.JdbcOdbcDriver());
//获得连接
Connection conn=DriverManager.getConnection("jdbc:odbc:mydata","sa","");
//创建存储过程的对象
CallableStatement c=conn.divpareCall("{call delePro(?)}");
c.setInt(1,1);
c.execute();
c=conn.divpareCall("{call selePro}");
ResultSet rs=c.executeQuery();
while(rs.next())
{
String Stu=rs.getString("StuID");
String name=rs.getString("StuName");
String add=rs.getString("StuAddress");
System.out.println ("学号:"+" "+"姓名:"+" "+"地址");
System.out.println (Stu+" "+name+" "+add);
}
c.close();
}
}