建表的範例指令碼,儲存過程中引數的命名

2021-09-05 19:20:50 字數 1344 閱讀 2246

表1. 基本資料庫物件命名

資料庫物件字首舉例

表(table)

字段(column)

檢視(view)

儲存過程(stored procedure)

觸發器(trigger)

索引(index)

主鍵(primary key)

外來鍵(foreign key)

check約束(check constraint)

unique約束

使用者定義資料型別(user-defined data type)

使用者定義函式(user-defined function)無無

vprtrix_

pk_fk_

ck_uq_

udtfn

student

title

vactivity

prdelorder

trorder_d

ix_customerid

pk_admin

fk_order_ordertype

ck_tablecolumn

uq_tablecolumn

udtphone

fnduedate

儲存過程中的入口引數,我建議與其對應的欄位名相同,這裡,假設要寫乙個更新northwind資料庫employees表的儲存過程(做了簡化),可以這麼寫:

create procedure premployeeupdatebyid

@employeeid       int,

@lastname     nvarchar(20),

@firstname    nvarchar(10)

asupdate employees set

lastname = @lastname,

firstname = @firstname

where

employeeid = @employeeid

if @@error <> 0 or @@rowcount = 0

raiserror 16001 『更新使用者失敗』

在這篇文章中,我首先提出了開發人員對資料庫物件命名不夠重視的問題,隨後列出了一張資料物件命名的簡表。

接著我按照 表、字段、主鍵、外來鍵、觸發器、儲存過程的順序,詳細講述了資料庫物件命名的規則。

其間,我還穿插著講述了在資料庫開發中常見的一些問題,包括建表時需要注意的問題,以及在管理儲存過程時可以採取的技巧。

希望這篇文章能給你帶來幫助。

******************************

儲存過程中IN 引數的使用

在sql語句中,我們有時會因批量刪除而用到in語句,如delete from table where field in 1,2,3 一般在儲存過程中我們會寫成delete from table where field in field 但現在出現乙個問題,field到底是什麼型別,如何去寫,我們得用...

自動建表的儲存過程

自動建表的儲存過程 最近做專案,需要每月自動建乙個月份表,於是找資料如何自動建表,原來用儲存過程可以做到自動建表 下面是我寫的例子 create proc dbo createmonthtable tablename varchar 30 as begin declare count int dec...

oracle儲存過程中如何使用陣列 附範例

原文 在pl sql中是沒有陣列 array 概念的。但是如果程式設計師想用array的話,就得變通一下,用type 和table of record來代替多維陣列,一樣挺好用的。emp type 就好象乙個table 中的一條record 一樣,裡面有id,name,gender等。emp typ...