--觸發器學習
alter trigger 觸發器名 on 表1
for insert
asbegin
if (select count(1) from 表1)=0
print '未插入資料'
else
insert into 表2(字段 )select 對應字段 from inserted
end--儲存過程學習
(1)分頁
alter procedure 儲存過程名(
@pageindex int,
@pagesize int)as
declare @startrow int, @endrow int
set @startrow = (@pageindex - 1) * @pagesize +1
set @endrow = @startrow + @pagesize -1
select 欄位名稱 from (
select *, row_number() over (order by id asc) as number from 表名
) twhere t.number between @startrow and @endrow;
(2)從第幾個開始取資料到第幾個
alter proc [dbo].[pro_page]
@startindex int,
@endindex int
asselect count(*) from 表名;
select * from (
select row_number() over(order by id) as rowid, * from 表名
) temp
where temp.rowid between @startindex and @endindex
(3)顯示表中使用者最後一次運算元據
select a.*from test a
inner join (select username ,[time]=max(time)from test group by username)b
on a.username=b.username and a.time=b.time
MySQL使用觸發器實現刪除表時將資料轉移到歷史表
最近重新研究觸發器的時候,突然想到了乙個在工作中經常用到的場景,那就是有些時候我們需要對表裡的資料進行刪除,但是在刪除的時候,需要將被資料插入到歷史表中,想著用觸發器實現就比較方便了。例子中使用的表結構,被刪除表的test2的表結構和它一樣 建立備份表 create table test2 hist...
不允許插入 刪除某些表資料的觸發器
插入 use adventureworks gocreate trigger sales istore store after insert as begin set nocount on begin try 判斷是否插入記錄的customerid欄位是否已經在 sales individua 表中...
Oracle序列配合觸發器實現插入資料時自增
oracle不能像mysql sqlserver那樣設定主鍵自增 序列sequence 觸發器trigger 實現資料表tbl message中的主鍵的自增 現有表 create table tbl message id number primary key,note varchar2 200 no...