List:Commits« Previous MessageNext Message »
From:pharvey Date:June 14 2006 3:32pm
Subject:Connector/ODBC 5 commit: r333 - trunk/MYSQLPlus/MYSQLPlusLib
View as plain text  
Modified:
   trunk/MYSQLPlus/MYSQLPlusLib/MResult.cpp
Log:
- work on SQLBindParameter

Modified: trunk/MYSQLPlus/MYSQLPlusLib/MResult.cpp
===================================================================
--- trunk/MYSQLPlus/MYSQLPlusLib/MResult.cpp	2006-06-14 14:08:11 UTC (rev 332)
+++ trunk/MYSQLPlus/MYSQLPlusLib/MResult.cpp	2006-06-14 15:32:56 UTC (rev 333)
@@ -2512,9 +2512,10 @@
 {
     MYODBCDbgEnter();
 
-        case SQL_C_XML:
-            pResultPutData->variantData.setValue( QString::fromAscii( (SQLCHAR*)pData,
pResultPutData->pDescriptorRecordAPD->getOctetLength() ) ); ;
-            MYODBCDbgReturn( SQL_SUCCESS );
+    if ( pResultPutData->pDescriptorRecordAPD->getConciseType() == SQL_C_WCHAR )
+        pResultPutData->variantData.setValue( QString::fromUtf16(
(char*)pResultPutData->pDescriptorRecordAPD->getDataPtr(),
pResultPutData->pDescriptorRecordAPD->getOctetLength() ) );
+    else
+        pResultPutData->variantData.setValue( QString::fromAscii(
(char*)pResultPutData->pDescriptorRecordAPD->getDataPtr(),
pResultPutData->pDescriptorRecordAPD->getOctetLength() ) );
 
     switch ( pResultPutData->pDescriptorRecordIPD->getConciseType() )
     {
@@ -2524,6 +2525,8 @@
         case SQL_WCHAR:
         case SQL_WVARCHAR:
         case SQL_WLONGVARCHAR:
+            pResultPutData->variantData.setValue( "'" +
pResultPutData->variantData.toString() + "'" );
+            MYODBCDbgReturn( SQL_SUCCESS );
         case SQL_DECIMAL:
         case SQL_NUMERIC:
         case SQL_TINYINT:
@@ -2540,7 +2543,9 @@
         case SQL_INTERVAL_HOUR:
         case SQL_INTERVAL_MINUTE:
         case SQL_INTERVAL_SECOND:
-            MYODBCDbgReturn( toSQL( pResultPutData ) );
+            if ( pResultPutData->variantData.convert( qlonglong ) )
+                MYODBCDbgReturn( SQL_SUCCESS );
+            break;
     }
 
     /*!
@@ -2619,7 +2624,10 @@
         case SQL_WCHAR:
         case SQL_WVARCHAR:
         case SQL_WLONGVARCHAR:
-
+            if ( !pResultPutData->variantData.convert( QString ) )
+                break;
+            pResultPutData->variantData.setValue( "'" +
pResultPutData->variantData.toString() + "'" );
+            MYODBCDbgReturn( SQL_SUCCESS );
         case SQL_DECIMAL:
         case SQL_NUMERIC:
         case SQL_TINYINT:
@@ -2636,6 +2644,7 @@
         case SQL_INTERVAL_HOUR:
         case SQL_INTERVAL_MINUTE:
         case SQL_INTERVAL_SECOND:
+            MYODBCDbgReturn( SQL_SUCCESS );
     }
 
     /*!
@@ -2652,7 +2661,7 @@
 {
     MYODBCDbgEnter();
 
-    pResultPutData->variantData.setValue(
(SQLCHAR*)pResultPutData->pDescriptorRecordAPD->getDataPtr() );
+    pResultPutData->variantData.setValue(
*(SQLCHAR*)pResultPutData->pDescriptorRecordAPD->getDataPtr() );
 
     switch ( pResultPutData->pDescriptorRecordIPD->getConciseType() )
     {
@@ -2726,6 +2735,7 @@
         case SQL_BIT:
             if ( pResultPutData->variantData.convert( qlonglong ) )
                 MYODBCDbgReturn( SQL_SUCCESS );
+            break;
         case SQL_TYPE_DATE:
         case SQL_TYPE_TIME:
         case SQL_TYPE_TIMESTAMP:

Thread
Connector/ODBC 5 commit: r333 - trunk/MYSQLPlus/MYSQLPlusLibpharvey14 Jun