Fordelaktig.no
Webutvikler kurs ASP.NET, C#, CSS mm.

WebRessurs.no - Webprogrammering og ressurs innen ASP, ASP.NET, PHP, SQL, HTML, CSS, Javascript, XML, C#, VB, Flash  mm.

Brukernavn: 
Passord:

Registrèr deg Glemt passord?
Logg deg inn




  ASP.net (199)
  ASP 3.0 (111)
  PHP (30)
  HTML (66)
  SQL (89)
  CSS (46)
  XML (7)
  JavaScript (78)
  Diverse kode (13)


  Programmering (22)
  System og drift (15)
  Trafikk og inntekt (11)
  Guider og tips (22)
  Nyttig lesestoff (23)
  Web forum (603)
  Link galleri (566)


  ASP.NET kurs(5)
  CSS kurs (2)
  JQuery kurs (2)


  Øk trafikken (8)
  Facebook App. (4)
  Microsoft CEO (6)


  Server & web
  Internett & epost
  Systemverktøy
  Sikkerhet
  Fildeling
  Lyd & media
  Diverse software


  Domenesalg
  Metagenerator
  Websikre farger
  Gratis epost
  WebMail


  Bli medlem!
  Siste innlegg
  Gjestebok
  Tips en venn
  Kontakt oss
  Forsiden




Kode Artikler
Linker


Mål internetthastigheten din.


Avansert Stored Procedure; Dynamisk input og relasjoner

av Øyvind A. Isaksen
 
Denne Stored Procedure er meget kraftfull. Den har dynamsik input av sorteringsfelter, noe som gjør at man kan sende inn i SP'en hvilken kolonne det skal sorteres etter, og om det skal sorteres med DESC eller ASC (stigende eller synkende). Slik kan man bestemme selve sorteringen i ASP.NET koden, og sende det inn i Stored Procedure'n. Måten dette gjøres på er å lage en Stored Procedure som Executes i SQL Server!

Koden viser også hvordan du kan la være å vise info fra en tabell (tblProject) avhengig av om en annen tabell (tblStatus) oppfyller et kriterie (en verdi). I dette eksepelet viser man ikke info fra tblProject hvis statusID i tblStatus ikke er "0".

CREATE PROCEDURE spProjects
(
@custID smallint,
@orderbyclause varchar(100)
)
AS

declare @SQLstatement varchar(1024)

SELECT @SQLstatement = "select projectID,title,ingress,deadlinedate, " +
"(select content from tblStatus where tblProject.statusID = tblStatus.statusID) as status, " +
"(select complete from tblStatus where tblProject.statusID = tblStatus.statusID) as complete, " +
"(select company from tblCompany where tblProject.companyID = tblCompany.companyID) as company " +
"from tblProject where active = 1 AND statusID IN (SELECT statusID FROM tblStatus WHERE complete='0') and custID = '" + cast(@custID as varchar) + "' order by " + cast(@orderbyclause as varchar)

EXEC(@SQLstatement)
GO


--------------------------------------
Slik binder man dette til en datagrid
--------------------------------------

Private Sub bindProjects()
Dim sortCommand As String

'Henter inn evt sortering
If (viewstate("columnSortBy") <> Nothing) Then 'Det skal sorteres!
sortCommand = viewstate("columnSortBy") & " " & viewstate("columnSortDirection")
Else
sortCommand = "projectID desc"
End If

'TEST: Response.Write(sortCommand)

Dim conn As New SqlConnection(variables.ConnString)
Dim cmd As New SqlCommand("spProjects", conn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter("@custID", Data.SqlDbType.SmallInt))
cmd.Parameters("@custID").Value = User.Identity.Name
cmd.Parameters.Add(New SqlParameter("@OrderByClause", Data.SqlDbType.VarChar, 100))
cmd.Parameters("@OrderByClause").Value = sortCommand

cmd.Connection.Open()
Dim DA As New SqlDataAdapter(cmd)
Dim DS As New DataSet()
DA.Fill(DS, "virProjects")
Me.dtgProjects.DataSource = DS.Tables("virProjects")
Me.dtgProjects.DataBind()
cmd.Connection.Close()
cmd.Dispose()
conn.Dispose()
End Sub

WebRessurs.no anbefaler:    StackOverflow.com | Experts-Exchange.com | W3schools | ASP.NET | Codeproject | 4Guys
WebRessurs.no er utviklet og drives av SoftMaker LTD
Sett som startside: [ ]. Bokmerk denne siden: [ klikk ]. Sitemap. http://twitter.com/webressurs_no/. Antall brukersesjoner: 9281366.
Copyright WebRessurs.no © 2003 - 2015
Turvenn.no