---
title: "Randomize från databas > hål i ID"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/67909-randomize-från-databas-hål-i-id"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "roady"
published: "2003-02-11T00:21:48.000Z"
updated: "2003-02-11T17:36:15.000Z"
replies: 8
views: 407
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/67909-randomize-från-databas-hål-i-id"
---

# Randomize från databas > hål i ID

## #1 — roady, 2003-02-11T00:21Z

jag har kollat runt på en massa slumpningar, men mitt problem är att folk kan lägga till och ta bort posterna i databasen, därför blir det "hål" i räknaren i databasen.

typ:
1
2
5
6
7
10
13
14
osv....

hur fixar man en slumpning som funkar på det ? :q 
behöver bara ha ut ett värde!

Permalänk: https://www.webforum.nu/p/67909

## #2 — crisse6, 2003-02-11T03:21Z

vad menar du? Den slumpar ju bara fran dom som finns.... vanta ska ge dig exempel pa slumpning fran db... ;)

Permalänk: https://www.webforum.nu/p/945428

## #3 — crisse6, 2003-02-11T03:24Z

kolla denna sida... mycket bra kod av LarsG, slumpar iofs 5, men latt att andra, skriv om du far problem ;)

<http://www.webforum.nu/showthread.php?s=&postid=86465#post86465>

Permalänk: https://www.webforum.nu/p/945429

## #4 — Macce, 2003-02-11T05:34Z

Varför slumpa ? Det är väl bättre att du bygger en loop
som går igenom en getrows-array och väljer det lägsta lediga 
id:t och gör en insert där.

Av vilken anledning vill du få bort "hålen" i db:n ?

mvh

Permalänk: https://www.webforum.nu/p/945432

## #5 — OveRRidE, 2003-02-11T08:11Z

> Av vilken anledning vill du få bort "hålen" i db:n ?

Ja?

Permalänk: https://www.webforum.nu/p/945469

## #6 — PatrikB, 2003-02-11T08:54Z

detta är ett annat sätt:

```
<%
Option Explicit

Dim strSQLrnd
Dim rstRand
Dim intTotalRecs
Dim intRndPost
Dim strSlumpPost

'## -- nytt frö för slumpning --
Randomize

'## -- sql-fråga att slumpa från --
strSQLrnd = "SELECT * FROM tbl_table"

'## -- skapa recordset som ska hålla posterna att slumpa från --
Set rstRand = Server.CreateObject("ADODB.Recordset")

	With rstRand
		.Source = strSQLrnd
		.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/db/my_db.mdb")
		.CursorLocation = 3
		.CursorType = 1
		.LockType = 3
		.Open
		.ActiveConnection = Nothing
		
		If Not .EOF Then
			intTotalRecs = .RecordCount
			intRndPost = CInt(rnd*(intTotalRecs - 1))

			'## -- förflytta recordset markören till slumpat värde --
			.Move intRndPost
			
			'## -- spara det slumpade värdet till variabel --
			strSlumpPost = .Fields(0).Value
		Else
			'## -- inga poster fanns --
		End if
		
		'## -- stäng recordsetet --
		.Close
	End With
	
'## -- clean up minnet --
Set rstRand = Nothing
%>
<html>
<head>
<title>Slumpa från DB</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<%
	Response.Write "Antal poster: " & intTotalRecs & _
		"<br>Slumpvärde: " & intRndPost & _
		"<br>Slumpat ID: " & strSlumpPost
%>
</body>
</html>
```

ändra sövägen till databasen och sql-frågan så att det stämmer för din db

cya,
PatrikB

Permalänk: https://www.webforum.nu/p/945494

## #7 — roady, 2003-02-11T10:52Z

jag har inte riktigt greppat detdär med slumpningen, när jag själv gjort så får jag en massa ID:s som inte finns. Det var därför jag talade om dessa "hål", inget som jag ville ta bort utan de finns ju bara där ;) 

Men nu funkar det kanon ju! Får bara nummer som existerar i databasen.
tack för den eminenta hjälpen  :bire

Permalänk: https://www.webforum.nu/p/945580

## #8 — danis, 2003-02-11T17:29Z

det är bättre att slumpa direkt från databasen. mkt enklare

Permalänk: https://www.webforum.nu/p/948824

## #9 — @nders, 2003-02-11T17:36Z

Om det är enklare att slumpa direkt från databasen skulle det uppskattas med kodexempel. I MySQL kan man enkelt göra det, men i andra dbms?

Permalänk: https://www.webforum.nu/p/948829

---

Tråden på webben: https://www.webforum.nu/amne/asp/67909-randomize-från-databas-hål-i-id
