Du får göra en mellan variabel:
$tmp=$variabel."123";
mysql_query ("ALTER TABLE $table ADD COLUMN $tmp integer (3)");
------------------
woodi
Svenska FF1
www.johan-skog.nu
7 svar · 207 visningar · startad av Web-Tor
Tjena...
Jag vill skapa en kolumn i en MySQL-databas. Kolumnen skall heta ABC123.
ABC är lagrat i en variabel men det är inte 123. Hur skall SQL-frågan se ut?
mysql_query ("ALTER TABLE $table ADD COLUMN $variabel??? integer (3)");
Vad skall jag skriva istället för ???
Punkt? Citattecken?
/Tor
------------------
---------------------
Du får göra en mellan variabel:
$tmp=$variabel."123";
mysql_query ("ALTER TABLE $table ADD COLUMN $tmp integer (3)");
------------------
woodi
Svenska FF1
www.johan-skog.nu
Ja. Det funkar ju så klart.
Ny fråga: (skall man kanske göra en ny tråd då?)
I min databas finns kolumnerna ABC001, ABC002, ABC003 o.s.v.
Om det finns två kolumner med samma slutsiffror (t.ex. 002), vill jag att allt innehåll i dessa adderas när resultatet visas på sidan.
Fattar du? Det gör knappt jag så…
Glad för svar
/Tor
------------------
---------------------
Nä, jag förstår inte riktigt. Du kan inte ha två kolumner med samma namn.
------------------
- Swey
Skriv först, tänk sen!
Ok...Jag var lite oklar.
Det jag menar är att kolumnerna har namn som är uppbyggda av tre bokstäver och tre siffror. Är de tre siffrorna lika i kolumnnamnen så skall innehållet i dessa kolumner slås ihop.
Tydligare?
/Tor
------------------
-----------
Det är lite krångligt men vi gör ett försök:
Jag har en databas till vilken olika avdelning rapporterar sin aktuella status. Avdelningarna rapporterar hur stor del av arbetet som utförts på olika objekt. Avdelningarnas namn består av tre bokstäver t.ex. USA, USB, USC. Avdelningarna avlägger rapport vid bestämda veckor t.ex. 012, 014, 016. Kolumnerna får sina namn efter avdelningens namn och den aktuella rapporterings veckan t.ex. USIA012. I denna kolumn lagras sedan procentsatser för hur arbetet fortskrider för de olika objekten.
Användare skall sedan kunna avläsa hur det går för olika objekt. Finns där då kolumnerna USA012, USB012 och USC012 så skall procentsatserna i dessa kolumner slås ihop och delas med tre.
Är det någon som förstår?
/Tor
------------------
-----------
Okej, jag är med. Man ska dock helst inte utnyttja själva databasstrukturen som ett sätt att lagra information. Tabeller och kolumner skapar man en gång, och modifierar dem endast om strukturen visade sig vara fel, eller om man måste utöka.
Du kan åstadkomma precis det du vill med bara en tabell, och vinner då både överskådlighet och prestanda.
Om du t.ex. har
<font size="1" face="Verdana, Arial, Helvetica, sans-serif">
|Avdelning|Vecka|Annat|
USA 034 67
USA 056 68
USB 034 67
</font>
Så får du ju lätt ut allt som har med USA vecka 034 med
SELECT * from tabellen WHERE Avdelning='USA' AND Vecka='034'
------------------
-------------------
What a waste it is to lose one's mind. Or not to have a mind is being very wasteful. How true that is.
Dan Quayle
[Redigerat av emission den 06 nov 2000]