Applied patch [ 1304191 ] support for MEMO fields
Francesco Montorsi git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -413,11 +413,13 @@ void wxDbTable::setCbValueForColumn(int columnIndex)
|
||||
switch(colDefs[columnIndex].DbDataType)
|
||||
{
|
||||
case DB_DATA_TYPE_VARCHAR:
|
||||
case DB_DATA_TYPE_MEMO:
|
||||
if (colDefs[columnIndex].Null)
|
||||
colDefs[columnIndex].CbValue = SQL_NULL_DATA;
|
||||
else
|
||||
colDefs[columnIndex].CbValue = SQL_NTS;
|
||||
break;
|
||||
break;
|
||||
case DB_DATA_TYPE_INTEGER:
|
||||
if (colDefs[columnIndex].Null)
|
||||
colDefs[columnIndex].CbValue = SQL_NULL_DATA;
|
||||
@@ -484,6 +486,11 @@ bool wxDbTable::bindParams(bool forUpdate)
|
||||
precision = colDefs[i].SzDataObj;
|
||||
scale = 0;
|
||||
break;
|
||||
case DB_DATA_TYPE_MEMO:
|
||||
fSqlType = pDb->GetTypeInfMemo().FsqlType;
|
||||
precision = colDefs[i].SzDataObj;
|
||||
scale = 0;
|
||||
break;
|
||||
case DB_DATA_TYPE_INTEGER:
|
||||
fSqlType = pDb->GetTypeInfInteger().FsqlType;
|
||||
precision = pDb->GetTypeInfInteger().Precision;
|
||||
@@ -1414,6 +1421,9 @@ bool wxDbTable::CreateTable(bool attemptDrop)
|
||||
case DB_DATA_TYPE_VARCHAR:
|
||||
cout << pDb->GetTypeInfVarchar().TypeName << wxT("(") << (int)(colDefs[i].SzDataObj / sizeof(wxChar)) << wxT(")");
|
||||
break;
|
||||
case DB_DATA_TYPE_MEMO:
|
||||
cout << pDb->GetTypeInfMemo().TypeName;
|
||||
break;
|
||||
case DB_DATA_TYPE_INTEGER:
|
||||
cout << pDb->GetTypeInfInteger().TypeName;
|
||||
break;
|
||||
@@ -1455,6 +1465,9 @@ bool wxDbTable::CreateTable(bool attemptDrop)
|
||||
case DB_DATA_TYPE_VARCHAR:
|
||||
sqlStmt += pDb->GetTypeInfVarchar().TypeName;
|
||||
break;
|
||||
case DB_DATA_TYPE_MEMO:
|
||||
sqlStmt += pDb->GetTypeInfMemo().TypeName;
|
||||
break;
|
||||
case DB_DATA_TYPE_INTEGER:
|
||||
sqlStmt += pDb->GetTypeInfInteger().TypeName;
|
||||
break;
|
||||
@@ -2349,6 +2362,11 @@ wxDbColDataPtr* wxDbTable::SetColDefs(wxDbColInf *pColInfs, UWORD numCols)
|
||||
pColDataPtrs[index].SzDataObj = pColInfs[index].bufferSize+(1*sizeof(wxChar));
|
||||
pColDataPtrs[index].SqlCtype = SQL_C_WXCHAR;
|
||||
break;
|
||||
case DB_DATA_TYPE_MEMO:
|
||||
pColDataPtrs[index].PtrDataObj = new wxChar[pColInfs[index].bufferSize+(1*sizeof(wxChar))];
|
||||
pColDataPtrs[index].SzDataObj = pColInfs[index].bufferSize+(1*sizeof(wxChar));
|
||||
pColDataPtrs[index].SqlCtype = SQL_C_WXCHAR;
|
||||
break;
|
||||
case DB_DATA_TYPE_INTEGER:
|
||||
// Can be long or short
|
||||
if (pColInfs[index].bufferSize == sizeof(long))
|
||||
|
||||
Reference in New Issue
Block a user