Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Pode recompilar uma aplicação como uma aplicação Unicode de duas formas:
Inclua o #define Unicode contido no ficheiro de cabeçalho Sqlucode.h na aplicação.
Compilar a aplicação com a opção Unicode do compilador. (Esta opção será diferente para cada compilador.)
Para converter uma aplicação ANSI numa aplicação Unicode, escreva a aplicação para armazenar e passar dados Unicode. Além disso, as chamadas a funções que suportam argumentos SQLPOINTER devem ser convertidas para usar contagem em bytes.
Depois de uma aplicação ser compilada como uma aplicação Unicode, se a aplicação chamar uma função API ODBC (sem sufixo), o Gestor de Drivers reconhece a aplicação como uma aplicação Unicode e converte a chamada de função para uma função Unicode (com o sufixo W ) se o driver subjacente suportar Unicode. Quando uma aplicação ANSI faz uma chamada de função sem sufixo, o Gestor de Drivers converte-a para ANSI se o driver subjacente suportar ANSI. Se tanto a aplicação como o controlador suportarem a mesma codificação de caracteres, o gestor do driver encaminha as chamadas para o driver (com certas exceções para aplicações ANSI).
Uma aplicação pode chamar tanto funções Unicode (com o sufixo W ) como funções ANSI (com ou sem o sufixo A ). As chamadas de funções Unicode e ANSI podem ser mistas. Se a biblioteca de cursores for utilizada, no entanto, as chamadas de funções Unicode e ANSI não podem ser misturadas. A biblioteca de cursores é ou Unicode ou ANSI, não uma mistura.
Uma aplicação pode ser escrita de forma a ser compilada como uma aplicação Unicode ou uma aplicação ANSI. Neste caso, os tipos de dados de carácter podem ser declarados como SQL_C_TCHAR. Esta é uma macro que insere SQL_C_WCHAR se a aplicação for compilada como uma aplicação Unicode ou insere SQL_C_CHAR se for compilada como uma aplicação ANSI. O programador de aplicações deve ter cuidado com funções que usam SQLPOINTER como argumento, porque o tamanho do argumento de comprimento mudará (para tipos de dados de cadeia) dependendo se a aplicação é ANSI ou Unicode.
Uma função pode ser chamada de três formas: como chamada de função apenas Unicode (com o sufixo W ), como chamada de função apenas ANSI (com o sufixo A ), ou como chamada de função ODBC sem sufixo. Os argumentos para as três formas de uma função são idênticos. Apenas aquelas funções com argumentos SQLCHAR * ou argumentos SQLPOINTER que apontam para strings requerem formulários Unicode e ANSI. Para funções que têm argumentos que podem ser declarados como tipo de carácter, como SQLBindCol ou SQLGetData (que não têm formas Unicode e ANSI), o argumento pode ser declarado como o tipo Unicode, o tipo ANSI ou, no caso de um argumento do tipo C, a macro SQL_C_TCHAR. Para mais informações, consulte Dados Unicode.
Uma aplicação pode ser escrita como uma aplicação Unicode mesmo que não existam drivers Unicode disponíveis para funcionar. O Gestor de Drivers irá mapear funções Unicode e tipos de dados para ANSI. Existem algumas restrições para os mapeamentos de Unicode para ANSI que podem ser realizados. A existência de um driver Unicode para a aplicação Unicode funcionar resultará num melhor desempenho e eliminará as restrições inerentes aos mapeamentos Unicode para ANSI.