---
title: "Jämföra två databaser"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/58130-jämföra-två-databaser"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "klementin"
published: "2002-11-05T14:20:42.000Z"
updated: "2002-11-06T09:12:41.000Z"
replies: 3
views: 228
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/58130-jämföra-två-databaser"
---

# Jämföra två databaser

## #1 — klementin, 2002-11-05T14:20Z

Hej!
Har två stycken access databaser. I den ena (users.mdb) finns alla användare som har tillgång till sidan och i den andra (vote.mdb) finns det hur dom har röstat (om dom har röstat) i en fråga. Mitt problem är nu att när jag försöker hämtat ur alla användare ur users.mdb och kolla om dom har röstat eller inte så plockar den bara ur dom som har röstat, alltså jag vill att alla användare skall visas och OM dom har rösta så ska deras namn markeras i fetstil (eller nått). Detta låter ju inte så krångligt men jag får inte till det riktigt.
Tack på förhand

```
	<%

	s_date_current = Date()

	s_dbpath_vote = "E:\vote\votes.mdb"
	s_dbpath_user = "E:\Customers\1692240\db\secured02\users.mdb"

	Set Conn_user = Server.CreateObject("ADODB.Connection")
	Conn_user.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & s_dbpath_user & ";"

	Set Conn_vote = Server.CreateObject("ADODB.Connection")
	Conn_vote.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & s_dbpath_vote & ";"

	arr = Array ("Konsult", "UnderKonsult", "Säljare", "Administration", "VD", "Styrelse")

	For a = 0 To uBound (arr)

		strArray = arr(a)

		If strArray = "Konsult" Then strArrayText = "Konsulter"
		If strArray = "UnderKonsult" Then strArrayText = "Underkonsulter"
		If strArray = "Säljare" Then strArrayText = "Säljare"
		If strArray = "Administration" Then strArrayText = "Administration"
		If strArray = "VD" Then strArrayText = "VD"
		If strArray = "Styrelse" Then strArrayText = "Styrelse"

		SQL_user = "SELECT Web_Username, Web_displayname FROM Users WHERE Work_Assignment = '" & strArray & "' ORDER BY Web_Displayname ASC "
		Set rs_user = Conn_user.Execute(SQL_user) 

		Response.write "<U>" & strArrayText & "</U><BR>"

		If Not rs_user.EOF Then

			Do Until rs_user.EOF

				SQL_vote = "SELECT * FROM v_usr "
				Set rs_vote = Conn_vote.Execute(SQL_vote) 

				If Not rs_vote.EOF Then

					If rs_vote("v_user_name") = rs_user("Web_Username") Then		

						Response.write "<B>" & rs_user("Web_Username") & "</B><BR>"

					Else

						Response.write rs_user("Web_Username") & "<BR>"

					End If
				
				End If

				rs_user.MoveNext				

			Loop

		End If

	Next

	Conn_vote.Close()
	Set Conn_vote = Nothing

	Conn_user.Close()
	Set Conn_user = Nothing

%>
```

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

## #2 — Jesper T, 2002-11-05T15:48Z

Lägg i allt i samma databas i stället, med flera tabeller, det kommer att bli mycket enklare att skapa sql:er då.

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

## #3 — solbulle, 2002-11-05T15:51Z

Precis, du kommer slippa en massa strul samt nästlade loopar.

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

## #4 — klementin, 2002-11-06T09:12Z

Fixade det. Det var inte så konstigt, däremot så blir ju prestandan rutten men i mitt fall gör detta inget då detta skript kommer att köras sällan.

```
	<%

	Dim s_dbpath_vote
	Dim s_dbpath_user
	Dim s_scr

	s_dbpath_vote = "E:\votes.mdb"
	s_dbpath_user = "E:\users.mdb"

	Set Conn_user = Server.CreateObject("ADODB.Connection")
	Conn_user.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & s_dbpath_user & ";"

	Set Conn_vote = Server.CreateObject("ADODB.Connection")
	Conn_vote.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & s_dbpath_vote & ";"

	SQL_user = "SELECT Web_Username, Web_Displayname FROM Users ORDER BY Web_Displayname ASC "
	Set rs_user = Conn_user.Execute(SQL_user) 

	If Not rs_user.EOF Then

		Do Until rs_user.EOF

			SQL_vote = "SELECT * FROM v_usr WHERE v_user_name = '" & rs_user("Web_Username") & "' "
			Set rs_vote = Conn_vote.Execute(SQL_vote) 
 
			If Not rs_vote.EOF Then

				s_scr = s_scr & "<B>" & rs_user("Web_Displayname") & "</B><BR>"

			Else

				s_scr = s_scr & rs_user("Web_Displayname") & "<BR>"

			End If

			rs_user.MoveNext				

		Loop

	End If

	Conn_vote.Close()
	Set Conn_vote = Nothing

	Conn_user.Close()
	Set Conn_user = Nothing

	Response.Write s_scr

%>
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/58130-jämföra-två-databaser
