tabdef.idl 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. //-----------------------------------------------------------------------------
  2. // File: tabdef.idl
  3. //
  4. // Copyright: Copyright (c) Microsoft Corporation
  5. //
  6. // Contents: OLE DB interface definition
  7. //
  8. // Comments:
  9. //
  10. //-----------------------------------------------------------------------------
  11. #include "idlmulti.h"
  12. //
  13. REMOTED_INTERFACE(0c733a86-2a1c-11ce-ade5-00aa0044773d)
  14. interface ITableDefinition : IUnknown {
  15. [local]
  16. HRESULT CreateTable(
  17. [in] IUnknown * pUnkOuter,
  18. [in] DBID * pTableID,
  19. [in] DBORDINAL cColumnDescs,
  20. [in, size_is((ULONG)cColumnDescs)] const DBCOLUMNDESC rgColumnDescs[],
  21. [in] REFIID riid,
  22. [in] ULONG cPropertySets,
  23. [in, out, size_is(cPropertySets)] DBPROPSET rgPropertySets[],
  24. [out] DBID ** ppTableID,
  25. [out, iid_is(riid)] IUnknown ** ppRowset
  26. );
  27. #ifndef NO_REMOTE
  28. [call_as(CreateTable)]
  29. HRESULT RemoteCreateTable(
  30. [in] IUnknown * pUnkOuter,
  31. [in, unique] DBID * pTableID,
  32. [in] DBORDINAL cColumnDescs,
  33. [in, size_is((ULONG)cColumnDescs)] const DBCOLUMNDESC * rgColumnDescs,
  34. [in] REFIID riid,
  35. [in] ULONG cPropertySets,
  36. [in, unique, size_is(cPropertySets)] DBPROPSET * rgPropertySets,
  37. [in, out, unique] DBID ** ppTableID,
  38. [in, out, unique, iid_is(riid)] IUnknown ** ppRowset,
  39. [in] ULONG cTotalProps,
  40. [out, size_is(cTotalProps)] DBPROPSTATUS * rgPropStatus,
  41. [out] BOOL * pfTableCreated,
  42. [out] IErrorInfo ** ppErrorInfoRem
  43. );
  44. #endif
  45. [local]
  46. HRESULT DropTable(
  47. [in, unique] DBID * pTableID
  48. );
  49. [call_as(DropTable)]
  50. HRESULT RemoteDropTable(
  51. [in, unique] DBID * pTableID,
  52. [out] IErrorInfo ** ppErrorInfoRem
  53. );
  54. [local]
  55. HRESULT AddColumn(
  56. [in] DBID * pTableID,
  57. [in, out] DBCOLUMNDESC * pColumnDesc,
  58. [out] DBID ** ppColumnID
  59. );
  60. [call_as(AddColumn)]
  61. HRESULT RemoteAddColumn(
  62. [in] DBID * pTableID,
  63. [in] DBCOLUMNDESC * pColumnDesc,
  64. [in, out, unique] DBID ** ppColumnID,
  65. [in] ULONG cTotalProps,
  66. [out, size_is(cTotalProps)] DBPROPSTATUS * rgPropStatus,
  67. [out] IErrorInfo ** ppErrorInfoRem
  68. );
  69. [local]
  70. HRESULT DropColumn(
  71. [in, unique] DBID * pTableID,
  72. [in, unique] DBID * pColumnID
  73. );
  74. [call_as(DropColumn)]
  75. HRESULT RemoteDropColumn(
  76. [in, unique] DBID * pTableID,
  77. [in, unique] DBID * pColumnID,
  78. [out] IErrorInfo ** ppErrorInfoRem
  79. );
  80. }