| Il Modello ad Oggetti di ADO - Command |
Home Page | Commento dell'autore | Articoli | Le FAQ | I documenti | La ricerca | Contribuire |
A cura di: Davide Bianchi |
ADO è l'interfaccia più usata per accedere ai database sotto Windows, non solo
mediante ASP, ma anche mediante Visual Basic, C/C++ ed altri ambienti di sviluppo. |
Command
Proprietà
Metodi |
L'oggetto Command consente l'invio di comandi al database, i comandi possono essere query, ma non sono limitati a questo. Possono essere preparazione di query ed associazioni di parametri con stringhe di query. Il linguaggio attuale di comando che è supportato è strettamente dipendente dal driver in uso, la maggioranza dei database relazionali che sono supportati utilizzano una qualche variante dello standard SQL92. L'oggetto Command può sia accedere ad una nuova connessione o utilizzare una connessione esistente per eseguire le proprie operazioni, dipende da cosa viene specificato nella proprietà ActiveConnection. Se tale proprietà è impostata su una connesione esistente, tale connessione verrà utilizzata, se tale proprietà viene impostata su una stringa di connessione, verrà usata tale stringa per attivare una nuova connessione. L'esecuzione di stringhe di query può generare uno o più RecordSet come risposta, oppure può non ritornare nessun RecordSet. Una query può essere specificata impostando la proprietà CommandText. Una query in genere può essere una istruzione SQL standard di manipolazione del database o il richiamo di una Stored Procedure. Il tipo di query viene specificato impostando la proprietà CommandType con una delle apposite costanti. Quando il comando è un comando SQL, deve essere utilizzata adCmdText. Se viene usata adCmdStoredProc, l'oggetto Command esegue la query mediante la sequenza ODBC {call procedure=name}.
Se si specifica adCmdTable, la query si suppone che sia il nome di una tabella, in
questo caso la query viene convertita in
SELECT * FROM Specificando adCmdUnknown, l'oggetto Command cercherà di stabilire il tipo di query inviato, questo potrebbe portare ad un degrado delle prestazioni. è possibile utilizzare la proprietà Prepared, per effettuare la "preparazione" delle query prima della vera e propria esecuzione. In questo modo prima della esecuzione viene preparato il Piano di Query, questo migliora sensibilmente le prestazini della query se la stessa deve essere eseguita più volte. La proprietà Prepared diviene utile anche quando si deve eseguire ripetutamente una query con parametri, modificando i valori dei parametri ogni volta. L'oggetto Parameter può essere creato attraverso il metodo CreateParameter. Questo esempio esegue una semplice SELECT che ritorna un recordset: Dim Cmd As New ADODB.Command Dim rs As New ADODB.Recordset ' Use a connection string or a Connection object. Cmd.ActiveConnection = "DSN=pubs;UID=sa" Cmd.CommandText = "select * from titles" Cmd.CommandTimeout = 15 Cmd.CommandType = adCmdText Set rs = Cmd.Execute() rs.Close Questo esempio esegue una stored procedure che non ritorna un RecordSet. Dim Cmd As New ADODB.Command ' Use a connection string or a Connection object. Cmd.ActiveConnection = "DSN=pubs;UID=sa" Cmd.CommandText = "myADOProc" Cmd.CommandTimeout = 15 Cmd.CommandType = adCmdStoredProc Cmd.Execute Il nome della Stored Procedure è "myAdoProc" ed è inserito nella proprietà CommandText.
|
|||||||||||||
Proprietà
|
|
|||||||||||||
Metodi
|
|
L'autore | Davide Bianchi, pomposamente definito Software Engineer dal biglietto da visita, lavora per la Square bv, società olandese con sede a Roermond, che si occupa di sviluppo di software con orientamento grafico. Attualmente stà lavorando in Java (e si diverte un sacco). |
Contribuire |
Hai dei documenti interessanti o utili che trattano argomenti legati al mondo dell'informatica da pubblicare ? leggi come. |
Come giudichi questo Documento ? |
Hai trovato questo documento utile? inutile? interessante? noioso? fammelo sapere |
Copyright | Il presente sito è frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione, così il giorno che faccio delle aggiunte potrò avvisarvi e magari mandarvi il testo aggiornato. |