Två frågor.
1. Jag har en kolumn i tabellen tbl (fetmarkerad i kod) som heter id, den krockar med temptabellens kolumn id, går det att byta namn på temptabellens kolumn (id) ?
Eller hur gör man här?
Byta namn på kolumnen i tabellen tbl är uteslutet.
2. Går denna procedur att göra om till en funktion så att man bara skickar in sql-satsen?
I.s.f. hur?
CREATE PROCEDURE Paging
(
@num_rec_page int, @n_page int
)
AS
SET NOCOUNT ON
BEGIN
declare @max_rec as int
declare @min_rec as int
declare @num_tot_page as int
declare @num_tot_rec as int
set @max_rec = @n_page*@num_rec_page
set @min_rec = (@max_rec-@num_rec_page)+1
set @num_tot_page = 0
set @num_tot_rec = 0
If exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[#ret_tbl]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[#ret_tbl]
SELECT IDENTITY(int, 1,1) AS ID_Num, tmp_tbl.*
INTO #ret_tbl
FROM ([b]SELECT * From tbl[/b]) as tmp_tbl
select * from #ret_tbl WHERE ID_Num >= @min_rec AND ID_Num <= @max_rec
select @num_tot_rec = MAX(ID_Num) from #ret_tbl
set @num_tot_page = (@num_tot_rec/@num_rec_page) + 1
select @num_tot_page as NumTotPage
END
Visst, men trixet är att få med id-kolumen ifrån tabellen search1.
I värsta, värsta, mest eländigaste fall så får jag byta namn på kolumnen, men det suger fett, då en massa kod och en massa sp:s använder namnet "id" på den tabellen...