mysql为四个表创建储存过程或者储存函数
mysql为四个表创建储存过程或者储存函数我自己写的代码,大神看看能就这个写储存过程吗?另外创建储存过程或者函数需要建立主外键联系吗?createdatabaseGYK;...
mysql为四个表创建储存过程或者储存函数我自己写的代码,大神看看能就这个写储存过程吗?另外创建储存过程或者函数需要建立主外键联系吗?
create database GYK;
USE GYK;
CREATE TABLE gy(
id char(11)PRIMARY KEY ,
name varchar(40),
sid char(11),
price tinyint
);
CREATE TABLE gk(
gid char(11) PRIMARY KEY,
name varchar(8),
address varchar(40),
yu tinyint
);
CREATE TABLE dd(
sid char(11) PRIMARY KEY ,
gid char(11),
date varchar(30)
);
CREATE TABLE sp(
sid char(11) ,
name varchar(40) PRIMARY KEY ,
shuliang tinyint
); 展开
create database GYK;
USE GYK;
CREATE TABLE gy(
id char(11)PRIMARY KEY ,
name varchar(40),
sid char(11),
price tinyint
);
CREATE TABLE gk(
gid char(11) PRIMARY KEY,
name varchar(8),
address varchar(40),
yu tinyint
);
CREATE TABLE dd(
sid char(11) PRIMARY KEY ,
gid char(11),
date varchar(30)
);
CREATE TABLE sp(
sid char(11) ,
name varchar(40) PRIMARY KEY ,
shuliang tinyint
); 展开
1个回答
展开全部
“另一个存储过程”的名字是sp1,没有参数,返回的结果集共3列,全部为int型,那么“存储过程”里添加一个与结果集列数相同的临时表或表变量用于接收“另一个存储过程”的结果集
如下
CREATE PROCEDURE sp2
AS
DECLARE @t table(a int,b int,c int)
INSERT INTO @t(a,b,c)
EXEC sp1
SELECT * FROM @t
使用SQLSERVER存储过程可以很大的提高程序运行速度,简化编程维护难度,现已得到广泛应用。
创建存储过程
和数据表一样,在使用之前需要创建存储过程,它的简明语法是:
引用:
Create PROC 存储过程名称
[参数列表(多个以“,”分隔)]
AS
SQL 语句
例:
引用:
Create PROC upGetUserName
@intUserId INT,
@ostrUserName NVARCHAR(20) OUTPUT -- 要输出的参数
AS
BEGIN
-- 将uName的值赋给 @ostrUserName 变量,即要输出的参数
Select @ostrUserName=uName FROM uUser Where uId=@intUserId
END
其中 Create PROC 语句(完整语句为Create PROCEDURE)的意思就是告诉SQL SERVER,现在需要建立一个存储过程,upGetUserName 就是存储过程名称,@intUserId 和 @ostrUserName 分别是该存储过程的两个参数,注意,在SQL SERVER中,所有用户定义的变量都以“@”开头,OUTPUT关键字表示这个参数是用来输出的,AS之后就是存储过程内容了。只要将以上代码在“查询分析器”里执行一次,SQL SERVER就会在当前数据库中创建一个名为“upGetUserName”的存储过程。你可以打开“企业管理器”,选择当前操作的数据库,然后在左边的树型列表中选择“存储过程”,此时就可以在右边的列表中看到你刚刚创建的存储过程了(如果没有,刷新一下即可)。
如下
CREATE PROCEDURE sp2
AS
DECLARE @t table(a int,b int,c int)
INSERT INTO @t(a,b,c)
EXEC sp1
SELECT * FROM @t
使用SQLSERVER存储过程可以很大的提高程序运行速度,简化编程维护难度,现已得到广泛应用。
创建存储过程
和数据表一样,在使用之前需要创建存储过程,它的简明语法是:
引用:
Create PROC 存储过程名称
[参数列表(多个以“,”分隔)]
AS
SQL 语句
例:
引用:
Create PROC upGetUserName
@intUserId INT,
@ostrUserName NVARCHAR(20) OUTPUT -- 要输出的参数
AS
BEGIN
-- 将uName的值赋给 @ostrUserName 变量,即要输出的参数
Select @ostrUserName=uName FROM uUser Where uId=@intUserId
END
其中 Create PROC 语句(完整语句为Create PROCEDURE)的意思就是告诉SQL SERVER,现在需要建立一个存储过程,upGetUserName 就是存储过程名称,@intUserId 和 @ostrUserName 分别是该存储过程的两个参数,注意,在SQL SERVER中,所有用户定义的变量都以“@”开头,OUTPUT关键字表示这个参数是用来输出的,AS之后就是存储过程内容了。只要将以上代码在“查询分析器”里执行一次,SQL SERVER就会在当前数据库中创建一个名为“upGetUserName”的存储过程。你可以打开“企业管理器”,选择当前操作的数据库,然后在左边的树型列表中选择“存储过程”,此时就可以在右边的列表中看到你刚刚创建的存储过程了(如果没有,刷新一下即可)。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询