導航:首頁 > 數據處理 > sql資料庫存儲過程怎麼寫

sql資料庫存儲過程怎麼寫

發布時間:2022-12-28 01:00:04

1. MySQL裡面sql語句調用存儲過程,該如何寫

這樣:

CREATEPROCEDUREsp_add(a int, b int,outc int)

begin

set c=a+ b;

end;

調用過程:

call sp_add (1,2,@a);

select @a;

(1)sql資料庫存儲過程怎麼寫擴展閱讀:

注意事項

存儲過程(stored procere)是一組為了完成特定功能的SQL語句集合,經編譯後存儲在伺服器端的資料庫中,利用存儲過程可以加速SQL語句的執行。

存儲過程分為系統存儲過程和自定義存儲過程。

系統存儲過程在master資料庫中,但是在其他的資料庫中可以直接調用,並且在調用時不必在存儲過程前加上資料庫名,因為在創建一個新資料庫時,系統存儲過程在新的資料庫中會自動創建。

自定義存儲過程,由用戶創建並能完成某一特定功能的存儲過程,存儲過程既可以有參數又有返回值,但是它與函數不同,存儲過程的返回值只是指明執行是否成功,並不能像函數那樣被直接調用,只能利用execute來執行存儲過程。

創建存儲過程

SQL Server創建存儲過程:

create procere 過程名

@parameter 參數類型

@parameter 參數類型

。。。

as

begin

end

執行存儲過程:execute 過程名

2. sql資料庫 編寫存儲過程

----創建存儲過程GetCurrentDate
create proc GetCurrentDate
as
DECLARE @Date VARCHAR(20)
SET @Date=''
SELECT @Date=CONVERT(VARCHAR(4),DATEPART(YEAR,GETDATE()))
+'年'+CONVERT(VARCHAR(2),DATEPART(MONTH,GETDATE()))
+'月'+CONVERT(VARCHAR(2),DATEPART(DAY,GETDATE()))
+'日'
SELECT @Date AS '當前日期'

----執行存儲過程:
exec GetCurrentDate

運行顯示:
2011年12月7日

3. SQL Server資料庫的存儲過程

分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:

面試時被問:「請講一下SQL Server資料庫的存儲過程」

資料庫方面接觸的比較淺,請高手解釋一下「SQL Server資料庫的存儲過程」這個問題該怎麼回答?非常感謝!

解析:

存儲過程(Stored Procere)是一組為了完成特定功能的SQL 語句集,經編譯後存儲在資料庫。中用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。

在SQL Server 的系列版本中存儲過程分為兩類:系統提供的存儲過程和用戶自定義存儲過程。系統過程主要存儲在master 資料庫中並以sp_為前綴,並且系統存儲過程主要是從系統表中獲取信息,從而為系統管理員管理SQL Server 提供支持。通過系統存儲過程,MS SQL Server 中的許多管理性或信息性的活動(如了解資料庫對象、資料庫信息)都可以被順利有效地完成。盡管這些系統存儲過程被放在master 資料庫中,但是仍可以在其它資料庫中對其進行調用,在調用時不必在存儲過程名前加上資料庫名。而且當創建一個新資料庫時,一些系統存儲過程會在新資料庫中被自動創建。用戶自定義存儲過程是由用戶創建並能完成某一特定功能(如查詢用戶所需數據信息)的存儲過程。

4. sql server存儲過程怎麼寫

創建過程
CREATE PROCEDURE p_1
AS
insert into ta ( col_max,col_min,col_avg)
select max(col1),min(col1),sum(col1)/count(1) from tb where id='Tetminal1 ;
GO
--------------------------------------------------------------------------------------------------------------------
創建作業,定時執行過程

1:在「對象資源管理器」中,連接到 SQL Server 資料庫引擎實例,再展開該實例。
2.展開「SQL Server 代理」,創建一個新作業或右鍵單擊一個現有作業,再單擊「屬性」。
3.在「作業屬性」對話框中,單擊「步驟」頁,再單擊「新建」。
4.在「新建作業步驟」對話框中,鍵入作業的「步驟名稱」。

5. sql 存儲過程語句編寫

要到達你的要求,在存儲過程中必須使用動態SQL語句。


一個簡化的例子:

createprocereMyDynamicSQL
@tblwherenvarchar(200)--a==aora==xxx
as
begin
declare@sqlnvarchar(max)
--動態拼接sql語句
set@sql=N'select*from[表一]where'+@tblwhere
--執行
executesp_executesql@sql
end

6. SQL Server的存儲過程怎麼寫

SQL server中如何存儲:

首先准備數據,測試存儲過程

use ssqadm;

創建測試books表

create table books_test ( book_id int identity(1,1) primary key,

book_name varchar(20),book_price float,book_auth varchar(10));

插入測試數據

insert into books_test (book_name,book_price,book_auth)values

('論語',25.6,'孔子'),

('天龍八部',25.6,'金庸'),

('雪山飛狐',32.7,'金庸'),

('平凡的世界',35.8,'路遙'),

('史記',54.8,'司馬遷');

select * from books_test;*/

創建無參存儲過程

if (exists (select * from sys.objects where name = 'getAllBooks'))

drop proc getAllBooks

go

create procere getAllBooks

as

begin

select * from books_test;

調用,執行存儲過程

exec getAllBooks;

end

go

修改存儲過程

alter procere getallbooks

as

select book_name from books_test;

修改存儲過程的名稱

sp_rename getallbooks,proc_get_allbooks;

go

exec proc_get_allbooks;

go

創建帶參數的存儲過程

use ssqadm

go

if (exists (select * from sys.objects where name = 'searchbooks'))

drop proc searchbooks

exec searchbooks

執行存儲searchbooks得到如下結果:

go

create procere searchbooks (@bookid int)--括弧裡面是

as

begin

declare @book_id int;定義一個標量變數,只是保證存儲過程的完整性,在本存儲是多此一舉的。

set @book_id = @bookid;

select* from books_test where book_id = @book_id;

end;

go

-- exec searchbooks

執行存儲searchbooks得到如下結果:

創建帶兩個參數的存儲過程

use ssqadm

go

if (exists (select * from sys.objects where name = 'book_test2'))

drop proc book_test2

exec book_test2

執行存儲book_test2得到如下結果:

go

create procere book_test2

(@bookid int,@bookname varchar(20))括弧裡面是

as

begin

declare @book_id int;

定義一個標量變數,只是保證存儲過程的完整性,在本存儲是多此一舉的。

declare @book_name varchar(20);

set @book_id = @bookid;

set @book_name = @bookname;

select* from books_test where book_id =

@book_id and book_name = @book_name;

end;

go

exec book_test2

(6)sql資料庫存儲過程怎麼寫擴展閱讀:

SQL Server中查詢存儲命令子句:

USE [SSQADM]

Use 是跳轉到哪個資料庫,對這個資料庫進行操作。

GO

GO向 SQL Server 實用工具發出一批 Transact-SQL 語句結束的信號,相當於提交上面的SQL語句。

GO是把t-sql語句分批次執行

(一步成功了才會執行下一步,即一步一個GO)

/****** Object: StoredProcere [dbo].[PROC_four_five_hr]

Script Date: 07/30/2018 13:44:55 ******/

SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ON

7. 用sql寫一個簡單的存儲過程語句

常用語句對照(Access資料庫):文本型:text
長整型:integer
雙精度型:float
貨幣型:money
日期型:date
備注型:memo
OLE型:general
1.查詢數據
例:查詢zt_data表中的zt_id欄位,zt_name欄位
select [zt_id],[zt_name] from zt_data

2.查詢指定條件的數據
例:查詢zt_data表中zt_id欄位小於100的數據的zt_id欄位,zt_name欄位
select [zt_id],[zt_name] from zt_data where [zt_id] < 100
例:查詢zt_data表中前100條數據的zt_id欄位,zt_name欄位
select top 100 [zt_id],[zt_name] from zt_data

3.按照一定排序查詢
例:按照zt_id順序查詢zt_data表中的zt_id欄位,zt_name欄位
select [zt_id],[zt_name] from zt_data order by [zt_id] asc
例:按照zt_id倒序查詢zt_data表中的zt_id欄位,zt_name欄位
select [zt_id],[zt_name] from zt_data order by [zt_id] desc

4.添加數據
例:在zt_data表中增加一條記錄,其中zt_name欄位值為名稱1,zt_enname欄位值為名稱2
insert into zt_data([zt_name],[zt_enname])values('名稱1','名稱2')

5.刪除數據
例:刪除zt_data表中zt_id的值為1的數據
delete from zt_data where [zt_id]=1

6.修改數據
例:修改zt_data中zt_id為1的數據的zt_name欄位值為 新名稱
update zt_data set [zt_name]='新名稱' where [zt_id]=1

8. 如何編寫資料庫存儲過程

存儲過程代碼參考如下:
create
or
replace
procere
bak_pay_list_xxx(local_net
in
varchar2,bak_month
in
varchar2,ret
out
varchar2)
is
ls_sql
varchar2(1024);
ls_sql_del
varchar2(1024);
begin
...
end
bak_pay_list_xxx;

9. 資料庫怎麼編寫存儲過程

SQL Server的語法:

create procere proc_name

(@para1 int)

as

sql-statement;

Mysql的語法:

create procere proc_name

(para1 int)

sql-statement;

上面的para1是參數,如果不需要可以省略括弧里的內容

sql-statement是你存儲過程要執行的語句,

如果還有什麼疑問可以說出來

10. SQL的存儲過程怎麼寫

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE <Procere_Name, sysname, ProcereName> --這里是創建存儲過程
-- Add the parameters for the stored procere here --這里是定義參數
<@Param1, sysname, @p1> <Datatype_For_Param1, , int> = <Default_Value_For_Param1, , 0>,
<@Param2, sysname, @p2> <Datatype_For_Param2, , int> = <Default_Value_For_Param2, , 0>
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

-- Insert statements for procere here --在這里寫sql語句
SELECT <@Param1, sysname, @p1>, <@Param2, sysname, @p2>
END
GO

就這么簡單,希望你能看懂

閱讀全文

與sql資料庫存儲過程怎麼寫相關的資料

熱點內容
什麼方法躲過大數據 瀏覽:53
react的props有哪些數據 瀏覽:827
蘋果快充數據線有什麼區別 瀏覽:501
紅棗加工有哪些技術 瀏覽:87
小程序怎麼加流量 瀏覽:570
怎麼提取程序代碼 瀏覽:25
甘南咖啡技術培訓哪裡找 瀏覽:306
大學生做代理有什麼現象 瀏覽:699
微信哪裡看房產信息 瀏覽:217
質量技術監督局操作證如何查詢 瀏覽:872
怎麼往產品中加水 瀏覽:74
瀏覽器中怎麼沒有華為應用市場 瀏覽:31
為什麼改裝輪轂沒有原廠數據 瀏覽:833
淘寶接收信息的旺旺是哪個 瀏覽:235
全國公安dna資料庫在哪裡弄 瀏覽:576
什麼是醫學中的適宜技術 瀏覽:311
cf如何交易cf點券 瀏覽:488
農行如何篩選交易明細 瀏覽:52
創業板市場什麼交易制度 瀏覽:631
fx3u程序編程第一步該寫什麼 瀏覽:17