SQL: fazendo chamadas SQL diretas (ODBC)
Este tópico explica:
Quando usar chamadas SQL diretas.
Observação
Essas informações aplicam-se às classes ODBC do MFC. Se estiver trabalhando com as classes DAO do MFC, confira o tópico "Comparação do SQL e SQL ANSI do Mecanismo de Banco de Dados Jet da Microsoft" na Ajuda do DAO.
Quando chamar SQL diretamente
Para criar novas tabelas, remover tabelas, alterar tabelas existentes, criar índices e executar outras funções SQL que alterem o esquema Fonte de Dados (OBDC), você deve emitir uma instrução SQL diretamente para a fonte de dados usando a DDL (linguagem de definição e banco de dados). Ao usar um assistente para criar um conjunto de registros para uma tabela (no momento do design), você pode escolher quais colunas da tabela representar no conjunto de registros. Isso não permite que colunas sejam adicionadas à tabela posteriormente por você ou outro usuário da fonte de dados, depois que o programa tiver sido compilado. As classes de banco de dados não dão suporte diretamente à DDL, mas ainda é possível gravar código para associar uma nova coluna ao conjunto de registros dinamicamente, em tempo de execução. Para obter informações sobre como fazer essa associação, consulte Conjunto de registros: associação dinâmica de colunas de dados (ODBC).
Você pode usar o próprio DBMS para alterar o esquema ou outra ferramenta que permite executar funções DDL. Você também pode usar chamadas de função ODBC para enviar instruções SQL, como chamar uma consulta predefinida (procedimento armazenado) que não retorna registros.
Fazer chamadas de função SQL diretas
Você pode executar diretamente uma chamada SQL usando um objeto Classe CDatabase. Configure a cadeia de caracteres de instrução SQL (geralmente em um CString
) e passe-a para a função de membro CDatabase::ExecuteSQL do objeto CDatabase
. Se você usar chamadas de função ODBC para enviar uma instrução SQL que normalmente retorna registros, os registros serão ignorados.