För att hämta de tre som har högst id
SELECT top 3 * FROM notiser ORDER BY ID Desc
För att ta bort
delete from notiser where id not in(
SELECT top 3 id FROM notiser ORDER BY ID Desc)
7 svar · 374 visningar · startad av sanne
Hejsan!
Jag har en sida där olika notiser visas med en rubrik och sen texten till notisen, detta hämtas från en MS SQL DB.
Just nu lagras ju alla notiser i DB, men jag skulle vilja att bara 3 notiser finns i DB och att sen när man skriver in en ny notis så skriver den över en av de gamla.
Hur kan jag lösa det, hur skriver jag det i koden?
mvh Sanne
Så här ser min kod ut nu:
<script runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
Dim myConnection As SqlConnection
Dim myCommand As SqlDataAdapter
' Create a connection to the "pubs" SQL database located on the
' local computer.
myConnection = New SqlConnection("server=xxxxx;UID=xxxx;PWD=xxxx;Initial Catalog=xxx;")
' Connect to the SQL database using a SQL SELECT query to get all
' the data from the "notistabell" table.
myCommand = New SqlDataAdapter("SELECT * FROM notiser ORDER BY ID Desc", myConnection)
' Create and fill a DataSet.
Dim ds As DataSet = new DataSet()
myCommand.Fill(ds)
' Bind MyDataList to the DataSet. MyDataList is the ID for
' the DataList control in the HTML section of the page.
MyDataList.DataSource = ds
MyDataList.DataBind()
End Sub
</script>
För att hämta de tre som har högst id
SELECT top 3 * FROM notiser ORDER BY ID Desc
För att ta bort
delete from notiser where id not in(
SELECT top 3 id FROM notiser ORDER BY ID Desc)
Hejsan!
Jag förstår vart jag skall sätta in selectkoden, men vet inte vart jag skall placera deletekoden i min kod ovan?Någon som vet?
Mvh Sanne
delete from notiser where id not in(
SELECT top 3 id FROM notiser ORDER BY ID Desc)
delete-frågan kan du schedulera med jämna mellanrum. Att alltid försöka ha exakt 3 poster i tabellen är bara en onödig kostnad.
Är inte så himla bra på det här ännu, så snälla tala gärna om för mig vart jag sätter in den här delete koden i min kod:
delete from notiser where id not in(
SELECT top 3 id FROM notiser ORDER BY ID Desc)
mvh Sanne
Du kan exekvera den SQL-frågan var som helst, på någon sida som körs i din applikation.
Men varför måste du ta bort notiser?
Det känns lämpligast att spara alla, och endast visa de tre senaste.
Vill bara inte att den skall bli för full.
Mvh Sanne