Comandi OLE DB (SQL Server Compact)
In OLE DB, un oggetto comando viene utilizzato per eseguire comandi di testo specifici del provider, simili a istruzioni SQL.
Utilizzo dei comandi
Per l'utilizzo di comandi in OLE DB è necessario eseguire la procedura di base seguente:
- Un oggetto comando viene creato da un oggetto di sessione esistente mediante IDBCreateCommand::CreateCommand.
- Il testo del comando per la query viene specificato mediante ICommandText.
La sintassi di comando supportata dal provider OLE DB per Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) viene specificata come DBGUID_SQL. La sintassi DBGUID_SQL è essenzialmente costituita da sintassi SQL-92 con sequenze di escape ODBC. - Il comando viene eseguito mediante ICommand::Execute.
SQL Server Compact 3.5 supporta un sottoinsieme della grammatica di query Transact-SQL di SQL Server. Le query in genere eseguibili in SQL Server Compact 3.5 possono essere eseguite anche in SQL Server. Tuttavia, molte delle funzionalità di Transact-SQL non sono disponibili in SQL Server Compact 3.5 e in un comando può essere eseguita un'unica istruzione SQL.
SQL Server Compact 3.5 supporta query con parametri in cui i parametri sono delimitati dal punto interrogativo (?). Supporta inoltra query con parametri denominate.
Per ulteriori informazioni sulla grammatica delle query supportata da SQL Server Compact 3.5, vedere Guida di riferimento a SQL (SQL Server Compact).
Preparazione dei comandi
Per eseguire una query, il Motore di database deve innanzitutto analizzare, compilare e ottimizzare l'istruzione SQL. Questa operazione può in genere essere completata una sola volta per comandi che devono essere eseguiti più volte, usufruendo di un potenziale risparmio di tempo. Se è previsto che i client eseguano una query più volte, è consigliabile preparare il comando una sola volta. Chiamare quindi Execute più volte. In questo modo è possibile ottimizzare le prestazioni evitando la ricompilazione della query. I comandi possono essere preparati prima dell'esecuzione mediante la chiamata di ICommandPrepare::Prepare, equivalente alla compilazione del comando.
Esempi
Per un esempio di creazione ed esecuzione di comandi con il provider OLE DB per SQL Server Compact 3.5, vedere l'esempio in Parametri di OLE DB (SQL Server Compact).