ModalitÓ di utilizzo di Visual Basic 6.0 DataEnvironment con con parametri query

Traduzione articoli Traduzione articoli
Identificativo articolo: 193866 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

Il DataEnvironment di Visual Basic 6.0 semplifica il processo di creazione di query con parametri. Tuttavia, l'utilizzo di queste query con i controlli associati potrebbe non comportarsi nel modo desiderato dovrebbe. In questo articolo Ŕ stato progettato per illustrare l'interazione di tali query con i controlli associati e per garantire che Ŕ possibile utilizzare queste query nell'applicazione.

Nota: Questo articolo presuppone l'utilizzo con un database di SQL Server. Il DataEnvironment invia un numero di chiamate di API OLE DB in fase di progettazione per recuperare i dati sui parametri della query. Non tutti i provider OLE DB o driver ODBC restituiscono informazioni su nome, tipo di dati e direzione dei parametri della query. Di conseguenza, con le query con parametri il DataEnvironment non supportata per tutti i driver e provider. Questa funzionalitÓ Ŕ supportata per i provider di SQL Server e OLE DB per Oracle e il driver ODBC inclusi in Microsoft Visual Basic 6.0.

Informazioni

Se si utilizza una query con parametri in di DataEnvironment con controlli associati, Ŕ possibile notare che i controlli visualizzati vuoti quando si esegue il modulo, e che esegue la query tramite il codice non popolato i controlli. Questo comportamento legato alla progettazione.

Quando si visualizza un form con un controllo associato al DataEnvironment e non dispongono ancora eseguire la query, il DataEnvironment eseguirÓ automaticamente la query. Nel caso di una query con parametri, il DataEnvironment non dispone tutte le informazioni necessarie per eseguire la query. Il tentativo di eseguire la query non riesce e non vengono restituiti dati. Di conseguenza, il controllo non contiene dati.

Se si esegue la query tramite codice, Ŕ necessario che il DataEnvironment recupererÓ i risultati della query. Questi dati non vengono visualizzati nel controllo associato fino a quando non viene re-bound.

Procedura per riprodurre il problema

  1. Creare un progetto EXE standard in Visual Basic. In base all'impostazione predefinita, viene creato il progetto Form1.
  2. Aggiungere al progetto un DataEnvironment. Per impostazione predefinita viene creato Connection1.
  3. Impostare Connection1 utilizzare il provider SQLOLEDB per connettersi al database pubs del server.
  4. Aggiungere un comando per Connection1 in base alla seguente query e il comando GetAnAuthor il nome:
          SELECT * FROM Authors WHERE Au_ID = ?
     
    						
  5. Fare clic con il pulsante destro del mouse e la trascinare il comando a Form1 e la scegliere "Griglia dati."
  6. Aggiungere una casella di testo a Form1 dalla casella degli strumenti e denominarlo txtParameter.
  7. Aggiungere un controllo CommandButton al Form1 dalla casella degli strumenti e denominarlo cmdRunQuery. Impostarne la proprietÓ Caption "Esegui query".
  8. Aggiungere il codice riportato di seguito all'evento cmdRunQuery_Click:
           With DataEnvironment1
               If .rsGetAnAuthor.State = adStateOpen Then
                   .rsGetAnAuthor.Close
               End If
               .GetAnAuthor txtParameter.Text
               If .rsGetAnAuthor.RecordCount > 0 Then
                   MsgBox "Found " & .rsGetAnAuthor.Fields("Au_LName").Value
               Else
                   MsgBox "No author found"
               End If
           End With
    
    						
    Se blocco chiude prima di eseguire la query con parametri Ŕ aprire il recordset, se fosse in precedenza.
  9. Eseguire il progetto e inserire un ID autore nella casella di testo. "1176 32 172" e "213-46-8915" sono i primo valori di ID di due autore nella tabella originale. (Visualizzazione del contenuto della tabella tramite la finestra Visualizzazione dati pu˛ essere utile.) Dopo aver immesso un ID autore esistente nella casella di testo, fare clic sul pulsante comando. Una finestra di dialogo viene visualizzata per indicare se la query restituisca un autore. Notare che, anche se la query ha restituito un autore, il record non visualizzate nella griglia.
  10. Aggiungere la seguente riga alla fine dell'evento cmdRunQuery_Click:
           Set DataGrid1.DataSource = DataEnvironment1
    
    						
  11. Eseguire di nuovo il progetto. Posizionare un ID autore valido nella casella di testo e fare clic sul pulsante di comando. Se la query ha restituito dati, tali dati nella griglia verrÓ visualizzato una volta chiusa la finestra di dialogo.

ULTERIORI INFORMAZIONI

Esistono altri modi per utilizzare le query con parametri con il DataEnvironment"
  • Specificare un valore per il parametro in fase di progettazione. Ad esempio, nel precedente esempio, si potrebbe tornare il comando GetAnAuthor il DataEnvironment, fare clic sulla scheda parametri e fornire un valore per il parametro nella casella di testo contrassegnato come valore. Se si esegue il progetto con un valore per il parametro impostato in fase di progettazione, verrÓ visualizzato i risultati di tale query utilizzando tale parametro quando il form viene caricato il controllo associato forzato di un'esecuzione iniziale di tale query. Se si eseguire nuovamente il comando con un nuovo valore per il parametro, non verrÓ visualizzato i nuovi dati in controlli associati finchÚ non si riassociare loro come illustrato in precedenza.
  • Assicurarsi di eseguire la query prima di visualizzare i controlli associati a tale query in modo esplicito. Ad esempio, Ŕ possibile utilizzare un modulo per richiedere all'utente per il valore del parametro. ╚ possibile eseguire la query e visualizzare un modulo che visualizzeranno i risultati della query. Tenere presente che se si desidera visualizzare il modulo stesso con i risultati di pi¨ esecuzioni della query, che sarÓ necessario assicurarsi che l'oggetto recordset viene chiuso prima di eseguire l'esecuzione della query e quindi riassociare i controlli (come illustrato sopra).
(c) 1998 Microsoft Corporation. Tutti i diritti riservati.
Con il contributo di David Sceppa, Microsoft Corporation

ProprietÓ

Identificativo articolo: 193866 - Ultima modifica: martedý 13 luglio 2004 - Revisione: 1.2
Le informazioni in questo articolo si applicano a:
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
Chiavi:á
kbmt kbhowto KB193866 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 193866
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com