Herzlichen Dank Joachim Ich werde mich jetzt mal ein wenig mit ADO befassen.
Nochmals herzlichen dank. Gru� Ferenc J�nosi www.enek.de -----Urspr�ngliche Nachricht----- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Joachim van de Bruck Gesendet: Sonntag, 23. November 2003 20:43 An: [EMAIL PROTECTED] Betreff: AW: [Database.asp] SELECT @@IDENTITY bei GUID Felder Hallo! > Verzeih mir die dumme Fragen. > Was ist ein Command-Objekt? Wie verwende ich das? Wenn ich > das verwenden > m�chte, reicht es aus, wenn ich meine Funktion ab�ndere? Schau Dir bitte mal ADO in der MSDN oder im Internet n�her an. Neben der Connection gibt es weitere sehr n�tzliche Objekte. Die Execute-Methode des Connection-Objekts ist eine Kurzform des Command-Objekts. > ConMaster.CursorLocation = 3 > Wie kann ich dann den r�ckgabewert speichern? > Auch mit SELECT @@IDENTITY? Das ist T-SQL, funktioniert also nur im SQL-Server bzw. im SQL-Server-Kompatibilit�tsmodus von Access 2000 oder Access XP. Dar�ber hinaus wird @@IDENTITY Dir nie eine GUID, sondern immer nur einen numerischen Wert zur�ckgeben. Damit geht's bei Dir also zweimal nicht. ;-) Beim Command-Objekt kannst Du steuern was zur�ckkommt, ein RecordSet z. B. mit der GUID oder ein einzelner Wert (GUID). Vor allem kannst Du Parameter f�r Deinen SQL-Befehl verwenden und das bringt viele Vorteile vor allem Konvertierung der Werte und Sicherheit gegen "SQL-Injection". Auch R�ckgabewerte kannst Du �ber Parameter erhalten. dim db : set db = Server.CreateObject("ADODB.Connection") db.CursorLocation = 3 db.ConnectionString = "...." dim cm : set cm = Server.CreateObject("ADODB.Command") cm.CursorType = 3 sqlInsert = "INSERT INTO tblMail (nFrom, nCc, ...) VALUES ([pFrom], [pCc], ...) cm.Execute sqlInsert, array(..., ..., ...), adCmdText + adExecuteNoRecords Wenn Du allerdings das Recordset-Objekt verwendest, ist es ganz einfach: dim db : set db = Server.CreateObject("ADODB.Connection") db.CursorLocation = 3 db.ConnectionString = "...." dim rs : set rs = Server.CreateObject("ADODB.Recordset") rs.Open "SELECT * FROM tblMail WHERE 1=0", db, 3, 3, adCmdText rs.AddNew( _ array("nFrom", "nCc", "nBcc", ...), _ array(......., ....., ......, ...)) newGuid = rs.Fields("nId").Value Im Archiv dieser Liste findest Du ebenfalls gen�gend Informationen zu den Objekten. Freundliche Gr��e Joachim van de BRuck _______________________________________________ Database.asp mailing list [EMAIL PROTECTED] http://www.glengamoi.com/mailman/listinfo/database.asp _______________________________________________ Database.asp mailing list [EMAIL PROTECTED] http://www.glengamoi.com/mailman/listinfo/database.asp
