Removed:
Status.html
Modified:
MYODBCDriver/MYODBCDriverLib/SQLConnectW.cpp
MYODBCDriver/MYODBCDriverLib/SQLSetEnvAttr.cpp
MYSQLPlus/MYSQLPlusLib/MConnection.cpp
MYSQLPlus/MYSQLPlusLib/MEnvironment.cpp
doc/Project/SituationReport-20060505.ods
Log:
Modified: MYODBCDriver/MYODBCDriverLib/SQLConnectW.cpp
===================================================================
--- MYODBCDriver/MYODBCDriverLib/SQLConnectW.cpp 2006-05-02 20:50:18 UTC (rev 180)
+++ MYODBCDriver/MYODBCDriverLib/SQLConnectW.cpp 2006-05-02 22:51:00 UTC (rev 181)
@@ -17,6 +17,10 @@
SQLSMALLINT nNameLength3 )
{
MYODBCDbgEnter();
+
+ if ( !hDbc )
+ MYODBCDbgReturn( SQL_INVALID_HANDLE );
+
MYODBCDbgReturn( ((MConnection*)hDbc)->doConnect( psServerName, nNameLength1,
psUserName, nNameLength2, psAuthentication, nNameLength3 ) );
}
Modified: MYODBCDriver/MYODBCDriverLib/SQLSetEnvAttr.cpp
===================================================================
--- MYODBCDriver/MYODBCDriverLib/SQLSetEnvAttr.cpp 2006-05-02 20:50:18 UTC (rev 180)
+++ MYODBCDriver/MYODBCDriverLib/SQLSetEnvAttr.cpp 2006-05-02 22:51:00 UTC (rev 181)
@@ -33,6 +33,11 @@
The environment handle in the call to SQLSetEnvAttr is set to null, which
makes SQL_ATTR_CONNECTION_POOLING a process-level nAttribute.
*/
+ /*!
+ \internal MYODBC RULE
+
+ We do not support process level attributes.
+ */
if ( !hEnv )
MYODBCDbgReturn( SQL_ERROR );
Modified: MYSQLPlus/MYSQLPlusLib/MConnection.cpp
===================================================================
--- MYSQLPlus/MYSQLPlusLib/MConnection.cpp 2006-05-02 20:50:18 UTC (rev 180)
+++ MYSQLPlus/MYSQLPlusLib/MConnection.cpp 2006-05-02 22:51:00 UTC (rev 181)
@@ -131,9 +131,181 @@
{
MYODBCDbgEnter();
+ MYODBC_INS_DATASOURCE * pDataSource = NULL;
+ ulong nFlags = 0;
+ SQLRETURN nReturn = SQL_SUCCESS;
+
pDiagnostic->doClear();
- MYODBCDbgReturn( SQL_ERROR );
+ /*!
+ \internal ODBC RULE (DM)
+
+ The specified ConnectionHandle had already been used to establish a
+ connection with a data source, and the connection was still open or
+ the user was browsing for a connection.
+
+ Normally a DM thing but we also handle here for case when app linked
+ directly to driver.
+ */
+ if ( getState() != STATE_C2 )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_08002 ) );
+
+ /*!
+ \internal ODBC RULE (DM)
+
+ The value specified for argument NameLength1, NameLength2, or
+ NameLength3 was less than 0 but not equal to SQL_NTS.
+ */
+ if ( (nNameLength1 < 0 && nNameLength1 != SQL_NTS) ||
+ (nNameLength2 < 0 && nNameLength2 != SQL_NTS) ||
+ (nNameLength3 < 0 && nNameLength3 != SQL_NTS) )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY090 ) );
+
+ /*!
+ \internal ODBC RULE (DM)
+
+ The value specified for argument NameLength1 exceeded the
+ maximum length for a data source name.
+ */
+ if ( nNameLength1 > SQL_MAX_DSN_LENGTH )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY090 ) );
+
+
+ QString stringServerName;
+ QString stringUserName;
+ QString stringAuthentication;
+
+ if ( psServerName )
+ stringServerName.setUtf16( psServerName, ( nNameLength1 == SQL_NTS ? wcslen(
psServerName ) : nNameLength1 ) );
+
+ if ( psUserName )
+ stringUserName.setUtf16( psUserName, ( nNameLength2 == SQL_NTS ? wcslen(
psUserName ) : nNameLength2 ) );
+
+ if ( psAuthentication )
+ stringAuthentication.setUtf16( psAuthentication, ( nNameLength3 == SQL_NTS ?
wcslen( psAuthentication ) : nNameLength3 ) );
+
+ /*!
+ \internal ODBC RULE (DM)
+
+ ServerName was longer than SQL_MAX_DSN_LENGTH characters.
+ */
+ if ( psServerName && nNameLength1 == SQL_NTS &&
stringServerName.length() > SQL_MAX_DSN_LENGTH )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_IM010 ) );
+
+ /*!
+ \internal MYODBC RULE
+
+ psUserName was longer than SQL_MAX_OPTION_STRING_LENGTH characters.
+ */
+ if ( psUserName && nNameLength2 == SQL_NTS && stringUserName.length()
> SQL_MAX_OPTION_STRING_LENGTH )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY000, 0, "psUserName
is too long"));
+ if ( psUserName && nNameLength2 != SQL_NTS && nNameLength2 >
SQL_MAX_OPTION_STRING_LENGTH )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY000, 0, "psUserName
is too long"));
+
+ /*!
+ \internal MYODBC RULE
+
+ psAuthentication was longer than SQL_MAX_OPTION_STRING_LENGTH characters.
+ */
+ if ( psAuthentication && nNameLength3 == SQL_NTS &&
stringAuthentication.length() > SQL_MAX_OPTION_STRING_LENGTH )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY000, 0,
"pszAuthentication is too long"));
+ if ( psAuthentication && nNameLength3 != SQL_NTS && nNameLength3 >
SQL_MAX_OPTION_STRING_LENGTH )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY000, 0,
"pszAuthentication is too long"));
+
+ /*!
+ \internal ODBC RULE (DM)
+
+ ServerName argument that cannot be found, is a null pointer, or is
+ "DEFAULT", the Driver Manager connects to the default data source.
+ */
+ QString stringDSN = stringServerName;
+ if ( stringServerName.isEmpty() )
+ stringDSN = "DEFAULT";
+
+
+ MYODBCInsDataSource datasource;
+ datasource.setMode( MYODBCInsDataSource::DATASOURCE_MODE_DSN_VIEW );
+ datasource.setScope( MYODBCInsDataSource::DATASOURCE_SCOPE_BOTH );
+ if ( !datasource.doRead( stringDSN ) )
+ {
+ nReturn = pDiagnostic->doAppend( MDiagnostic::DIA_IM002 );
+ goto SQLConnectExit1;
+ }
+
+++++++++++++++++
+ /*!
+ \internal ODBC Rule
+
+ Precedence for UID is;
+ \li as provided to function
+ \li as found in system information
+
+ */
+ if ( pszUserName && pszUserName[0] != '\0' && (nNameLength2 > 0 ||
nNameLength2 == SQL_NTS) )
+ {
+ MYODBCCFree( pDataSource->pszUSER );
+ pDataSource->pszUSER = MYODBCCStrDup( pszUserName, nNameLength2 );
+ }
+
+ /*!
+ \internal ODBC Rule
+
+ Precedence for PWD is;
+ \li as provided to function
+ \li as found in system information
+
+ */
+ if ( pszAuthentication && pszAuthentication[0] != '\0' &&
(nNameLength3 > 0 || nNameLength3 == SQL_NTS) )
+ {
+ MYODBCCFree( pDataSource->pszPASSWORD );
+ pDataSource->pszPASSWORD = MYODBCCStrDup( pszAuthentication, nNameLength2 );
+ }
+
+ /* cleanup pDataSource such that we can use values for mysql_real_connect */
+ MYODBCInsDefaultDataSource( pDataSource );
+
+ /* allocate the MYSQL handle */
+ pDbc->pMySQL = mysql_init( NULL );
+/* mysql_options(pDbc->pMySQL, MYSQL_OPT_CONNECT_TIMEOUT, (const char
*)&pDbc->attr_connection_timeout); */
+
+ /* translate our flags into client while appling pre-connect flags */
+ nFlags = MYODBCDrvGetClientFlag( pDbc->pMySQL,
+ (ulong)atol( pDataSource->pszOPTION ),
+ (uint)pDbc->attr_login_timeout,
+ pDataSource->pszSTMT );
+
+ /* ask mysql for a connection */
+ if ( !mysql_real_connect( pDbc->pMySQL,
+ pDataSource->pszSERVER,
+ pDataSource->pszUSER,
+ pDataSource->pszPASSWORD,
+ pDataSource->pszDATABASE,
+ atoi( pDataSource->pszPORT ),
+ pDataSource->pszSOCKET,
+ (uint)nFlags) )
+ {
+ pDiagnostic->doAppend( MDiagnostic::DIA_HY000, mysql_errno( pDbc->pMySQL ),
(SQLCHAR*)mysql_error( pDbc->pMySQL ) );
+ mysql_close( pDbc->pMySQL );
+ pDbc->pMySQL = NULL;
+ nReturn = SQL_ERROR;
+ goto SQLConnectExit1;
+ }
+
+ /* free in case we were set before this connect */
+ MYODBCCFree( pDbc->attr_current_catalog );
+
+ pDbc->attr_current_catalog = MYODBCCStrDup( pDataSource->pszDATABASE, SQL_NTS
);
+ pDbc->nFlag = nFlags;
+ pDbc->nPort = atoi( pDataSource->pszPORT );
+ pDbc->pszDataSourceName = MYODBCCStrDup( pszDSN, SQL_NTS );
+ pDbc->pszPassword = MYODBCCStrDup( pDataSource->pszPASSWORD, SQL_NTS
);
+ pDbc->pszServer = MYODBCCStrDup( pDataSource->pszSERVER, SQL_NTS );
+ pDbc->pszUser = MYODBCCStrDup( pDataSource->pszUSER, SQL_NTS );
+ MYODBCDrvSetDbcState( pDbc, MYODBC_DRV_STATE_C4 );
+
+SQLConnectExit1:
+ MYODBCInsFreeDataSource( pDataSource );
+ MYODBCDbgReturn( nReturn );
}
SQLRETURN MConnection::doDisconnect()
Modified: MYSQLPlus/MYSQLPlusLib/MEnvironment.cpp
===================================================================
--- MYSQLPlus/MYSQLPlusLib/MEnvironment.cpp 2006-05-02 20:50:18 UTC (rev 180)
+++ MYSQLPlus/MYSQLPlusLib/MEnvironment.cpp 2006-05-02 22:51:00 UTC (rev 181)
@@ -67,7 +67,7 @@
case SQL_ATTR_OUTPUT_NTS:
MYODBCDbgReturn( setOutputNTS( (SQLINTEGER)pValue ) );
default:
- MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY000, 0,
"Invalid nAttribute." ) );
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY092 ) );
}
MYODBCDbgReturn( SQL_SUCCESS );
@@ -109,7 +109,7 @@
SQLSetEnvAttr
SQLSetStmtAttr
*/
-SQLRETURN MEnvironment::getEnvAttr( SQLINTEGER nAttribute, SQLPOINTER pValuePtr,
SQLINTEGER nBufferLength, SQLINTEGER *pnStringLengthPtr )
+SQLRETURN MEnvironment::getEnvAttr( SQLINTEGER nAttribute, SQLPOINTER pValue, SQLINTEGER
nBufferLength, SQLINTEGER *pnStringLength )
{
MYODBCDbgEnter();
@@ -120,23 +120,23 @@
*/
pDiagnostic->doClear();
- if ( !pValuePtr )
- MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY009, 0, "Invalid
arg 3." ) );
+ if ( !pValue )
+ MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY000 ) );
/* do it */
switch ( nAttribute )
{
case SQL_ATTR_CONNECTION_POOLING:
- *((SQLUINTEGER*)pValuePtr) = getConnectionPooling();
+ *((SQLUINTEGER*)pValue) = getConnectionPooling();
break;
case SQL_ATTR_CP_MATCH:
- *((SQLUINTEGER*)pValuePtr) = getCPMatch();
+ *((SQLUINTEGER*)pValue) = getCPMatch();
break;
case SQL_ATTR_ODBC_VERSION:
- *((SQLINTEGER*)pValuePtr) = getODBCVersion();
+ *((SQLINTEGER*)pValue) = getODBCVersion();
break;
case SQL_ATTR_OUTPUT_NTS:
- *((SQLINTEGER*)pValuePtr) = getOutputNTS();
+ *((SQLINTEGER*)pValue) = getOutputNTS();
break;
default:
MYODBCDbgReturn( pDiagnostic->doAppend( MDiagnostic::DIA_HY092 ) );
@@ -192,7 +192,6 @@
MYODBCDbgEnter();
/*!
- \todo
\internal ODBC RULE
This call must be made before the application allocates the shared
Deleted: Status.html
===================================================================
--- Status.html 2006-05-02 20:50:18 UTC (rev 180)
+++ Status.html 2006-05-02 22:51:00 UTC (rev 181)
@@ -1,971 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
- <TITLE></TITLE>
- <META NAME="GENERATOR" CONTENT="OpenOffice.org 1.1.3 (Linux)">
- <META NAME="CREATED" CONTENT="20050724;21051500">
- <META NAME="CHANGED" CONTENT="20050725;9454300">
-</HEAD>
-<BODY LANG="en-US" DIR="LTR">
-<P STYLE="margin-top: 0.17in; page-break-after: avoid"><FONT FACE="Albany,
sans-serif"><FONT SIZE=4>MySQL
-Connector/ODBC v5 Alpha 1 2005.07.24</FONT></FONT></P>
-<P STYLE="margin-top: 0.17in; page-break-after: avoid"><FONT FACE="Albany,
sans-serif"><FONT SIZE=4>Status</FONT></FONT></P>
-<HR>
-<P STYLE="margin-top: 0.17in; page-break-after: avoid"><FONT FACE="Albany,
sans-serif"><FONT SIZE=4>Brief</FONT></FONT></P>
-<P><FONT FACE="OpenSymbol">This release of Connector/ODBC v5 should
-have enough functionality to make this driver useful to many people.
-This driver can be used to do the most typical calls as follows;</FONT></P>
-<UL>
- <LI><P><FONT FACE="OpenSymbol">SQLAllocHandle –
environment</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">SQLAllocHandle –
connection</FONT></P>
- <LI><P><FONT
FACE="OpenSymbol">SQLConnect/SQLDriverConnect</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">SQLAllocHandle –
statement</FONT></P>
- <LI><P><FONT
FACE="OpenSymbol">SQLPrepare/SQLExecute/SQLExecDirect</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">SQLFetch</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">SQLGetData</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">SQLFreeHandle –
statement</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">SQLFreeHandle –
connection</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">SQLFreeHandle –
environment</FONT></P>
-</UL>
-<P><FONT FACE="OpenSymbol">This driver supports the regular MYSQL_RES
-and MYSQL_STMT methods of generating and managing results. The
-MYSQL_RES method is used by default and can not be changed without
-rebuilding the driver. A connect attribute/option will be created for
-this in the future.</FONT></P>
-<P><FONT FACE="OpenSymbol">The main things which are lacking from
-this version of the driver, but are planned to be included in v5,
-are;</FONT></P>
-<UL>
- <LI><P><FONT FACE="OpenSymbol">UNICODE</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">full support for binding
columns</FONT></P>
- <LI><P><FONT FACE="OpenSymbol">full support for binding
parameters</FONT></P>
-</UL>
-<P><FONT FACE="OpenSymbol">This version of the driver does not work
-with some popular applications such as MS Access but this is being
-worked on.</FONT></P>
-<P><BR><BR>
-</P>
-<P STYLE="margin-top: 0.17in; page-break-after: avoid"><FONT FACE="Albany,
sans-serif"><FONT SIZE=4>Driver
-API</FONT></FONT></P>
-<P><FONT FACE="OpenSymbol">The following table lists all of the
-driver functions and states the status for each. </FONT>
-</P>
-<TABLE WIDTH=100% BORDER=1 CELLPADDING=5 CELLSPACING=4>
- <COL WIDTH=85*>
- <COL WIDTH=85*>
- <COL WIDTH=85*>
- <THEAD>
- <TR VALIGN=TOP>
- <TH WIDTH=33%>
- <P>Function</P>
- </TH>
- <TH WIDTH=33%>
- <P>Status</P>
- </TH>
- <TH WIDTH=33%>
- <P>Comment</P>
- </TH>
- </TR>
- </THEAD>
- <TBODY>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLAllocConnect</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLAllocHandle.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLAllocEnv</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLAllocHandle.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLAllocHandle</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLAllocStmt</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLAllocHandle.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLBindCol</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Bind will occur but is not used yet. Use SQLGetData for now.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLBindParameter</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Bind will occur but is not used yet. One must build SQL with
- parameters in it until bind is used.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLBrowseConnect</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet. Use SQLConnect or SQLDriverConnect for
- now.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLBulkOperations</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet. Use SQL statements to handle this for
- now.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLCancel</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLFreeStmt with SQL_CLOSE.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLCloseCursor</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLColAttribute</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLGetDescField with IRD.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLColAttributes</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLColAttribute.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLColumnPrivileges</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLColumns</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Database is mapped into Catalog and Schema is empty.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLConnect</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Connection options need to be reworked.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLCopyDesc</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLDescribeCol</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to several SQLGetDescField calls.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLDescribeParam</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLGetDescField with IPD.
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLDisconnect</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLDriverConnect</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Connection options need to be reworked.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLEndTran</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Does commit or rollback for connection handle.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLError</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLGetDiagRec.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLExecDirect</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Does not escape SQL.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLExecute</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.8" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>80.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Does not process bound parameters yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLExtendedFetch</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet. Use SQLFetch for now.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLFetch</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.8" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>80.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Does not process bound columns yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLFetchScroll</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLExtendedFetch.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLForeignKeys</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemeted yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLFreeConnect</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLFreeHandle.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLFreeEnv</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLFreeHandle.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLFreeHandle</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLFreeStmt</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>May map to SQLFreeHandle or SQLSetDescField (depending upon
- option).</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetConnectAttr</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetConnectOption</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Map map to SQLGetConnectAttr (depending upon option).</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetCursorName</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetData</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetDescField</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetDescRec</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetDiagField</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetDiagRec</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetEnvAttr</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetFunctions</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Optimistically states all supported.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetInfo</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Derived from 3.51 code. Needs more work.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetStmtAttr</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>May map to SQLGetDescField (depending upon the attribute).</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetStmtOption</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLGetStmtAttr.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLGetTypeInfo</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Derived from 3.51 code. Needs more work.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLMoreResults</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not supported yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLNativeSql</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not supported yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLNumParams</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLNumResultCols</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLParamData</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLParamOptions</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLSetStmtAttr.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLPrepare</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.8" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>80.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Does not process SQL for; escape sequences, parameter markers
- or anything else – yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLPrimaryKeys</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLProcedureColumns</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLProcedures</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLPutData</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLRowCount</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetConnectAttr</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Needs more work.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetConnectOption</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLSetConnectAttr.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetCursorName</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetDescField</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetDescRec</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetEnvAttr</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.99" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>99.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>May need to loosen sanity checks a bit.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetPos</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetScrollOptions</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Mapped to SQLSetDescField.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetStmtAttr</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>May be mapped to SQLSetDescField (depending upon attribute).</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSetStmtOption</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Map be mapped to SQLSetStmtAttr (depending upon the
- attribute).</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLSpecialColumns</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLStatistics</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Database is mapped to catalog.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLTablePrivileges</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>10.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented yet.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLTables</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Database is mapped to catalog.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>SQLTransact</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="1" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>100.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P><BR>
- </P>
- </TD>
- </TR>
- </TBODY>
-</TABLE>
-<P><BR><BR>
-</P>
-<P STYLE="margin-top: 0.17in; page-break-after: avoid"><FONT FACE="Albany,
sans-serif"><FONT SIZE=4>Setup
-API</FONT></FONT></P>
-<P><FONT FACE="OpenSymbol">The following table lists all of the setup
-functions and states the status for each.</FONT></P>
-<TABLE WIDTH=100% BORDER=1 CELLPADDING=5 CELLSPACING=4>
- <COL WIDTH=85*>
- <COL WIDTH=85*>
- <COL WIDTH=85*>
- <THEAD>
- <TR VALIGN=TOP>
- <TH WIDTH=33%>
- <P>Function</P>
- </TH>
- <TH WIDTH=33%>
- <P>Status</P>
- </TH>
- <TH WIDTH=33%>
- <P>Comment</P>
- </TH>
- </TR>
- </THEAD>
- <TBODY>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>ConfigDriver</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>0.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented.</P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>ConfigDSN</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0.9" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>90.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Needs more work on portability. Connection attributes/options
- need to be reworked.
- </P>
- </TD>
- </TR>
- <TR>
- <TD WIDTH=33% VALIGN=TOP>
- <P>ConfigTranslator</P>
- </TD>
- <TD WIDTH=33% VALIGN=BOTTOM SDVAL="0" SDNUM="9;0;0.00%">
- <P ALIGN=RIGHT>0.00%</P>
- </TD>
- <TD WIDTH=33% VALIGN=TOP>
- <P>Not implemented.</P>
- </TD>
- </TR>
- </TBODY>
-</TABLE>
-<P><BR><BR>
-</P>
-<HR>
-<P><BR><BR>
-</P>
-</BODY>
-</HTML>
\ No newline at end of file
Modified: doc/Project/SituationReport-20060505.ods
===================================================================
(Binary files differ)
| Thread |
|---|
| • Connector/ODBC 5 commit: r181 - / MYODBCDriver/MYODBCDriverLib MYSQLPlus/MYSQLPlusLib doc/Project | pharvey | 3 May |