Artigo: 298678 - Última revisão: segunda-feira, 21 de Janeiro de 2002 - Revisão: 1.0 INFO: ODBC 64-bit API alterações no MDAC 2.7
SumárioOs cabeçalhos de interligação de bases de dados abertas (ODBC, Open Database CONNECTIVITY) e bibliotecas que trabalham com o Microsoft Data Access Components (MDAC) 2.7 software development kit (SDK) contém algumas alterações de versões anteriores do ODBC para permitir aos programadores a plataformas de 64 bits novas código. Este artigo resume essas alterações. Mais InformaçãoGarantindo que o código utiliza tipos de ODBC definido listados abaixo, será possível compilar o código para plataformas de 64 bits e 32 bits baseadas no Win32 macros ou _WIN64. Existem vários pontos de particular importância:
Alterações nos tipos de dados SQLOs seguintes quatro tipos SQL ainda são suportados no apenas de 32 bits; não são definidas para compila de 64 bits. Estes tipos já não são utilizados para quaisquer parâmetros no MDAC 2.7; a utilização destes tipos fará com que compilador falhas em plataformas de 64 bits.#ifdef WIN32 typedef SQLULEN SQLROWCOUNT; typedef SQLULEN SQLROWSETSIZE; typedef SQLULEN SQLTRANSID; typedef SQLLEN SQLROWOFFSET; #endif #ifdef _WIN64 typedef UINT64 SQLSETPOSIROW; #else #define SQLSETPOSIROW SQLUSMALLINT #endif #ifdef _WIN64 typedef INT64 SQLLEN; typedef UINT64 SQLULEN; #else #define SQLLEN SQLINTEGER #define SQLULEN SQLUINTEGER #endif #ifdef _WIN64 #define SQL_C_BOOKMARK SQL_C_UBIGINT #else #define SQL_C_BOOKMARK SQL_C_ULONG #endif typedef SQLULEN BOOKMARK; Alterações de declaração de funçãoAlteraram as seguintes assinaturas de função para programação de 64 bits para acomodar os novos tipos. Os itens de texto a negrito são os parâmetros específicos que foram alterados.
Valores apresentados de chamadas de API de ODBC através de ponteirosAs chamadas de função ODBC seguintes levam como um parâmetro de entrada um ponteiro para uma memória intermédia pela qual os dados são devolvidos do controlador. O contexto e o significado dos dados devolvidos é determinada pela outros parâmetros de entrada para as funções. Em alguns casos, estes métodos agora podem devolver valores de 64 bits (8-byte inteiro) em vez dos valores de número inteiro (4 bytes) de 32 bits normal. Nestes casos são:SQLColAttribute Quando o parâmetro FieldIdentifier tem um dos seguintes valores, é devolvido um valor de 64 bits nos * NumericAttribute : SQL_DESC_DISPLAY_SIZE SQL_DESC_LENGTH SQL_DESC_OCTET_LENGTH SQL_DESC_COUNT SQLColAttributes Quando o parâmetro fDescType tem um dos seguintes valores, é devolvido um valor de 64 bits nos * pfDesc : SQL_COLUMN_DISPLAY_SIZE SQL_COLUMN_LENGTH SQL_COLUMN_COUNT SQLGetConnectAttr Quando o parâmetro de atributo tem um dos seguintes valores, é devolvido um valor de 64 bits em valor : SQL_ATTR_QUIET_MODE SQLGetConnectOption Quando o parâmetro de atributo tem um dos seguintes valores, é devolvido um valor de 64 bits em valor : SQL_ATTR_QUIET_MODE SQLGetDescField Quando o parâmetro FieldIdentifier tem um dos seguintes valores, é devolvido um valor de 64 bits nos * ValuePtr : SQL_DESC_ARRAY_SIZE SQLGetDiagField Quando o parâmetro DiagIdentifier tem um dos seguintes valores, é devolvido um valor de 64 bits nos * DiagInfoPtr : SQL_DIAG_CURSOR_ROW_COUNT SQL_DIAG_ROW_COUNT SQL_DIAG_ROW_NUMBER SQLGetInfo Quando o parâmetro TipoDeInformação tem um dos seguintes valores, é devolvido um valor de 64 bits nos * InfoValuePtr : SQL_DRIVER_HENV SQL_DRIVER_HDBC SQL_DRIVER_HLIB Quando TipoDeInformação tem um dos seguintes 2 valores * InfoValuePtr é de 64 bits na entrada e saída: SQL_DRIVER_HSTMT SQL_DRIVER_HDESC SQLGetStmtAttr Quando o parâmetro de atributo tem um dos seguintes valores, é devolvido um valor de 64 bits nos * ValuePtr : SQL_ATTR_APP_PARAM_DESC SQL_ATTR_APP_ROW_DESC SQL_ATTR_IMP_PARAM_DESC SQL_ATTR_IMP_ROW_DESC SQL_ATTR_MAX_LENGTH SQL_ATTR_MAX_ROWS SQL_ATTR_PARAM_BIND_OFFSET_PTR SQL_ATTR_ROW_ARRAY_SIZE SQL_ATTR_ROW_BIND_OFFSET_PTR SQL_ATTR_ROW_NUMBER SQL_ATTR_ROWS_FETCHED_PTR SQL_ATTR_KEYSET_SIZE SQLGetStmtOption Quando o parâmetro opção tem um dos seguintes valores, é devolvido um valor de 64 bits nos * valor : SQL_MAX_LENGTH SQL_MAX_ROWS SQL_ROWSET_SIZE SQL_KEYSET_SIZE SQLSetConnectAttr Quando o parâmetro de atributo tem um dos seguintes valores, um valor de 64 bits é transmitido no valor : SQL_ATTR_QUIET_MODE SQLSetConnectOption Quando o parâmetro de atributo tem um dos seguintes valores, um valor de 64 bits é transmitido no valor : SQL_ATTR_QUIET_MODE SQLSetDescField Quando o parâmetro FieldIdentifier tem um dos seguintes valores, um valor de 64 bits é passado em * ValuePtr : SQL_DESC_ARRAY_SIZE SQLSetStmtAttr Quando o parâmetro de atributo tem um dos seguintes valores, um valor de 64 bits é passado em * ValuePtr : SQL_ATTR_APP_PARAM_DESC SQL_ATTR_APP_ROW_DESC SQL_ATTR_IMP_PARAM_DESC SQL_ATTR_IMP_ROW_DESC SQL_ATTR_MAX_LENGTH SQL_ATTR_MAX_ROWS SQL_ATTR_PARAM_BIND_OFFSET_PTR SQL_ATTR_ROW_ARRAY_SIZE SQL_ATTR_ROW_BIND_OFFSET_PTR SQL_ATTR_ROW_NUMBER SQL_ATTR_ROWS_FETCHED_PTR SQL_ATTR_KEYSET_SIZE SQLSetConnectAttr Quando o parâmetro opção tem um dos seguintes valores, um valor de 64 bits é passado em * valor : SQL_MAX_LENGTH SQL_MAX_ROWS SQL_ROWSET_SIZE SQL_KEYSET_SIZE ReferênciasPode obter o MDAC 2.7 bibliotecas e ficheiros de cabeçalho necessários para suportar a compilação de 64 bits do Microsoft Platform SDK, que pode ser instalado a partir do seguinte Web site da Microsoft: http://www.microsoft.com/msdownload/platformsdk/sdkupdate/default.htm
(http://www.microsoft.com/msdownload/platformsdk/sdkupdate/default.htm)
Aplicações de ODBC precisará de utilizar os seguintes ficheiros:Ficheiros de cabeçalho:
Tradução automáticaIMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 298678
(http://support.microsoft.com/kb/298678/en-us/
)
| Outros Recursos Outros Sites de Suporte
ComunidadesTraduções de Artigos |






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email



Voltar ao topo