En avancerad sqlfråg???
hej!
Jag fick reda på att när man läser sin SQL- sats så är det alltid fältnamnet som läses först.
Kan man läsa ut kolumnanamnen ur SQL frågan?
EX:
<code>
"Select * from tblHOP where hopid=30"
do until rst.EOF
response.write(rst("Kolumnnamn")
rst:MoveNext
loop
</code>
Så att man kan ut ur vilka kolumner dataan har hämtats
EX
Namn
Adress
Telefon
/phinala
Svara
Sv: Läsa ut fältnamnen ur SQL frågan
<code>
Dim F
For Each F in rs.Fields
Response.Write F.Name & "<BR>" & vbCrLf
Next
</code>
Svara
Sv: Läsa ut fältnamnen ur SQL frågan
Ok! Jättebra..
Min andra fråga är:
Kan jag på något sätt endast få ut de kolumnnamn som har ett värde i sig.
Jag har en tabell med en massa kolumner. Posternas data är utsprida på kolumnerna och det finns poster inte har värden i alla kolumnerna. Så jag skulle vilja att när jag kör min SQL fråga att reccordsetet endast tar med de kolumner som det finns värden i.
Kan man göra detta vi någon knepigSQL fråga eller på något annat sätt
/phinala
Svara
Sv: Läsa ut fältnamnen ur SQL frågan
"Select * from tblHOP
where hopid=30
AND hopnamn is not null"
Returnerar alla rader där hopnamn inte är null.
Att endast kunna skicka kolumner från en rad där data finns går inte utan ett recordset har ett antal kolumner som inte kan variera i olika rader. Att kolla om det finns data i en viss kolumn på en rad får du göra i din kod.
Sedan tycker jag att rubriken är gravt missvissande, skriver man att det skall var en avancerad SQL-fråga så borde det vara det och inte något som står i första kapitlet i "An Introduction to Data Base Systems" av Date. Den boken rekommenderas om du vill lära dig om databaser på riktigt.
Svara
Sv: Läsa ut fältnamnen ur SQL frågan
Jag tackar för din hjälp!
För mig var det en avancerad fråga eftersom jag inte visste hur man skulle göras
Det finns ju en anledning var jag frågar.
/phinala
Svara
Sv: Läsa ut fältnamnen ur SQL frågan
Ä det något sånt här du vill göra?
<code>
Dim F
Do Until rs.EOF
For Each F in rs.Fields
If IsNull(F.Value) Then
Else
Response.Write "<B >" & F.Name & ":</B >" & F.Value & "<BR>" & vbCrLf
End If
Next
</code>
Svara