25#include <rtl/ustrbuf.hxx>
27#include <systools/win32/oleauto.hxx>
31void WpADOCatalog::Create()
47 sal::systools::BStr aBSTR;
49 return OUString(aBSTR);
55 sal::systools::BStr bstr(aCon);
56 bool bErg = SUCCEEDED(
pInterface->put_ConnectionString(bstr));
98 sal::systools::BStr sStr1(CommandText);
99 bool bErg = SUCCEEDED(
pInterface->Execute(sStr1,&RecordsAffected,
Options,
reinterpret_cast<ADORecordset**
>(ppiRset)));
107 return SUCCEEDED(
pInterface->BeginTrans(&nIso));
119 return SUCCEEDED(
pInterface->RollbackTrans());
125 sal::systools::BStr sStr1(ConnectionString);
126 sal::systools::BStr sStr2(UserID);
127 sal::systools::BStr sStr3(
Password);
135 return SUCCEEDED(
pInterface->get_Errors(pErrors));
141 sal::systools::BStr aBSTR;
pInterface->get_DefaultDatabase(&aBSTR);
142 return OUString(aBSTR);
148 sal::systools::BStr bstr(_bstr);
149 bool bErg = SUCCEEDED(
pInterface->put_DefaultDatabase(bstr));
157 IsolationLevelEnum eNum=adXactUnspecified;
165 return SUCCEEDED(
pInterface->put_IsolationLevel(eNum));
179 return SUCCEEDED(
pInterface->put_Attributes(nRet));
185 CursorLocationEnum eNum=adUseNone;
193 return SUCCEEDED(
pInterface->put_CursorLocation(eNum));
199 ConnectModeEnum eNum=adModeUnknown;
213 sal::systools::BStr aBSTR;
pInterface->get_Provider(&aBSTR);
214 return OUString(aBSTR);
220 sal::systools::BStr bstr(_bstr);
221 return SUCCEEDED(
pInterface->put_Provider(bstr));
235 return SUCCEEDED(
pInterface->OpenSchema(eNum,Restrictions,SchemaID,pprset));
241 sal::systools::BStr aBSTR;
243 return OUString(aBSTR);
249 return SUCCEEDED(
pInterface->putref_ActiveConnection(rCon));
260 sal::systools::COMReference<IClassFactory2> pInterface2;
263 sal::systools::COMReference<ADOCommand> pCommand;
265 HRESULT
hr = pInterface2->CreateInstanceLic(
nullptr,
269 reinterpret_cast<void**
>(&pCommand));
287 sal::systools::BStr aBSTR;
289 return OUString(aBSTR);
295 sal::systools::BStr bstr(aCon);
296 bool bErg = SUCCEEDED(
pInterface->put_CommandText(bstr));
318 VARIANT_BOOL bPrepared = VARIANT_FALSE;
320 return bPrepared == VARIANT_TRUE;
326 return SUCCEEDED(
pInterface->put_Prepared(bPrepared));
338 ADOParameter* pPara =
nullptr;
339 sal::systools::BStr bstr(_bstr);
342 return bErg ? pPara :
nullptr;
348 ADOParameters* pPara=
nullptr;
356 return SUCCEEDED(
pInterface->put_CommandType(lCmdType));
362 CommandTypeEnum eNum=adCmdUnspecified;
371 sal::systools::BStr aBSTR;
373 return OUString(aBSTR);
379 sal::systools::BStr bstr(
Name);
380 bool bErg = SUCCEEDED(
pInterface->put_Name(bstr));
393 sal::systools::BStr aBSTR;
395 return OUString(aBSTR);
401 sal::systools::BStr aBSTR;
403 return OUString(aBSTR);
417 sal::systools::BStr aBSTR;
419 return OUString(aBSTR);
441 ADO_LONGPTR nActualSize=0;
449 sal_Int32 eADOSFieldAttributes=0;
450 pInterface->get_Attributes(&eADOSFieldAttributes);
451 return eADOSFieldAttributes;
464 ADO_LONGPTR nDefinedSize=0;
473 sal::systools::BStr aBSTR;
475 return OUString(aBSTR);
481 DataTypeEnum
eType=adEmpty;
504 return (SUCCEEDED(
pInterface->put_Value(aVariant)));
574 return (SUCCEEDED(
pInterface->put_Precision(_prec)));
580 return (SUCCEEDED(
pInterface->put_NumericScale(_prec)));
592 return (SUCCEEDED(
pInterface->put_DefinedSize(_nDefSize)));
598 return (SUCCEEDED(
pInterface->put_Attributes(_nDefSize)));
619 return (SUCCEEDED(
pInterface->put_Value(aValVar)));
625 sal::systools::BStr aBSTR;
627 return OUString(aBSTR);
633 DataTypeEnum
eType=adEmpty;
641 sal_Int32 eADOSFieldAttributes=0;
642 pInterface->get_Attributes(&eADOSFieldAttributes);
643 return eADOSFieldAttributes;
649 return (SUCCEEDED(
pInterface->put_Attributes(_nDefSize)));
653 sal::systools::COMReference<IClassFactory2> pInterface2;
656 sal::systools::COMReference<ADORecordset> pRec;
657 HRESULT
hr = pInterface2->CreateInstanceLic(
nullptr,
661 reinterpret_cast<void**
>(&pRec));
670 VARIANT ActiveConnection,
672 LockTypeEnum LockType,
683 LockTypeEnum
eType=adLockUnspecified;
711 VARIANT_BOOL bSupports=VARIANT_FALSE;
712 pInterface->Supports(CursorOptions,&bSupports);
713 return bSupports == VARIANT_TRUE;
719 PositionEnum_Param aTemp=adPosUnknown;
753 CompareEnum eNum=adCompareNotComparable;
761 return SUCCEEDED(
pInterface->put_Bookmark(pSafeAr));
783 VARIANT_BOOL bIsAtBOF=VARIANT_FALSE;
785 return bIsAtBOF == VARIANT_TRUE;
791 VARIANT_BOOL bIsAtEOF=VARIANT_FALSE;
793 return bIsAtEOF == VARIANT_TRUE;
831 return SUCCEEDED(
pInterface->NextRecordset(&RecordsAffected,ppiRset));
837 return SUCCEEDED(
pInterface->get_RecordCount(&_nRet));
843 return SUCCEEDED(
pInterface->get_MaxRecords(&_nRet));
849 return SUCCEEDED(
pInterface->put_MaxRecords(_nRet));
855 return SUCCEEDED(
pInterface->get_CursorType(&_nRet));
861 return SUCCEEDED(
pInterface->put_CursorType(_nRet));
867 return SUCCEEDED(
pInterface->get_LockType(&_nRet));
873 return SUCCEEDED(
pInterface->put_LockType(_nRet));
879 return SUCCEEDED(
pInterface->get_CacheSize(&_nRet));
885 return SUCCEEDED(
pInterface->put_CacheSize(_nRet));
891 return SUCCEEDED(
pInterface->UpdateBatch(AffectRecords));
897 sal::systools::BStr aBSTR;
899 return OUString(aBSTR);
905 DataTypeEnum
eType=adEmpty;
919 sal_Int32 eADOSFieldAttributes=0;
920 pInterface->get_Attributes(&eADOSFieldAttributes);
921 return eADOSFieldAttributes;
943 ParameterDirectionEnum alParmDirection=adParamUnknown;
945 return alParmDirection;
965 return (SUCCEEDED(
pInterface->put_Value(aVariant)));
970 return (SUCCEEDED(
pInterface->AppendChunk(aVariant)));
975 return (SUCCEEDED(
pInterface->put_Size(_nSize)));
981 sal::systools::BStr aBSTR;
983 return OUString(aBSTR);
989 sal::systools::BStr aBSTR;
991 return OUString(aBSTR);
997 sal::systools::BStr bstr(_rName);
1003 sal::systools::BStr bstr(_rName);
1010 DataTypeEnum eNum = adVarChar;
1059 SortOrderEnum nPrec=adSortAscending;
1073 ColumnAttributesEnum eNum=adColNullable;
1081 return SUCCEEDED(
pInterface->put_Attributes(_eNum));
1095 sal::systools::BStr aBSTR;
1097 return OUString(aBSTR);
1103 sal::systools::BStr bstr(_rName);
1110 KeyTypeEnum eNum=adKeyPrimary;
1124 sal::systools::BStr aBSTR;
1126 return OUString(aBSTR);
1132 sal::systools::BStr bstr(_rName);
1139 RuleEnum eNum = adRINone;
1153 RuleEnum eNum = adRINone;
1175 sal::systools::BStr aBSTR;
1177 return OUString(aBSTR);
1183 sal::systools::BStr bstr(_rName);
1190 VARIANT_BOOL eNum = VARIANT_FALSE;
1192 return eNum == VARIANT_TRUE;
1198 pInterface->put_Clustered(_b ? VARIANT_TRUE : VARIANT_FALSE);
1204 VARIANT_BOOL eNum = VARIANT_FALSE;
1206 return eNum == VARIANT_TRUE;
1212 pInterface->put_Unique(_b ? VARIANT_TRUE : VARIANT_FALSE);
1218 VARIANT_BOOL eNum = VARIANT_FALSE;
1220 return eNum == VARIANT_TRUE;
1226 pInterface->put_PrimaryKey(_b ? VARIANT_TRUE : VARIANT_FALSE);
1278 ADOProcedures* pRet =
nullptr;
1286 sal::systools::BStr aBSTR;
1288 return OUString(aBSTR);
1294 sal::systools::BStr bstr(_rName);
1301 sal::systools::BStr aBSTR;
1303 return OUString(aBSTR);
1349 sal::systools::BStr aBSTR;
1351 return OUString(aBSTR);
1368 sal::systools::BStr aBSTR;
1370 return OUString(aBSTR);
1375 sal::systools::BStr bstr(_rName);
1383 RightsEnum Rights=adRightNone;
1410 sal::systools::BStr aBSTR;
1412 return OUString(aBSTR);
1417 sal::systools::BStr bstr(_rName);
1423 sal::systools::BStr sStr1(_rPwd);
1424 sal::systools::BStr sStr2(_rNewPwd);
1425 bool bErg = SUCCEEDED(
pInterface->ChangePassword(sStr1, sStr2));
1440 RightsEnum Rights=adRightNone;
1461 SAFEARRAYBOUND rgsabound[1];
1462 SAFEARRAY *psa =
nullptr;
1466 rgsabound[0].lLbound = 0;
1467 rgsabound[0].cElements = std::size(varCriteria);
1468 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1471 if(catalog.hasValue())
1472 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1474 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1475 if(schema.getLength() && schema.toChar() !=
'%')
1477 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1480 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1482 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1483 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1484 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1493 ADORecordset *pRecordset =
nullptr;
1494 OpenSchema(adSchemaForeignKeys,vsa,vtEmpty,&pRecordset);
1501 SAFEARRAYBOUND rgsabound[1];
1502 SAFEARRAY *psa =
nullptr;
1506 rgsabound[0].lLbound = 0;
1507 rgsabound[0].cElements = std::size(varCriteria);
1508 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1511 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1512 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1513 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1515 if(catalog.hasValue())
1516 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1518 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1519 if(schema.getLength() && schema.toChar() !=
'%')
1521 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1524 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1533 ADORecordset *pRecordset =
nullptr;
1534 OpenSchema(adSchemaForeignKeys,vsa,vtEmpty,&pRecordset);
1543 SAFEARRAYBOUND rgsabound[1];
1544 SAFEARRAY *psa =
nullptr;
1548 rgsabound[0].lLbound = 0;
1549 rgsabound[0].cElements = std::size(varCriteria);
1550 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1553 if(catalog.hasValue())
1554 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1556 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1557 if(schema.getLength() && schema.toChar() !=
'%')
1559 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1562 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1572 ADORecordset *pRecordset =
nullptr;
1573 OpenSchema(adSchemaPrimaryKeys,vsa,vtEmpty,&pRecordset);
1579 const css::uno::Any& catalog,
const OUString& schema, std::u16string_view table,
1583 SAFEARRAYBOUND rgsabound[1];
1584 SAFEARRAY *psa =
nullptr;
1588 rgsabound[0].lLbound = 0;
1589 rgsabound[0].cElements = std::size(varCriteria);
1590 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1593 if(catalog.hasValue())
1594 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1596 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1597 if(schema.getLength() && schema.toChar() !=
'%')
1599 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1601 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1603 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1606 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1615 ADORecordset *pRecordset =
nullptr;
1616 OpenSchema(adSchemaIndexes,vsa,vtEmpty,&pRecordset);
1622 const OUString& schemaPattern,
1623 std::u16string_view tableNamePattern )
1625 SAFEARRAYBOUND rgsabound[1];
1626 SAFEARRAY *psa =
nullptr;
1630 rgsabound[0].lLbound = 0;
1631 rgsabound[0].cElements = std::size(varCriteria);
1632 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1635 if(catalog.hasValue())
1636 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1638 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1639 if(schemaPattern.getLength() && schemaPattern.toChar() !=
'%')
1641 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1645 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1647 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1648 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1657 ADORecordset *pRecordset =
nullptr;
1658 OpenSchema(adSchemaTablePrivileges,vsa,vtEmpty,&pRecordset);
1664 const OUString& primarySchema,
1665 std::u16string_view primaryTable,
1666 const css::uno::Any& foreignCatalog,
1667 const OUString& foreignSchema,
1668 std::u16string_view foreignTable)
1671 SAFEARRAYBOUND rgsabound[1];
1672 SAFEARRAY *psa =
nullptr;
1676 rgsabound[0].lLbound = 0;
1677 rgsabound[0].cElements = std::size(varCriteria);
1678 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1681 if(primaryCatalog.hasValue())
1682 varCriteria[
nPos].
setString(::comphelper::getString(primaryCatalog));
1684 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1685 if(primarySchema.getLength() && primarySchema.toChar() !=
'%')
1687 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1690 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1692 if(foreignCatalog.hasValue())
1693 varCriteria[
nPos].
setString(::comphelper::getString(foreignCatalog));
1695 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1696 if(foreignSchema.getLength() && foreignSchema.toChar() !=
'%')
1698 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1701 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1710 ADORecordset *pRecordset =
nullptr;
1711 OpenSchema(adSchemaForeignKeys,vsa,vtEmpty,&pRecordset);
1717 const OUString& schemaPattern,
1718 std::u16string_view procedureNamePattern )
1720 SAFEARRAYBOUND rgsabound[1];
1721 SAFEARRAY *psa =
nullptr;
1725 rgsabound[0].lLbound = 0;
1726 rgsabound[0].cElements = std::size(varCriteria);
1727 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1730 if(catalog.hasValue())
1731 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1733 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1734 if(schemaPattern.getLength() && schemaPattern.toChar() !=
'%')
1736 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1740 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1749 ADORecordset *pRecordset =
nullptr;
1750 OpenSchema(adSchemaProcedures,vsa,vtEmpty,&pRecordset);
1756 const OUString& schemaPattern,
1757 std::u16string_view procedureNamePattern,
1758 std::u16string_view columnNamePattern )
1761 SAFEARRAYBOUND rgsabound[1];
1762 SAFEARRAY *psa =
nullptr;
1766 rgsabound[0].lLbound = 0;
1767 rgsabound[0].cElements = std::size(varCriteria);
1768 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1771 if(catalog.hasValue())
1772 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1774 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1775 if(schemaPattern.getLength() && schemaPattern.toChar() !=
'%')
1777 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1781 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1785 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1794 ADORecordset *pRecordset =
nullptr;
1795 OpenSchema(adSchemaProcedureParameters,vsa,vtEmpty,&pRecordset);
1801 const OUString& schemaPattern,
1802 std::u16string_view tableNamePattern,
1803 const css::uno::Sequence< OUString >& types )
1811 if ( catalog.hasValue() && (catalog >>=
sCatalog) )
1815 if(schemaPattern.getLength() && schemaPattern.toChar() !=
'%')
1824 const OUString* pIter = types.getConstArray();
1825 const OUString* pEnd = pIter + types.getLength();
1826 for( ; pIter != pEnd ; ++pIter)
1828 if (
aTypes.getLength() )
1833 OUString sTypeNames =
aTypes.makeStringAndClear();
1834 if ( sTypeNames.getLength() )
1838 const sal_Int32 nCrit = std::size(varCriteria);
1839 SAFEARRAYBOUND rgsabound[1];
1840 rgsabound[0].lLbound = 0;
1841 rgsabound[0].cElements = nCrit;
1842 SAFEARRAY *psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1845 for(
LONG i = 0 ;
i < nCrit && SUCCEEDED(
hr );
i++)
1847 hr = SafeArrayPutElement(psa, &
i,&varCriteria[
i]);
1857 ADORecordset *pRecordset =
nullptr;
1858 OpenSchema(adSchemaTables,vsa,vtEmpty,&pRecordset);
1864 const OUString& schemaPattern,
1865 std::u16string_view tableNamePattern,
1866 std::u16string_view columnNamePattern )
1869 SAFEARRAYBOUND rgsabound[1];
1870 SAFEARRAY *psa =
nullptr;
1874 rgsabound[0].lLbound = 0;
1875 rgsabound[0].cElements = std::size(varCriteria);
1876 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1879 if(catalog.hasValue())
1880 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1882 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1883 if(schemaPattern.getLength() && schemaPattern.toChar() !=
'%')
1885 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1889 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1892 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1901 ADORecordset *pRecordset =
nullptr;
1902 OpenSchema(adSchemaColumns,vsa,vtEmpty,&pRecordset);
1908 const OUString& schema,
1909 std::u16string_view table,
1910 std::u16string_view columnNamePattern )
1913 SAFEARRAYBOUND rgsabound[1];
1914 SAFEARRAY *psa =
nullptr;
1918 rgsabound[0].lLbound = 0;
1919 rgsabound[0].cElements = std::size(varCriteria);
1920 psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1923 if(catalog.hasValue())
1924 varCriteria[
nPos].
setString(::comphelper::getString(catalog));
1926 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1927 if(schema.getLength() && schema.toChar() !=
'%')
1929 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1932 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1935 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1944 ADORecordset *pRecordset =
nullptr;
1945 OpenSchema(adSchemaColumnPrivileges,vsa,vtEmpty,&pRecordset);
1954 const int nCrit = std::size(varCriteria);
1956 SAFEARRAYBOUND rgsabound[1];
1957 rgsabound[0].lLbound = 0;
1958 rgsabound[0].cElements = nCrit;
1959 SAFEARRAY *psa = SafeArrayCreate(
VT_VARIANT, 1, rgsabound );
1962 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1963 SafeArrayPutElement(psa,&
nPos,&varCriteria[
nPos]);
nPos++;
1972 ADORecordset *pRec=
nullptr;
1973 OpenSchema(adSchemaProviderTypes,vsa,aEmpty,&pRec);
1981 bool bRet = SUCCEEDED(
pInterface->put_ParentCatalog(ppvObject));
1982 SAL_WARN_IF(!bRet,
"connectivity.ado",
"Could not set ParentCatalog!");
1988 bool bRet = SUCCEEDED(
pInterface->putref_ParentCatalog(ppvObject));
1989 SAL_WARN_IF(!bRet,
"connectivity.ado",
"Could not set ParentCatalog!");
1998 bool bRet = aProp.
PutValue(_aValVar);
1999 SAL_WARN_IF(!bRet,
"connectivity.ado",
"Could not put value!");
static const CLSID CLSID_ADOCOMMAND_21
static const IID IID_ADOCOMMAND_21
static const CLSID CLSID_ADOCATALOG_25
static sal::systools::BStr & GetKeyStr()
static const CLSID CLSID_ADORECORDSET_21
static const IID IID_ADORECORDSET_21
void setString(std::u16string_view us)
void setArray(SAFEARRAY *pSafeArray, VARTYPE vtType)
ADOProcedures * get_Procedures()
void putref_ActiveConnection(IDispatch *pCon)
DataTypeEnum get_Type() const
SortOrderEnum get_SortOrder() const
void put_Name(std::u16string_view _rName)
void put_NumericScale(sal_Int8 _nScale)
sal_uInt8 get_NumericScale() const
sal_Int32 get_DefinedSize() const
OUString get_RelatedColumn() const
sal_Int32 get_Precision() const
WpADOProperties get_Properties() const
bool put_Attributes(const ColumnAttributesEnum &_eNum)
void put_SortOrder(SortOrderEnum _nScale)
void put_RelatedColumn(std::u16string_view _rName)
OUString get_Name() const
void put_Type(const DataTypeEnum &_eNum)
void put_Precision(sal_Int32 _nPre)
void put_ParentCatalog(_ADOCatalog __RPC_FAR *ppvObject)
ColumnAttributesEnum get_Attributes() const
ADOParameters * get_Parameters() const
bool get_Prepared() const
bool put_Prepared(VARIANT_BOOL bPrepared) const
bool put_CommandType(CommandTypeEnum lCmdType)
sal_Int32 get_CommandTimeout() const
void put_ActiveConnection(const OLEVariant &vConn)
void put_CommandTimeout(sal_Int32 nRet)
ADOParameter * CreateParameter(std::u16string_view _bstr, DataTypeEnum Type, ParameterDirectionEnum Direction, long nSize, const OLEVariant &Value)
CommandTypeEnum get_CommandType() const
sal_Int32 get_State() const
bool Execute(OLEVariant &RecordsAffected, OLEVariant &Parameters, long Options, ADORecordset **ppiRset)
OUString get_CommandText() const
bool put_CommandText(std::u16string_view aCon)
bool put_Name(std::u16string_view Name)
bool putref_ActiveConnection(const WpADOConnection &rCon)
ADORecordset * getExportedKeys(const css::uno::Any &catalog, const OUString &schema, std::u16string_view table)
bool put_Provider(std::u16string_view _bstr)
ADORecordset * getIndexInfo(const css::uno::Any &catalog, const OUString &schema, std::u16string_view table, bool unique, bool approximate)
OUString get_Provider() const
bool GetErrors(ADOErrors **pErrors)
ADORecordset * getColumnPrivileges(const css::uno::Any &catalog, const OUString &schemaPattern, std::u16string_view table, std::u16string_view columnNamePattern)
bool OpenSchema(SchemaEnum eNum, OLEVariant const &Restrictions, OLEVariant const &SchemaID, ADORecordset **pprset)
ADORecordset * getColumns(const css::uno::Any &catalog, const OUString &schemaPattern, std::u16string_view tableNamePattern, std::u16string_view columnNamePattern)
OUString GetConnectionString() const
bool put_Mode(const ConnectModeEnum &eNum)
sal_Int32 get_State() const
sal_Int32 GetCommandTimeout() const
OUString GetDefaultDatabase() const
sal_Int32 GetConnectionTimeout() const
bool put_Attributes(sal_Int32 nRet)
ADORecordset * getCrossReference(const css::uno::Any &primaryCatalog, const OUString &primarySchema, std::u16string_view primaryTable, const css::uno::Any &foreignCatalog, const OUString &foreignSchema, std::u16string_view foreignTable)
WpADOProperties get_Properties() const
ADORecordset * getImportedKeys(const css::uno::Any &catalog, const OUString &schema, std::u16string_view table)
sal_Int32 get_Attributes() const
ADORecordset * getTables(const css::uno::Any &catalog, const OUString &schemaPattern, std::u16string_view tableNamePattern, const css::uno::Sequence< OUString > &types)
OUString get_Version() const
bool put_CursorLocation(const CursorLocationEnum &eNum)
bool Execute(std::u16string_view CommandText, OLEVariant &RecordsAffected, long Options, WpADORecordset **ppiRset)
bool Open(std::u16string_view ConnectionString, std::u16string_view UserID, std::u16string_view Password, long Options)
void PutConnectionTimeout(sal_Int32 nRet)
ADORecordset * getProcedures(const css::uno::Any &catalog, const OUString &schemaPattern, std::u16string_view procedureNamePattern)
ADORecordset * getTypeInfo(DataTypeEnum _eType=adEmpty)
ADORecordset * getTablePrivileges(const css::uno::Any &catalog, const OUString &schemaPattern, std::u16string_view tableNamePattern)
ADORecordset * getPrimaryKeys(const css::uno::Any &catalog, const OUString &schema, std::u16string_view table)
void PutCommandTimeout(sal_Int32 nRet)
bool put_IsolationLevel(const IsolationLevelEnum &eNum)
IsolationLevelEnum get_IsolationLevel() const
ADORecordset * getProcedureColumns(const css::uno::Any &catalog, const OUString &schemaPattern, std::u16string_view procedureNamePattern, std::u16string_view columnNamePattern)
ConnectModeEnum get_Mode() const
CursorLocationEnum get_CursorLocation() const
bool PutDefaultDatabase(std::u16string_view _bstr)
bool PutConnectionString(std::u16string_view aCon) const
OUString GetDescription() const
sal_Int32 GetNumber() const
sal_Int32 GetNativeError() const
OUString GetSource() const
OUString GetSQLState() const
DataTypeEnum GetADOType() const
OLEVariant GetChunk(long Length) const
bool PutAttributes(sal_Int32 _nDefSize)
WpADOProperties get_Properties()
sal_Int32 GetStatus() const
OLEVariant GetOriginalValue() const
sal_Int32 GetDefinedSize() const
sal_Int32 GetActualSize() const
bool PutValue(const OLEVariant &aVariant)
bool AppendChunk(const OLEVariant &Variant)
bool PutDefinedSize(sal_Int32 _nDefSize)
void PutADOType(DataTypeEnum eType)
bool PutNumericScale(sal_Int8 _prec)
sal_Int32 GetPrecision() const
OLEVariant get_Value() const
sal_Int32 GetNumericScale() const
bool PutPrecision(sal_Int8 _prec)
sal_Int32 GetAttributes() const
OLEVariant GetUnderlyingValue() const
void put_Name(std::u16string_view _rName)
RightsEnum GetPermissions(const OLEVariant &Name, ObjectTypeEnum ObjectType)
OUString get_Name() const
bool SetPermissions(const OLEVariant &Name, ObjectTypeEnum ObjectType, ActionEnum Action, RightsEnum Rights)
void put_Clustered(bool _b)
bool get_Clustered() const
OUString get_Name() const
bool get_PrimaryKey() const
void put_Name(std::u16string_view _rName)
WpADOColumns get_Columns() const
void put_PrimaryKey(bool _b)
void put_Type(const KeyTypeEnum &_eNum)
void put_DeleteRule(const RuleEnum &_eNum)
RuleEnum get_DeleteRule() const
void put_Name(std::u16string_view _rName)
WpADOColumns get_Columns() const
KeyTypeEnum get_Type() const
void put_UpdateRule(const RuleEnum &_eNum)
OUString get_RelatedTable() const
RuleEnum get_UpdateRule() const
OUString get_Name() const
void put_RelatedTable(std::u16string_view _rName)
bool PutValue(const OLEVariant &aVariant)
sal_Int32 GetAttributes() const
DataTypeEnum GetADOType() const
bool put_Size(sal_Int32 _nSize)
void put_Type(const DataTypeEnum &_eType)
sal_Int32 GetPrecision() const
bool AppendChunk(const OLEVariant &aVariant)
sal_Int32 GetNumericScale() const
OLEVariant GetValue() const
ParameterDirectionEnum get_Direction() const
bool PutAttributes(sal_Int32 _nDefSize)
sal_Int32 GetAttributes() const
OLEVariant GetValue() const
DataTypeEnum GetADOType() const
bool PutValue(const OLEVariant &aValVar)
bool Delete(AffectEnum eNum)
bool Supports(CursorOptionEnum CursorOptions)
bool get_CacheSize(sal_Int32 &_nRet) const
bool AddNew(const OLEVariant &FieldList, const OLEVariant &Values)
bool put_MaxRecords(ADO_LONGPTR _nRet)
bool put_CacheSize(sal_Int32 _nRet)
bool put_CursorType(CursorTypeEnum _nRet)
bool Move(sal_Int32 nRows, VARIANT aBmk)
bool UpdateBatch(AffectEnum AffectRecords)
CompareEnum CompareBookmarks(const OLEVariant &left, const OLEVariant &right)
bool Open(VARIANT Source, VARIANT ActiveConnection, CursorTypeEnum CursorType, LockTypeEnum LockType, sal_Int32 Options)
void PutRefDataSource(IUnknown *pIUnknown)
bool put_LockType(LockTypeEnum _nRet)
bool SetBookmark(const OLEVariant &pSafeAr)
WpADOProperties get_Properties() const
bool get_CursorType(CursorTypeEnum &_nRet) const
WpADOFields GetFields() const
bool Update(const OLEVariant &FieldList, const OLEVariant &Values)
bool get_LockType(LockTypeEnum &_nRet) const
LockTypeEnum GetLockType()
bool NextRecordset(OLEVariant &RecordsAffected, ADORecordset **ppiRset)
void GetDataSource(IUnknown **pIUnknown) const
PositionEnum_Param get_AbsolutePosition()
bool get_MaxRecords(ADO_LONGPTR &_nRet) const
bool get_RecordCount(ADO_LONGPTR &_nRet) const
void put_Name(std::u16string_view _rName)
WpADOKeys get_Keys() const
OUString get_Type() const
WpADOProperties get_Properties() const
WpADOCatalog get_ParentCatalog() const
WpADOIndexes get_Indexes() const
void putref_ParentCatalog(_ADOCatalog __RPC_FAR *ppvObject)
WpADOColumns get_Columns() const
OUString get_Name() const
bool ChangePassword(std::u16string_view _rPwd, std::u16string_view _rNewPwd)
OUString get_Name() const
bool SetPermissions(const OLEVariant &Name, ObjectTypeEnum ObjectType, ActionEnum Action, RightsEnum Rights)
RightsEnum GetPermissions(const OLEVariant &Name, ObjectTypeEnum ObjectType)
void put_Name(std::u16string_view _rName)
void put_Command(OLEVariant const &_rVar)
void get_Command(OLEVariant &_rVar) const
OUString get_Name() const
sal::systools::COMReference< _ADOCatalog > pInterface
WrapT GetItem(sal_Int32 index) const
#define SAL_WARN_IF(condition, area, stream)
static ColumnProperty ** pFields
css::uno::Reference< css::beans::XPropertySet > ObjectType
constexpr bool starts_with(std::basic_string_view< charT, traits > sv, std::basic_string_view< charT, traits > x) noexcept