求助SQL-SEVER 2000存储过程初级问题

来源:百度知道 编辑:UC知道 时间:2024/05/15 05:42:21
语法会了,但碰到实际练习的时候发现了问题。
总的来说,就是查询分析器下,不知道如何放入存储过程
举如下例子说明
例如现在有一个数据库,名叫AAA ,然后里面有一个表stu(sno,sname,sex)
然后有一个SQL查询是这样:
select sno,sname
from stu
然后要把它做成存储过程就是:
create procedure pro_1
as
select sno,sname
from stu
然后问题就是我运行以后发现AAA里的存储过程里没有加入新的这个过程,但再运行这段代码就提示,已经有这个对象了,然后我就execute pro_1调用它,它会说stu不可用什么的。
后来我直接用企业管理器里到AAA下面新建一个这样的存储过程,比如叫它pro1,然后再到查询分析器,双击执行后发现系统用的调用语句是execute AAA.dbo.pro1这样。后来我再查询里这样用也能调用了
只是创建还是不行。
请问我直接创建后,东西到底放到哪里去了啊?
机器是如何判断要创建到哪个数据库的?
因为说CREATE是一定要放第一句的,所以又不能放use AAA之类的语句

1、你刚入完存储过程的时候,查询分析器是不会自动刷新对象浏览器的。
你如果想在入好存储过程之后马上就在对象浏览器中找到该过程,请在对象浏览器上点鼠标右键--刷新,之后改过程就出来了。

2、在你调用你的存储过程的时候,请你先在菜单栏中选好对应存储过程的数据库后再在查询分析器中输入调用该过程语句,或者你直接写类似的语句也行:
use db --这里的db指的是你建存储过程所用到的数据库
go
execute AAA.dbo.pro1
go

create procedure pro_1
as
BEGIN
use AAA
select sno,sname
from stu
END
GO

create procedure pro_1 --这里 create是创建存储过程 你已经执行创建了

create procedure pro_1
as
begin
select sno,sname
from [AAA].[dbo].[stu]
end
如果还想在执行 就把它该成alter 这个是修改
已经创建的存储过程不能在创建了 只能修改或删除(drop)

一、先在“取消执行查询”按钮的右边选择目标数据库 ,
你创建的东西,也就是该数据库里了。

二、execute AAA.dbo.pro1
你写成这样也行的:
use AAA
execute pro1
三、你创建了一个后,再创建相同名字的当然不行了。