![]() |
ASP/SQL - Frage... Zeug in neue Tabelle?
Öhhh also, ich bin mir relativ sicher, dass ich letztens irgendwas gesehen habe, wo man irgendwie Spalten an eine Tabelle anhängen kann, die aber meines Wissens nicht wirklich gespeichert werden, auf die man also kurz irgendwas zwischenspeichern kann. Also SELECT INTO war es wohl nicht, glaube ich, denn das erstellt ja anscheinend eine komplett neue Tabelle, das will ich ja gar nicht.
Weiß jemand trotz meiner konfusen Beschreibung, was ich meine?!?? Sorry Leute. Vielleicht irre ich mich auch. Ich hoffe nicht. :rolleyes: Thx. Etienne |
Hi!
Wahrscheinlich meinst du ein Feld (= eine Spalte) zu einem Recordset hinzufügen. Dabei sind die Daten nur im Speicher, und werden nicht in die DB geschrieben. Wie es genau funktioniert ist von der verwendeten Zugriffs-Bibliothek abhängig. Schau mal in deiner Online-Hilfe unter Recordset und Methode nach. mfg WB |
Hallo!
Danke schonmal, also ich glaube, genau das meinte ich. Nur habe ich ehrlichgesagt nicht wirklich eine Ahnung, wo ich nachsehen kann, wie das funktioniert. Ich wollte das bei Brinkster (Free Account) machen (wegen der Zugriffsbibliothek, was immer das sein mag ;)). Für noch ein paar weiterführende Tipps wäre ich sehr dankbar. :) Etienne |
Hi!
Poste den Code, mit dem du das Recordset erstellst. mfg WB |
Hallo,
also, falls das hilft: Dim DB Dim RS Set DB = Server.CreateObject ("ADODB.Connection") DB.Mode = adModeReadWrite DB.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" & Server.MapPath (strPath) & ";") Set RS = Server.CreateObject ("ADODB.Recordset") Danke, Etienne |
Hi!
Also ADO. Hab ich erwartet. Drum hab ich auch schon eine Lösung herausgesucht. http://support.microsoft.com/default...b;en-us;223771 Mit diesem Artikel solltest du es schaffen. mfg WB |
Danke, werde mich mal daran versuchen.
Wenn es nicht klappt, melde ich mich eben nochmal. Tschüs, Etienne |
Hallo nochmal.
Nach langer Zeit habe ich mich endlich mal daran versucht, bin aber noch nicht wirklich zufrieden... Also, ein neues Recordset zu erstellen, und es mit Daten zu füllen, war eigentlich nicht der Hammer, aber der eigentliche Grund für den Aufwand ist, dass ich das ganze dann gerne sortiert hätte ala 'ORDER BY feld1, feld2'... Eine Tabelle soll (dynamisch) erzeugt werden und dann sortiert ausgegeben werden. Ich habe jetzt ähnlich dem oben genannten Artikel angefangen: Dim RS Set RS = Server.CreateObject ("ADODB.Recordset") RS.Fields.Append "feld1", adChar, 64 RS.Fields.Append "feld2", adChar, 64 RS.Open RS.AddNew RS ("feld1") = "einbisschenbla" RS ("feld2") = "nocheinbisschen" RS.Update ... RS.Close Ok also normalerweise kann man ja in dem SQL-Teil der RS.Open sowas wie ORDER BY <felder> etc. machen, um zu sortieren. Aber geht das auch jetzt noch, und wenn, dann wie? Zum Beispiel, wie könnte ich (angenommen, in der Tabelle befänden sich einige Einträge) nach feld2 sortieren? Danke schonmal! Etienne |
Hi!
Vielleicht hilft dir das weiter: Sort-Eigenschaft Gibt einen oder mehrere Feldnamen an, nach denen die Sortierung im Recordset-Objekt durchgeführt wird. Außerdem wird angegeben, ob die einzelnen Felder in aufsteigender oder absteigender Reihenfolge sortiert werden. Einstellungen und Rückgabewerte Legt einen Wert vom Typ String fest oder gibt einen Wert vom Typ String zurück, der durch Kommas voneinander getrennte Feldnamen enthält, nach denen sortiert wird. Dabei ist jeder Name ein Field-Objekt im Recordset-Objekt, auf das optional ein Leerzeichen und das Schlüsselwort ASC oder DESC folgt. Durch dieses Schlüsselwort wird die Sortierreihenfolge des Feldes bestimmt. Hinweise Die Daten werden nicht physisch neu geordnet; lediglich der Zugriff darauf erfolgt in der Sortierreihenfolge. Für jedes in der Sort-Eigenschaft festgelegte Feld wird ein temporärer Index erstellt, wenn die CursorLocation-Eigenschaft auf adUseClient gesetzt und noch kein Index vorhanden ist. Durch das Festlegen der Sort-Eigenschaft auf eine leere Zeichenfolge wird die ursprüngliche Reihenfolge der Zeilen wiederhergestellt. Temporäre Indizes werden gelöscht. Vorhandene Indizes werden nicht gelöscht. Das Feld kann nicht "ASC" der "DESC" benannt werden, denn diese Namen würden einen Konflikt mit den Schlüsselwörtern ASC und DESC verursachen. Geben Sie einem Feld mit einem Namen, bei dem ein Konflikt auftreten würde, einen Alias. Verwenden Sie dazu das Schlüsselwort AS in der Abfrage, die das Recordset zurückgibt. mfg WB |
Hallo,
<EDIT> Das hätte sich dann wohl geklärt. Mein Fehler *gegenStirnklopp*... Danke vielmals! </EDIT> Tschüs, Etienne |
Alle Zeitangaben in WEZ +2. Es ist jetzt 14:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag