Variable als Spaltenbezeichner (gelöst)

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

schwelmi
Beiträge: 7
Registriert: Mo, 07.11.2011 13:22

Variable als Spaltenbezeichner (gelöst)

Beitrag von schwelmi »

Hallo Forum,

ich habe eine Tabelle t1, die wie folgt aussieht:

Artnr I 1 I 2 I 3 I...

Nun möchte ich die Werte der einzelnen Spalten nacheinander skriptgesteuert abfragen.
Das hatte ich mir in etwa so vorgestellt:

SET @spalte:=1;
for i = 0 to 30
Select 't1'.'Artnr','t1'.'@spalte' FROM 't1';
SET @spalte:=@spalte+1;
next i

Nur leider funktioniert das so nicht. MySQL erkennt meine Variable nicht als Spaltenbezeichner.
Kann mir jemand helfen?
Zuletzt geändert von schwelmi am Di, 08.11.2011 09:30, insgesamt 1-mal geändert.
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Variable als Spaltenbezeichner

Beitrag von DPunch »

Aloha

In welcher Umgebung führst Du das Skript aus?
Dass eine Mischmasch aus MySQL-seitiger Variablendeklaration und einer Basic-Schleife nicht wirklich funktionsfähig ist, überrascht eher weniger.
Ohne Deine genauen Ziele zu kennen, würde ich Dir einfach mal StarBasic FAQ: Datenbanken ans Herz legen, wenn Du skriptgesteuert arbeiten willst.
schwelmi
Beiträge: 7
Registriert: Mo, 07.11.2011 13:22

Re: Variable als Spaltenbezeichner

Beitrag von schwelmi »

Wow, vielen Dank für den Link.
Das war genau das was ich brauchte. Endlich verstehe ich Star-Basic - ja, mein Skript sollte in Star-Basic verfasst werden.
Hier noch die fertige Lösung:

n=1
for i = 0 to 30
Sql = "SELECT DISTINCT `Artnr`, `"+n+"` FROM `db1`.`t1` AS `t1`"
SQL_Anweisung.executeUpdate (Sql)
n=n+1
next i

Michael
Antworten