---
title: "DropDownList"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/161862-dropdownlist"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Arne"
published: "2007-06-23T16:52:13.000Z"
updated: "2007-06-23T19:06:09.000Z"
replies: 2
views: 428
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/databaser-sql/161862-dropdownlist"
---

# DropDownList

## #1 — Arne, 2007-06-23T16:52Z

Jag vet ej om denna fråga ska ligga här eller sql forumet, men jag ställer den i alla fall....

Jag har en tabell (ms sql) varav samtliga förutom en (DbType int) är av DbType Bit 

Jag vill göra en sql sats typ:
SELECT id, bol1, bol2, bol3, bol4, bol5,  FROM mintabell WHERE id = @id

bol1 och mer är ca 40 st....

Jag vill  fylla en asp:DropDownList med de fält som har värdet true med  kolumnens namn.

Till exempel om bol1 och bol2 är falskt och resterande sant, listas bol3, bol4, bol5 och de andra i min asp:DropDownList och det som visas i min DropDownList är namnen på kolumnerna.

Går det att göra på något sätt? Gör jag det i sql satsen i så fall, eller kan jag sätta parametrar i min DropDownList som gör att det visas som jag (försökt) beskriva?

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

## #2 — emission, 2007-06-23T17:50Z

För det första så känns det lite tokigt med en tabell med så många kolumner. Det löses antagligen effektivare med en relationsstruktur. I synnerhet eftersom det du vill lista är kolumnnamnen.

Gör så här (kolumnnamnen är bara exempel och bör bytas ut):

```
objekttabell:
objektid (int) .....

värdetabell:
värdeid (int), värdenamn

kopplingstabell:
objektid,värdeid
```

Då kan du ställa vettiga SQL-frågor

```
--Plocka ut alla värden som är kopplade till objektet med id=@id
SELECT v.värdeid,v.värdenamn FROM värdetabell
INNER JOIN kopplingstabell k ON k.värdeid=v.värdeid
WHERE k.objectid=@id
```

```
--Plocka ut alla värden som inte är kopplade till objektet med id=@id
SELECT v.värdeid,v.värdenamn FROM värdetabell
LEFT OUTER JOIN kopplingstabell k ON k.värdeid=v.värdeid AND k.objectid=@id
WHERE k.värdeid IS NULL
```

...och det är helt rätt att du ska använda SQL till detta. DropDownList visar det det som matas in i den och har ingen logik för datafiltrering.

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

## #3 — Zaiman, 2007-06-23T19:06Z

Tråden flyttad från ASP.NET

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/161862-dropdownlist
