mirror of https://github.com/dahall/Vanara.git
617 lines
25 KiB
C#
617 lines
25 KiB
C#
using static Vanara.PInvoke.OleAut32;
|
|
|
|
namespace Vanara.PInvoke;
|
|
|
|
public static partial class OleDb
|
|
{
|
|
static OleDb()
|
|
{
|
|
StaticFieldValueHash.AddFields<HRESULT, int, OleDbErr>(Lib_OleDb);
|
|
ErrorHelper.AddErrorMessageLookupFunction<OleDbErr>(GetOleDbErrMsg);
|
|
}
|
|
|
|
private static string GetOleDbErrMsg(uint val, string? lib)
|
|
{
|
|
try
|
|
{
|
|
// Obtain the current Error object, if any, by using the OLE Automation GetErrorInfo function, which will give us back an
|
|
// IErrorInfo interface pointer if successful
|
|
GetErrorInfo(0, out var pIErrorInfo).ThrowIfFailed();
|
|
|
|
// We've got the IErrorInfo interface pointer on the Error object
|
|
if (pIErrorInfo is not null)
|
|
{
|
|
// OLE DB extends the OLE Automation error model by allowing Error objects to support the IErrorRecords interface; this
|
|
// interface can expose information on multiple errors.
|
|
//IErrorRecords? pIErrorRecords = pIErrorInfo as IErrorRecords;
|
|
//if (pIErrorRecords is not null)
|
|
//{
|
|
// StringBuilder sb = new(1024);
|
|
// // Loop through the set of error records and display the error information for each one
|
|
// for (uint iRecord = 0; iRecord < pIErrorRecords.GetRecordCount(); iRecord++)
|
|
// {
|
|
// pIErrorInfo = pIErrorRecords.GetErrorInfo(iRecord, LCID.LOCALE_USER_DEFAULT);
|
|
// pIErrorInfo.GetDescription(out var bstrDescription).ThrowIfFailed();
|
|
// sb.AppendLine(bstrDescription);
|
|
// }
|
|
// return sb.ToString();
|
|
//}
|
|
// The object didn't support IErrorRecords; display the error information for this single error
|
|
//else
|
|
//{
|
|
// Get the description of the error
|
|
pIErrorInfo.GetDescription(out var bstrDescription).ThrowIfFailed();
|
|
return bstrDescription;
|
|
//}
|
|
}
|
|
}
|
|
catch
|
|
{
|
|
}
|
|
|
|
return "";
|
|
}
|
|
|
|
private static void myDisplayErrorRecord(HRESULT hrReturned, uint iRecord, IErrorRecords pIErrorRecords)
|
|
{
|
|
}
|
|
|
|
private static void myGetSqlErrorInfo(uint iRecord, IErrorRecords pIErrorRecords, out string? pBstr, out int plNativeError)
|
|
{
|
|
// Attempt to get the ISQLErrorInfo interface for this error record through GetCustomErrorObject. Note that ISQLErrorInfo is not
|
|
// mandatory, so failure is acceptable here
|
|
pIErrorRecords.GetCustomErrorObject(iRecord, //iRecord
|
|
typeof(ISQLErrorInfo).GUID, //riid
|
|
out var pISQLErrorInfo); //ppISQLErrorInfo
|
|
|
|
// If we obtained the ISQLErrorInfo interface, get the SQL error string and native error code for this error
|
|
if (pISQLErrorInfo is not null)
|
|
((ISQLErrorInfo)pISQLErrorInfo).GetSQLInfo(out pBstr, out plNativeError);
|
|
else { pBstr = null; plNativeError = 0; }
|
|
}
|
|
|
|
/// <summary>HRESULT values for OLE DB errors. These values are returned by OLE DB methods.</summary>
|
|
[PInvokeData("oledberr.h")]
|
|
public enum OleDbErr
|
|
{
|
|
/// <summary>Accessor is invalid.</summary>
|
|
DB_E_BADACCESSORHANDLE = unchecked((int)0x80040E00),
|
|
|
|
/// <summary>Row could not be inserted into the rowset without exceeding provider's maximum number of active rows.</summary>
|
|
DB_E_ROWLIMITEXCEEDED = unchecked((int)0x80040E01),
|
|
|
|
/// <summary>Accessor is read-only. Operation failed.</summary>
|
|
DB_E_READONLYACCESSOR = unchecked((int)0x80040E02),
|
|
|
|
/// <summary>Values violate the database schema.</summary>
|
|
DB_E_SCHEMAVIOLATION = unchecked((int)0x80040E03),
|
|
|
|
/// <summary>Row handle is invalid.</summary>
|
|
DB_E_BADROWHANDLE = unchecked((int)0x80040E04),
|
|
|
|
/// <summary>Object was open.</summary>
|
|
DB_E_OBJECTOPEN = unchecked((int)0x80040E05),
|
|
|
|
/// <summary>Chapter is invalid.</summary>
|
|
DB_E_BADCHAPTER = unchecked((int)0x80040E06),
|
|
|
|
/// <summary>
|
|
/// Data or literal value could not be converted to the type of the column in the data source, and the provider was unable to
|
|
/// determine which columns could not be converted. Data overflow or sign mismatch was not the cause.
|
|
/// </summary>
|
|
DB_E_CANTCONVERTVALUE = unchecked((int)0x80040E07),
|
|
|
|
/// <summary>Binding information is invalid.</summary>
|
|
DB_E_BADBINDINFO = unchecked((int)0x80040E08),
|
|
|
|
/// <summary>Permission denied.</summary>
|
|
DB_SEC_E_PERMISSIONDENIED = unchecked((int)0x80040E09),
|
|
|
|
/// <summary>Column does not contain bookmarks or chapters.</summary>
|
|
DB_E_NOTAREFERENCECOLUMN = unchecked((int)0x80040E0A),
|
|
|
|
/// <summary>Cost limits were rejected.</summary>
|
|
DB_E_LIMITREJECTED = unchecked((int)0x80040E0B),
|
|
|
|
/// <summary>Command text was not set for the command object.</summary>
|
|
DB_E_NOCOMMAND = unchecked((int)0x80040E0C),
|
|
|
|
/// <summary>Query plan within the cost limit cannot be found.</summary>
|
|
DB_E_COSTLIMIT = unchecked((int)0x80040E0D),
|
|
|
|
/// <summary>Bookmark is invalid.</summary>
|
|
DB_E_BADBOOKMARK = unchecked((int)0x80040E0E),
|
|
|
|
/// <summary>Lock mode is invalid.</summary>
|
|
DB_E_BADLOCKMODE = unchecked((int)0x80040E0F),
|
|
|
|
/// <summary>No value given for one or more required parameters.</summary>
|
|
DB_E_PARAMNOTOPTIONAL = unchecked((int)0x80040E10),
|
|
|
|
/// <summary>Column ID is invalid.</summary>
|
|
DB_E_BADCOLUMNID = unchecked((int)0x80040E11),
|
|
|
|
/// <summary>Numerator was greater than denominator. Values must express ratio between zero and 1.</summary>
|
|
DB_E_BADRATIO = unchecked((int)0x80040E12),
|
|
|
|
/// <summary>Value is invalid.</summary>
|
|
DB_E_BADVALUES = unchecked((int)0x80040E13),
|
|
|
|
/// <summary>One or more errors occurred during processing of command.</summary>
|
|
DB_E_ERRORSINCOMMAND = unchecked((int)0x80040E14),
|
|
|
|
/// <summary>Command cannot be canceled.</summary>
|
|
DB_E_CANTCANCEL = unchecked((int)0x80040E15),
|
|
|
|
/// <summary>Command dialect is not supported by this provider.</summary>
|
|
DB_E_DIALECTNOTSUPPORTED = unchecked((int)0x80040E16),
|
|
|
|
/// <summary>Data source object could not be created because the named data source already exists.</summary>
|
|
DB_E_DUPLICATEDATASOURCE = unchecked((int)0x80040E17),
|
|
|
|
/// <summary>Rowset position cannot be restarted.</summary>
|
|
DB_E_CANNOTRESTART = unchecked((int)0x80040E18),
|
|
|
|
/// <summary>Object or data matching the name, range, or selection criteria was not found within the scope of this operation.</summary>
|
|
DB_E_NOTFOUND = unchecked((int)0x80040E19),
|
|
|
|
/// <summary>Identity cannot be determined for newly inserted rows.</summary>
|
|
DB_E_NEWLYINSERTED = unchecked((int)0x80040E1B),
|
|
|
|
/// <summary>Provider has ownership of this tree.</summary>
|
|
DB_E_CANNOTFREE = unchecked((int)0x80040E1A),
|
|
|
|
/// <summary>Goal was rejected because no nonzero weights were specified for any goals supported. Current goal was not changed.</summary>
|
|
DB_E_GOALREJECTED = unchecked((int)0x80040E1C),
|
|
|
|
/// <summary>Requested conversion is not supported.</summary>
|
|
DB_E_UNSUPPORTEDCONVERSION = unchecked((int)0x80040E1D),
|
|
|
|
/// <summary>No rows were returned because the offset value moves the position before the beginning or after the end of the rowset.</summary>
|
|
DB_E_BADSTARTPOSITION = unchecked((int)0x80040E1E),
|
|
|
|
/// <summary>Information was requested for a query and the query was not set.</summary>
|
|
DB_E_NOQUERY = unchecked((int)0x80040E1F),
|
|
|
|
/// <summary>Consumer's event handler called a non-reentrant method in the provider.</summary>
|
|
DB_E_NOTREENTRANT = unchecked((int)0x80040E20),
|
|
|
|
/// <summary>Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.</summary>
|
|
DB_E_ERRORSOCCURRED = unchecked((int)0x80040E21),
|
|
|
|
/// <summary>
|
|
/// Non-NULL controlling IUnknown was specified, and either the requested interface was not IUnknown, or the provider does not
|
|
/// support COM aggregation.
|
|
/// </summary>
|
|
DB_E_NOAGGREGATION = unchecked((int)0x80040E22),
|
|
|
|
/// <summary>Row handle referred to a deleted row or a row marked for deletion.</summary>
|
|
DB_E_DELETEDROW = unchecked((int)0x80040E23),
|
|
|
|
/// <summary>Rowset does not support fetching backward.</summary>
|
|
DB_E_CANTFETCHBACKWARDS = unchecked((int)0x80040E24),
|
|
|
|
/// <summary>Row handles must all be released before new ones can be obtained.</summary>
|
|
DB_E_ROWSNOTRELEASED = unchecked((int)0x80040E25),
|
|
|
|
/// <summary>One or more storage flags are not supported.</summary>
|
|
DB_E_BADSTORAGEFLAG = unchecked((int)0x80040E26),
|
|
|
|
/// <summary>Comparison operator is invalid.</summary>
|
|
DB_E_BADCOMPAREOP = unchecked((int)0x80040E27),
|
|
|
|
/// <summary>Status flag was neither DBCOLUMNSTATUS_OK nor DBCOLUMNSTATUS_ISNULL.</summary>
|
|
DB_E_BADSTATUSVALUE = unchecked((int)0x80040E28),
|
|
|
|
/// <summary>Rowset does not support scrolling backward.</summary>
|
|
DB_E_CANTSCROLLBACKWARDS = unchecked((int)0x80040E29),
|
|
|
|
/// <summary>Region handle is invalid.</summary>
|
|
DB_E_BADREGIONHANDLE = unchecked((int)0x80040E2A),
|
|
|
|
/// <summary>Set of rows is not contiguous to, or does not overlap, the rows in the watch region.</summary>
|
|
DB_E_NONCONTIGUOUSRANGE = unchecked((int)0x80040E2B),
|
|
|
|
/// <summary>Transition from ALL* to MOVE* or EXTEND* was specified.</summary>
|
|
DB_E_INVALIDTRANSITION = unchecked((int)0x80040E2C),
|
|
|
|
/// <summary>Region is not a proper subregion of the region identified by the watch region handle.</summary>
|
|
DB_E_NOTASUBREGION = unchecked((int)0x80040E2D),
|
|
|
|
/// <summary>Multiple-statement commands are not supported by this provider.</summary>
|
|
DB_E_MULTIPLESTATEMENTS = unchecked((int)0x80040E2E),
|
|
|
|
/// <summary>Value violated the integrity constraints for a column or table.</summary>
|
|
DB_E_INTEGRITYVIOLATION = unchecked((int)0x80040E2F),
|
|
|
|
/// <summary>Type name is invalid.</summary>
|
|
DB_E_BADTYPENAME = unchecked((int)0x80040E30),
|
|
|
|
/// <summary>Execution stopped because a resource limit was reached. No results were returned.</summary>
|
|
DB_E_ABORTLIMITREACHED = unchecked((int)0x80040E31),
|
|
|
|
/// <summary>Command object whose command tree contains a rowset or rowsets cannot be cloned.</summary>
|
|
DB_E_ROWSETINCOMMAND = unchecked((int)0x80040E32),
|
|
|
|
/// <summary>Current tree cannot be represented as text.</summary>
|
|
DB_E_CANTTRANSLATE = unchecked((int)0x80040E33),
|
|
|
|
/// <summary>Index already exists.</summary>
|
|
DB_E_DUPLICATEINDEXID = unchecked((int)0x80040E34),
|
|
|
|
/// <summary>Index does not exist.</summary>
|
|
DB_E_NOINDEX = unchecked((int)0x80040E35),
|
|
|
|
/// <summary>Index is in use.</summary>
|
|
DB_E_INDEXINUSE = unchecked((int)0x80040E36),
|
|
|
|
/// <summary>Table does not exist.</summary>
|
|
DB_E_NOTABLE = unchecked((int)0x80040E37),
|
|
|
|
/// <summary>Rowset used optimistic concurrency and the value of a column has changed since it was last read.</summary>
|
|
DB_E_CONCURRENCYVIOLATION = unchecked((int)0x80040E38),
|
|
|
|
/// <summary>Errors detected during the copy.</summary>
|
|
DB_E_BADCOPY = unchecked((int)0x80040E39),
|
|
|
|
/// <summary>Precision is invalid.</summary>
|
|
DB_E_BADPRECISION = unchecked((int)0x80040E3A),
|
|
|
|
/// <summary>Scale is invalid.</summary>
|
|
DB_E_BADSCALE = unchecked((int)0x80040E3B),
|
|
|
|
/// <summary>Table ID is invalid.</summary>
|
|
DB_E_BADTABLEID = unchecked((int)0x80040E3C),
|
|
|
|
/// <summary>Type is invalid.</summary>
|
|
DB_E_BADTYPE = unchecked((int)0x80040E3D),
|
|
|
|
/// <summary>Column ID already exists or occurred more than once in the array of columns.</summary>
|
|
DB_E_DUPLICATECOLUMNID = unchecked((int)0x80040E3E),
|
|
|
|
/// <summary>Table already exists.</summary>
|
|
DB_E_DUPLICATETABLEID = unchecked((int)0x80040E3F),
|
|
|
|
/// <summary>Table is in use.</summary>
|
|
DB_E_TABLEINUSE = unchecked((int)0x80040E40),
|
|
|
|
/// <summary>Locale ID is not supported.</summary>
|
|
DB_E_NOLOCALE = unchecked((int)0x80040E41),
|
|
|
|
/// <summary>Record number is invalid.</summary>
|
|
DB_E_BADRECORDNUM = unchecked((int)0x80040E42),
|
|
|
|
/// <summary>Form of bookmark is valid, but no row was found to match it.</summary>
|
|
DB_E_BOOKMARKSKIPPED = unchecked((int)0x80040E43),
|
|
|
|
/// <summary>Property value is invalid.</summary>
|
|
DB_E_BADPROPERTYVALUE = unchecked((int)0x80040E44),
|
|
|
|
/// <summary>Rowset is not chaptered.</summary>
|
|
DB_E_INVALID = unchecked((int)0x80040E45),
|
|
|
|
/// <summary>One or more accessor flags were invalid.</summary>
|
|
DB_E_BADACCESSORFLAGS = unchecked((int)0x80040E46),
|
|
|
|
/// <summary>One or more storage flags are invalid.</summary>
|
|
DB_E_BADSTORAGEFLAGS = unchecked((int)0x80040E47),
|
|
|
|
/// <summary>Reference accessors are not supported by this provider.</summary>
|
|
DB_E_BYREFACCESSORNOTSUPPORTED = unchecked((int)0x80040E48),
|
|
|
|
/// <summary>Null accessors are not supported by this provider.</summary>
|
|
DB_E_NULLACCESSORNOTSUPPORTED = unchecked((int)0x80040E49),
|
|
|
|
/// <summary>Command was not prepared.</summary>
|
|
DB_E_NOTPREPARED = unchecked((int)0x80040E4A),
|
|
|
|
/// <summary>Accessor is not a parameter accessor.</summary>
|
|
DB_E_BADACCESSORTYPE = unchecked((int)0x80040E4B),
|
|
|
|
/// <summary>Accessor is write-only.</summary>
|
|
DB_E_WRITEONLYACCESSOR = unchecked((int)0x80040E4C),
|
|
|
|
/// <summary>Authentication failed.</summary>
|
|
DB_SEC_E_AUTH_FAILED = unchecked((int)0x80040E4D),
|
|
|
|
/// <summary>Operation was canceled.</summary>
|
|
DB_E_CANCELED = unchecked((int)0x80040E4E),
|
|
|
|
/// <summary>Rowset is single-chaptered. The chapter was not released.</summary>
|
|
DB_E_CHAPTERNOTRELEASED = unchecked((int)0x80040E4F),
|
|
|
|
/// <summary>Source handle is invalid.</summary>
|
|
DB_E_BADSOURCEHANDLE = unchecked((int)0x80040E50),
|
|
|
|
/// <summary>Provider cannot derive parameter information and SetParameterInfo has not been called.</summary>
|
|
DB_E_PARAMUNAVAILABLE = unchecked((int)0x80040E51),
|
|
|
|
/// <summary>Data source object is already initialized.</summary>
|
|
DB_E_ALREADYINITIALIZED = unchecked((int)0x80040E52),
|
|
|
|
/// <summary>Method is not supported by this provider.</summary>
|
|
DB_E_NOTSUPPORTED = unchecked((int)0x80040E53),
|
|
|
|
/// <summary>Number of rows with pending changes exceeded the limit.</summary>
|
|
DB_E_MAXPENDCHANGESEXCEEDED = unchecked((int)0x80040E54),
|
|
|
|
/// <summary>Column does not exist.</summary>
|
|
DB_E_BADORDINAL = unchecked((int)0x80040E55),
|
|
|
|
/// <summary>Pending changes exist on a row with a reference count of zero.</summary>
|
|
DB_E_PENDINGCHANGES = unchecked((int)0x80040E56),
|
|
|
|
/// <summary>Literal value in the command exceeded the range of the type of the associated column.</summary>
|
|
DB_E_DATAOVERFLOW = unchecked((int)0x80040E57),
|
|
|
|
/// <summary>HRESULT is invalid.</summary>
|
|
DB_E_BADHRESULT = unchecked((int)0x80040E58),
|
|
|
|
/// <summary>Lookup ID is invalid.</summary>
|
|
DB_E_BADLOOKUPID = unchecked((int)0x80040E59),
|
|
|
|
/// <summary>DynamicError ID is invalid.</summary>
|
|
DB_E_BADDYNAMICERRORID = unchecked((int)0x80040E5A),
|
|
|
|
/// <summary>Most recent data for a newly inserted row could not be retrieved because the insert is pending.</summary>
|
|
DB_E_PENDINGINSERT = unchecked((int)0x80040E5B),
|
|
|
|
/// <summary>Conversion flag is invalid.</summary>
|
|
DB_E_BADCONVERTFLAG = unchecked((int)0x80040E5C),
|
|
|
|
/// <summary>Parameter name is unrecognized.</summary>
|
|
DB_E_BADPARAMETERNAME = unchecked((int)0x80040E5D),
|
|
|
|
/// <summary>Multiple storage objects cannot be open simultaneously.</summary>
|
|
DB_E_MULTIPLESTORAGE = unchecked((int)0x80040E5E),
|
|
|
|
/// <summary>Filter cannot be opened.</summary>
|
|
DB_E_CANTFILTER = unchecked((int)0x80040E5F),
|
|
|
|
/// <summary>Order cannot be opened.</summary>
|
|
DB_E_CANTORDER = unchecked((int)0x80040E60),
|
|
|
|
/// <summary>Tuple is invalid.</summary>
|
|
MD_E_BADTUPLE = unchecked((int)0x80040E61),
|
|
|
|
/// <summary>Coordinate is invalid.</summary>
|
|
MD_E_BADCOORDINATE = unchecked((int)0x80040E62),
|
|
|
|
/// <summary>Axis is invalid.</summary>
|
|
MD_E_INVALIDAXIS = unchecked((int)0x80040E63),
|
|
|
|
/// <summary>One or more cell ordinals is invalid.</summary>
|
|
MD_E_INVALIDCELLRANGE = unchecked((int)0x80040E64),
|
|
|
|
/// <summary>Column ID is invalid.</summary>
|
|
DB_E_NOCOLUMN = unchecked((int)0x80040E65),
|
|
|
|
/// <summary>Command does not have a DBID.</summary>
|
|
DB_E_COMMANDNOTPERSISTED = unchecked((int)0x80040E67),
|
|
|
|
/// <summary>DBID already exists.</summary>
|
|
DB_E_DUPLICATEID = unchecked((int)0x80040E68),
|
|
|
|
/// <summary>
|
|
/// Session cannot be created because maximum number of active sessions was already reached. Consumer must release one or more
|
|
/// sessions before creating a new session object.
|
|
/// </summary>
|
|
DB_E_OBJECTCREATIONLIMITREACHED = unchecked((int)0x80040E69),
|
|
|
|
/// <summary>Index ID is invalid.</summary>
|
|
DB_E_BADINDEXID = unchecked((int)0x80040E72),
|
|
|
|
/// <summary>Format of the initialization string does not conform to the OLE DB specification.</summary>
|
|
DB_E_BADINITSTRING = unchecked((int)0x80040E73),
|
|
|
|
/// <summary>No OLE DB providers of this source type are registered.</summary>
|
|
DB_E_NOPROVIDERSREGISTERED = unchecked((int)0x80040E74),
|
|
|
|
/// <summary>Initialization string specifies a provider that does not match the active provider.</summary>
|
|
DB_E_MISMATCHEDPROVIDER = unchecked((int)0x80040E75),
|
|
|
|
/// <summary>DBID is invalid.</summary>
|
|
DB_E_BADCOMMANDID = unchecked((int)0x80040E76),
|
|
|
|
/// <summary>Trustee is invalid.</summary>
|
|
SEC_E_BADTRUSTEEID = unchecked((int)0x80040E6A),
|
|
|
|
/// <summary>Trustee was not recognized for this data source.</summary>
|
|
SEC_E_NOTRUSTEEID = unchecked((int)0x80040E6B),
|
|
|
|
/// <summary>Trustee does not support memberships or collections.</summary>
|
|
SEC_E_NOMEMBERSHIPSUPPORT = unchecked((int)0x80040E6C),
|
|
|
|
/// <summary>Object is invalid or unknown to the provider.</summary>
|
|
SEC_E_INVALIDOBJECT = unchecked((int)0x80040E6D),
|
|
|
|
/// <summary>Object does not have an owner.</summary>
|
|
SEC_E_NOOWNER = unchecked((int)0x80040E6E),
|
|
|
|
/// <summary>Access entry list is invalid.</summary>
|
|
SEC_E_INVALIDACCESSENTRYLIST = unchecked((int)0x80040E6F),
|
|
|
|
/// <summary>Trustee supplied as owner is invalid or unknown to the provider.</summary>
|
|
SEC_E_INVALIDOWNER = unchecked((int)0x80040E70),
|
|
|
|
/// <summary>Permission in the access entry list is invalid.</summary>
|
|
SEC_E_INVALIDACCESSENTRY = unchecked((int)0x80040E71),
|
|
|
|
/// <summary>ConstraintType is invalid or not supported by the provider.</summary>
|
|
DB_E_BADCONSTRAINTTYPE = unchecked((int)0x80040E77),
|
|
|
|
/// <summary>ConstraintType is not DBCONSTRAINTTYPE_FOREIGNKEY and cForeignKeyColumns is not zero.</summary>
|
|
DB_E_BADCONSTRAINTFORM = unchecked((int)0x80040E78),
|
|
|
|
/// <summary>Specified deferrability flag is invalid or not supported by the provider.</summary>
|
|
DB_E_BADDEFERRABILITY = unchecked((int)0x80040E79),
|
|
|
|
/// <summary>MatchType is invalid or the value is not supported by the provider.</summary>
|
|
DB_E_BADMATCHTYPE = unchecked((int)0x80040E80),
|
|
|
|
/// <summary>Constraint update rule or delete rule is invalid.</summary>
|
|
DB_E_BADUPDATEDELETERULE = unchecked((int)0x80040E8A),
|
|
|
|
/// <summary>Constraint ID is invalid.</summary>
|
|
DB_E_BADCONSTRAINTID = unchecked((int)0x80040E8B),
|
|
|
|
/// <summary>Command persistence flag is invalid.</summary>
|
|
DB_E_BADCOMMANDFLAGS = unchecked((int)0x80040E8C),
|
|
|
|
/// <summary>rguidColumnType points to a GUID that does not match the object type of this column, or this column was not set.</summary>
|
|
DB_E_OBJECTMISMATCH = unchecked((int)0x80040E8D),
|
|
|
|
/// <summary>Source row does not exist.</summary>
|
|
DB_E_NOSOURCEOBJECT = unchecked((int)0x80040E91),
|
|
|
|
/// <summary>OLE DB object represented by this URL is locked by one or more other processes.</summary>
|
|
DB_E_RESOURCELOCKED = unchecked((int)0x80040E92),
|
|
|
|
/// <summary>Client requested an object type that is valid only for a collection.</summary>
|
|
DB_E_NOTCOLLECTION = unchecked((int)0x80040E93),
|
|
|
|
/// <summary>Caller requested write access to a read-only object.</summary>
|
|
DB_E_READONLY = unchecked((int)0x80040E94),
|
|
|
|
/// <summary>Asynchronous binding is not supported by this provider.</summary>
|
|
DB_E_ASYNCNOTSUPPORTED = unchecked((int)0x80040E95),
|
|
|
|
/// <summary>Connection to the server for this URL cannot be established.</summary>
|
|
DB_E_CANNOTCONNECT = unchecked((int)0x80040E96),
|
|
|
|
/// <summary>Timeout occurred when attempting to bind to the object.</summary>
|
|
DB_E_TIMEOUT = unchecked((int)0x80040E97),
|
|
|
|
/// <summary>Object cannot be created at this URL because an object named by this URL already exists.</summary>
|
|
DB_E_RESOURCEEXISTS = unchecked((int)0x80040E98),
|
|
|
|
/// <summary>URL is outside of scope.</summary>
|
|
DB_E_RESOURCEOUTOFSCOPE = unchecked((int)0x80040E8E),
|
|
|
|
/// <summary>Column or constraint could not be dropped because it is referenced by a dependent view or constraint.</summary>
|
|
DB_E_DROPRESTRICTED = unchecked((int)0x80040E90),
|
|
|
|
/// <summary>Constraint already exists.</summary>
|
|
DB_E_DUPLICATECONSTRAINTID = unchecked((int)0x80040E99),
|
|
|
|
/// <summary>Object cannot be created at this URL because the server is out of physical storage.</summary>
|
|
DB_E_OUTOFSPACE = unchecked((int)0x80040E9A),
|
|
|
|
/// <summary>Safety settings on this computer prohibit accessing a data source on another domain.</summary>
|
|
DB_SEC_E_SAFEMODE_DENIED = unchecked((int)0x80040E9B),
|
|
|
|
/// <summary>
|
|
/// The specified statistic does not exist in the current data source or did not apply to the specified table or it does not support
|
|
/// a histogram.
|
|
/// </summary>
|
|
DB_E_NOSTATISTIC = unchecked((int)0x80040E9C),
|
|
|
|
/// <summary>Column or table could not be altered because it is referenced by a constraint.</summary>
|
|
DB_E_ALTERRESTRICTED = unchecked((int)0x80040E9D),
|
|
|
|
/// <summary>Requested object type is not supported by the provider.</summary>
|
|
DB_E_RESOURCENOTSUPPORTED = unchecked((int)0x80040E9E),
|
|
|
|
/// <summary>Constraint does not exist.</summary>
|
|
DB_E_NOCONSTRAINT = unchecked((int)0x80040E9F),
|
|
|
|
/// <summary>
|
|
/// Requested column is valid, but could not be retrieved. This could be due to a forward only cursor attempting to go backwards in a row.
|
|
/// </summary>
|
|
DB_E_COLUMNUNAVAILABLE = unchecked((int)0x80040EA0),
|
|
|
|
/// <summary>Fetching requested number of rows will exceed total number of active rows supported by the rowset.</summary>
|
|
DB_S_ROWLIMITEXCEEDED = unchecked(0x00040EC0),
|
|
|
|
/// <summary>One or more column types are incompatible. Conversion errors will occur during copying.</summary>
|
|
DB_S_COLUMNTYPEMISMATCH = unchecked(0x00040EC1),
|
|
|
|
/// <summary>Parameter type information was overridden by caller.</summary>
|
|
DB_S_TYPEINFOOVERRIDDEN = unchecked(0x00040EC2),
|
|
|
|
/// <summary>Bookmark was skipped for deleted or nonmember row.</summary>
|
|
DB_S_BOOKMARKSKIPPED = unchecked(0x00040EC3),
|
|
|
|
/// <summary>No more rowsets.</summary>
|
|
DB_S_NONEXTROWSET = unchecked(0x00040EC5),
|
|
|
|
/// <summary>Start or end of rowset or chapter was reached.</summary>
|
|
DB_S_ENDOFROWSET = unchecked(0x00040EC6),
|
|
|
|
/// <summary>Command was reexecuted.</summary>
|
|
DB_S_COMMANDREEXECUTED = unchecked(0x00040EC7),
|
|
|
|
/// <summary>Operation succeeded, but status array or string buffer could not be allocated.</summary>
|
|
DB_S_BUFFERFULL = unchecked(0x00040EC8),
|
|
|
|
/// <summary>No more results.</summary>
|
|
DB_S_NORESULT = unchecked(0x00040EC9),
|
|
|
|
/// <summary>Server cannot release or downgrade a lock until the end of the transaction.</summary>
|
|
DB_S_CANTRELEASE = unchecked(0x00040ECA),
|
|
|
|
/// <summary>Weight is not supported or exceeded the supported limit, and was set to 0 or the supported limit.</summary>
|
|
DB_S_GOALCHANGED = unchecked(0x00040ECB),
|
|
|
|
/// <summary>Consumer does not want to receive further notification calls for this operation.</summary>
|
|
DB_S_UNWANTEDOPERATION = unchecked(0x00040ECC),
|
|
|
|
/// <summary>Input dialect was ignored and command was processed using default dialect.</summary>
|
|
DB_S_DIALECTIGNORED = unchecked(0x00040ECD),
|
|
|
|
/// <summary>Consumer does not want to receive further notification calls for this phase.</summary>
|
|
DB_S_UNWANTEDPHASE = unchecked(0x00040ECE),
|
|
|
|
/// <summary>Consumer does not want to receive further notification calls for this reason.</summary>
|
|
DB_S_UNWANTEDREASON = unchecked(0x00040ECF),
|
|
|
|
/// <summary>Operation is being processed asynchronously.</summary>
|
|
DB_S_ASYNCHRONOUS = unchecked(0x00040ED0),
|
|
|
|
/// <summary>
|
|
/// Command was executed to reposition to the start of the rowset. Either the order of the columns changed, or columns were added to
|
|
/// or removed from the rowset.
|
|
/// </summary>
|
|
DB_S_COLUMNSCHANGED = unchecked(0x00040ED1),
|
|
|
|
/// <summary>Method had some errors, which were returned in the error array.</summary>
|
|
DB_S_ERRORSRETURNED = unchecked(0x00040ED2),
|
|
|
|
/// <summary>Row handle is invalid.</summary>
|
|
DB_S_BADROWHANDLE = unchecked(0x00040ED3),
|
|
|
|
/// <summary>Row handle referred to a deleted row.</summary>
|
|
DB_S_DELETEDROW = unchecked(0x00040ED4),
|
|
|
|
/// <summary>
|
|
/// Provider cannot keep track of all the changes. Client must refetch the data associated with the watch region by using another method.
|
|
/// </summary>
|
|
DB_S_TOOMANYCHANGES = unchecked(0x00040ED5),
|
|
|
|
/// <summary>
|
|
/// Execution stopped because a resource limit was reached. Results obtained so far were returned, but execution cannot resume.
|
|
/// </summary>
|
|
DB_S_STOPLIMITREACHED = unchecked(0x00040ED6),
|
|
|
|
/// <summary>Lock was upgraded from the value specified.</summary>
|
|
DB_S_LOCKUPGRADED = unchecked(0x00040ED8),
|
|
|
|
/// <summary>One or more properties were changed as allowed by provider.</summary>
|
|
DB_S_PROPERTIESCHANGED = unchecked(0x00040ED9),
|
|
|
|
/// <summary>Multiple-step operation completed with one or more errors. Check each status value.</summary>
|
|
DB_S_ERRORSOCCURRED = unchecked(0x00040EDA),
|
|
|
|
/// <summary>Parameter is invalid.</summary>
|
|
DB_S_PARAMUNAVAILABLE = unchecked(0x00040EDB),
|
|
|
|
/// <summary>Updating a row caused more than one row to be updated in the data source.</summary>
|
|
DB_S_MULTIPLECHANGES = unchecked(0x00040EDC),
|
|
|
|
/// <summary>Row object was requested on a non-singleton result. First row was returned.</summary>
|
|
DB_S_NOTSINGLETON = unchecked(0x00040ED7),
|
|
|
|
/// <summary>Row has no row-specific columns.</summary>
|
|
DB_S_NOROWSPECIFICCOLUMNS = unchecked(0x00040EDD),
|
|
}
|
|
} |