存儲過程select賦值
『壹』 存儲過程中對變數的SELECT賦值返回數據集嗎對輸出參數賦值呢
存儲談山過程不是用來返回數含橡中據的.應該用函數.如表值如襲類自定義函數:
CREATE FUNCTION dbo.FN_search_gamer(@g_id int)
RETURNS TABLE
AS
RETURN (SELECT g_id,g_name,g_jf FROM gamer WHERE g_id=@g_id)
使用 select * from dbo.fn_search_gamer(1)
存儲過程看作命令比較合適.返回數據由function完成
『貳』 MYsql存儲過程裡面有select賦值語句時怎麼返回只最後結果集
如果對select 返回的結果行都需要拆擾處理,使用游標。
如果只想取得返回多行中旅姿旦的一行,冊森使用limit。
『叄』 Sql server 存儲過程中怎麼將變數賦值
/*
Sql server 存儲過程中怎麼將變數賦值
*/
--SQL賦值語句
DECLARE @test1 INT
SELECT @test1 = 111
SET @test1 = 222
--SQL函數賦值,假定count()是自定義函數
DECLARE @test2 INT
SELECT @test2 = COUNT(*) FROM sys.sysobjects
--SQL存儲過程賦值,直接傳參處理(類似C語言中的指針嗎)
IF OBJECT_ID('sp_test') IS NOT NULL DROP PROCEDURE sp_test
GO
CREATE PROCEDURE sp_test(@test INT OUTPUT)
AS
BEGIN
SELECT @test = 999
END
GO
DECLARE @test3 INT
EXEC sp_test @test3 OUTPUT
SELECT @test3
DROP PROCEDURE sp_test
GO
『肆』 關於mysql中存儲過程select into無法賦值詭異的事情,請大神求教,這是怎麼回事
方法是沒有問題,可以在insert into 前面加一條select userName ; 用於檢查是否正常獲取到值。
『伍』 SQL存儲過程中怎樣給變數賦值
exec 是執行存儲過程的命令,不能作為存儲過程名
而且你這個似乎是希望用變數轉換成SQL命令,不是這樣用法的
『陸』 sql server 2000 如何把select的值賦給一個變數
直接使用 = 號可以賦值,如圖把a列的值賦給變數 @name
需要注意:
1、sql中 使用 declare 聲明 變數,變數要以@開頭。
2、如果是直接賦值使用set ,如: set @name = 'name'
3、select 子句中賦值,需要注意結果集,如第一個例子中,
select @name = a from a (去除了 id=2的篩選),那麼結果集為多條記錄
那麼@name 接收的值是結果集最後一條記錄中 a列的值。
『柒』 創建 存儲過程 向變數賦值的 SELECT 語句不能與數據檢索操作結合使用 求解決!!!
SELECT 語句是不能同時使用賦值和使用數據檢索的,只能拆開
『捌』 如何獲取存儲過程中select查詢的欄位的值
CREATE PROCEDURE族兆AdminLogin
@test1 nvarchar(50) output,
@test1 nvarchar(50) output, --這里還是@test1?答者
@id intAS
BEGIN
SET NOCOUNT ON;
SELECT test1,test2 from td_Test where id=@idif(@@RowCount<1)
begin----1
set @test1='兆舉租no'
set @test2='no'
end-----1elsebegin----2@test1=test1@test1=test2 ---------這里@test1=test2??end----2END
GO
『玖』 mssql 的 存儲過程 變數賦值問題
自動生成的id 一般是增量的,所以用提取最大值的方法取的最新ID,
設表TABLE0有欄位ID,FIELD1,FIELD2,FIELD3四個欄位,這樣:
DECLARE @NEWID INT--聲明新ID變數
INSERT INTO TABLE0(FIELD1,FIELD2,FIELD3) SELECT FIELD1 FIELD2 FIELD3 FROM TABLE1 WHERE FIELD1='XXXX' .......--插入語句
IF @@ROWCOUNT>0 --如果插入了新行
SET @NEWID=(SELECT MAX(ID) FROM TABLENAME) --給新ID賦值
select @newid as 新ID --使用該變數
『拾』 存儲過程中有兩個select 語句,根據第一個select語句得到的結果集用於第二個select語句的條件控制,
可雹跡肆以用游標州坦的源轎方法:
declare cur_c cursor
for
select column1 from table1
open cur_c
declare @str varchar(max)
fetch next from cur_c into @str
while(@@fetch_status=0)
begin
select * from table2
where table2.column=@str
end
close cur_c
deallocate cur_c