📄 sqlole.h
字号:
SQLOLESrvUserProf_SaLogin = 0x0001, // User is System Administrator
SQLOLESrvUserProf_CreateDatabase = 0x0002, // User has privilege to do this
SQLOLESrvUserProf_CreateXP = 0x0004, // User can create Extended Stored Procedures
SQLOLESrvUserProf_AllProfileBits = 0x0007 // All server profile bits
} SQLOLE_SRVUSERPROFILE_TYPE;
typedef SQLOLE_HELPID(SQLOLE_DBUSERPROFILE_TYPE) enum {
// Output from Database.GetUserProfile
SQLOLEDbUserProf_None = 0x0000,
SQLOLEDbUserProf_DboLogin = 0x0001, // User is Database Owner
SQLOLEDbUserProf_CreateTable = 0x0002, // User has these privileges
SQLOLEDbUserProf_CreateView = 0x0004,
SQLOLEDbUserProf_CreateProcedure = 0x0008,
SQLOLEDbUserProf_DumpDatabase = 0x0010,
SQLOLEDbUserProf_CreateDefault = 0x0020,
SQLOLEDbUserProf_DumpTransaction = 0x0040,
SQLOLEDbUserProf_CreateRule = 0x0080,
SQLOLEDbUserProf_AllProfileBits = 0x00ff, // All DB-valid profile bits
SQLOLEDbUserProf_InvalidLogin = 0x40000000, // Current login not a valid user in this database.
SQLOLEDbUserProf_InaccessibleDb = 0x80000000, // Database Loading | Recovering | Suspect | Offline
SQLOLEDbUserProf_DbNotAvailable = 0xc0000000 // All Database-not-accessible bits.
} SQLOLE_DBUSERPROFILE_TYPE;
typedef SQLOLE_HELPID(SQLOLE_ERROR_TYPE) enum {
// Error values. (MS-Internal: See usa.rc for the string representation of these (OSQL_S_*)).
// DBLib uses 10000 (0x2710) to 10200 (0x27D8).
SQLOLE_E_DBLIBFIRSTERROR = 0x2710,
SQLOLE_E_DBLIBLASTERROR = 0x27D8,
// SQL Server itself sends errors back which may be up to 20000 (0x4E20).
// SQLOLE-detected errors are in the range SQLOLE_E_FIRSTERROR to SQLOLE_E_LASTERROR.
// Each SQLOLE_ECAT (Error CATegory) summarizes its specific errorcodes.
SQLOLE_E_FIRSTERROR = 0x5000,
// All error categories masked off by this.
SQLOLE_ECAT_MASK = 0x5F00,
// Errors indicating an operation that is valid but not in the given context.
SQLOLE_ECAT_INVALIDCONTEXT = 0x5000,
SQLOLE_E_ALREADYCONN = 0x5000,
SQLOLE_E_ALREADYCOLL = 0x5001,
SQLOLE_E_NOTCONN = 0x5002,
SQLOLE_E_CANTDROPSERVER = 0x5003,
SQLOLE_E_NOCOMPLEXALTER = 0x5004,
SQLOLE_E_PROPNEEDSCREATE = 0x5005,
SQLOLE_E_COLTYPEFIXED = 0x5006,
SQLOLE_E_COLTYPENONNULL = 0x5007,
SQLOLE_E_CANTCHANGEUDDT = 0x5008,
SQLOLE_E_BASETYPEFIXED = 0x5009,
SQLOLE_E_BASETYPENONNULL = 0x500A,
SQLOLE_E_ENUMORDINAL = 0x500B,
SQLOLE_E_CANTRENAMEUSER = 0x500C,
SQLOLE_E_CANTRENAMEGROUP = 0x500D,
SQLOLE_E_CANTRENAMELOGIN = 0x500E,
SQLOLE_E_CANTRENAMEDEVICE = 0x500F,
SQLOLE_E_NOTDUMPPROP = 0x5010,
SQLOLE_E_NOSERVERASSOC = 0x5011,
SQLOLE_E_NOTCOLLTYPE = 0x5012,
SQLOLE_E_CANTMODIFYDRIINDEX = 0x5013,
SQLOLE_E_CANTCHANGEPROCTYPE = 0x5014,
SQLOLE_E_CANTMODIFYINDEX = 0x5015,
SQLOLE_E_INVALIDPRIVOBJ = 0x5016,
SQLOLE_E_CANTCHANGETRIGTYPE = 0x5017,
SQLOLE_E_NOVIEWCOLALTER = 0x5018,
SQLOLE_E_CANTRENAMELANGUAGE = 0x5019,
SQLOLE_E_CANTRENAMERSERVER = 0x501A,
SQLOLE_E_CANTRENAMERLOGIN = 0x501B,
SQLOLE_E_MUSTBEDBDEV = 0x501C,
SQLOLE_E_NOINACTIVEMIRROR = 0x501D,
SQLOLE_E_NOACTIVEMIRROR = 0x501E,
SQLOLE_E_NOMIRROR = 0x501F,
SQLOLE_E_SERVERDISCONNECTED = 0x5020,
SQLOLE_E_CANTRENAMESERVER = 0x5021,
SQLOLE_E_CANTMODIFYTEXT = 0x5022,
SQLOLE_E_CANTMODIFYSYSTABLE = 0x5023,
SQLOLE_E_LOGINALREADYALIASED = 0x5024,
SQLOLE_E_LOGINALREADYUSER = 0x5025,
SQLOLE_E_CACHENORESULTS = 0x5026,
SQLOLE_E_ALREADYCREATED = 0x5027,
SQLOLE_E_NOTDISCONN = 0x5028,
SQLOLE_E_CANTMODIFYARTTABLE = 0x5029,
SQLOLE_E_CANTMODIFYSUBSERVER = 0x502A,
SQLOLE_E_BASETYPENOTNUMERIC = 0x502B,
SQLOLE_E_TOFILEBUTNOFILENAME = 0x502C,
SQLOLE_E_MUSTBEDISTSERVER = 0x502D,
SQLOLE_E_CANTMODIFYKEY = 0x502E,
SQLOLE_E_LISTCANTREFRESH = 0x502F,
SQLOLE_E_NOCOLTABLE = 0x5030,
SQLOLE_E_MUSTBEINALTER = 0x5031,
SQLOLE_E_CANTUNDEDICATELOGDEVICE = 0x5032,
SQLOLE_E_CANTRENAMESERVERGROUP = 0x5033,
SQLOLE_E_CANTRENAMEREGISTEREDSERVER = 0x5034,
SQLOLE_E_INDEXREBUILDKEYTYPE = 0x5035,
SQLOLE_E_REBUILDINDEXOPTIONS = 0x5036,
SQLOLE_E_IMPERSONATEXPONLY = 0x5037,
// Errors indicating that the OLE object is not (or is no longer) valid in SQLOLE.
SQLOLE_ECAT_INVALIDOBJECT = 0x5100,
SQLOLE_E_OBJECTDROPPED = 0x5100,
SQLOLE_E_NOTSQLOLEOBJECT = 0x5101,
SQLOLE_E_OBJECTDETACHED = 0x5102,
SQLOLE_E_SERVERCLOSED = 0x5103,
// Errors indicating that an attempt was made to create an object (usually to add an object
// to a collection) but that its definition (property settings) were incomplete or inconsistent.
SQLOLE_ECAT_INVALIDOBJECTDEFINITION = 0x5200,
SQLOLE_E_NOCOLUMNSADDED = 0x5200,
SQLOLE_E_COLUMNINCOMPLETE = 0x5201,
SQLOLE_E_TABLEINCOMPLETE = 0x5202,
SQLOLE_E_UDDTINCOMPLETE = 0x5203,
SQLOLE_E_RULEINCOMPLETE = 0x5204,
SQLOLE_E_DEFAULTINCOMPLETE = 0x5205,
SQLOLE_E_VIEWINCOMPLETE = 0x5206,
SQLOLE_E_USERINCOMPLETE = 0x5207,
SQLOLE_E_GROUPINCOMPLETE = 0x5208,
SQLOLE_E_PROCINCOMPLETE = 0x5209,
SQLOLE_E_USERALREADYEXISTS = 0x520A,
SQLOLE_E_GROUPALREADYEXISTS = 0x520B,
SQLOLE_E_COLUMNALREADYEXISTS = 0x520C,
SQLOLE_E_OBJECTALREADYEXISTS = 0x520D,
SQLOLE_E_INDEXALREADYEXISTS = 0x520E,
SQLOLE_E_DBALREADYEXISTS = 0x520F,
SQLOLE_E_LOGINALREADYEXISTS = 0x5210,
SQLOLE_E_DEVICEALREADYEXISTS = 0x5211,
SQLOLE_E_SKIPONLYTAPE = 0x5212,
SQLOLE_E_DEVICEINCOMPLETE = 0x5213,
SQLOLE_E_PROCALREADYEXISTS = 0x5214,
SQLOLE_E_UDDTALREADYEXISTS = 0x5215,
SQLOLE_E_TABLEALREADYEXISTS = 0x5216,
SQLOLE_E_RULEALREADYEXISTS = 0x5217,
SQLOLE_E_DEFAULTALREADYEXISTS = 0x5218,
SQLOLE_E_VIEWALREADYEXISTS = 0x5219,
SQLOLE_E_INDEXINCOMPLETE = 0x521A,
SQLOLE_E_TRIGINCOMPLETE = 0x521B,
SQLOLE_E_TRIGALREADYEXISTS = 0x521C,
SQLOLE_E_LANGUAGEINCOMPLETE = 0x521D,
SQLOLE_E_LANGUAGEALREADYEXISTS = 0x521E,
SQLOLE_E_LOGININCOMPLETE = 0x521F,
SQLOLE_E_RSERVERINCOMPLETE = 0x5220,
SQLOLE_E_RSERVERALREADYEXISTS = 0x5221,
SQLOLE_E_NULLRLOGINALREADYEXISTS = 0x5222,
SQLOLE_E_RLOGINALREADYEXISTS = 0x5223,
SQLOLE_E_REMOTENEEDSLOCAL = 0x5224,
SQLOLE_E_BACKUPNEEDSDEVICE = 0x5225,
SQLOLE_E_NEEDMANUALFILTERNAME = 0x5226,
SQLOLE_E_TASKINCOMPLETE = 0x5227,
SQLOLE_E_ARTINCOMPLETE = 0x5228,
SQLOLE_E_PUBINCOMPLETE = 0x5229,
SQLOLE_E_SUBINCOMPLETE = 0x522A,
SQLOLE_E_ALERTINCOMPLETE = 0x522B,
SQLOLE_E_OPERATORINCOMPLETE = 0x522C,
SQLOLE_E_NAMEMUSTMATCH = 0x522D,
SQLOLE_E_TRIGREQTABLENAME = 0x522E,
SQLOLE_E_MUSTBESYNCTASK = 0x522F,
SQLOLE_E_NOEVENTCOMPLETION = 0x5230,
SQLOLE_E_FKEYINCOMPLETE = 0x5231,
SQLOLE_E_KEYINCOMPLETE = 0x5232,
SQLOLE_E_KEYALREADYEXISTS = 0x5233,
SQLOLE_E_CHECKINCOMPLETE = 0x5234,
SQLOLE_E_DRIDEFAULTINCOMPLETE = 0x5235,
SQLOLE_E_CHECKALREADYEXISTS = 0x5236,
SQLOLE_E_ONLYONEPRIMARYKEY = 0x5237,
SQLOLE_E_NEEDMANUALVIEWNAME = 0x5238,
SQLOLE_E_SERVERGROUPINCOMPLETE = 0x5239,
SQLOLE_E_REGISTEREDSERVERINCOMPLETE = 0x523A,
SQLOLE_E_SERVERGROUPALREADYEXISTS = 0x523B,
SQLOLE_E_REGISTEREDSERVERALREADYEXISTS = 0x523C,
SQLOLE_E_NEEDLOADTABLENAME = 0x523D,
// Errors indicating an invalid parameter passed to a method or property, or other unexpected condition.
SQLOLE_ECAT_INVALIDPARAMETER = 0x5300,
SQLOLE_E_BADCOLLEN = 0x5300,
SQLOLE_E_INVALIDPERFMONSET = 0x5301,
SQLOLE_E_BADDEVICETYPE = 0x5302,
SQLOLE_E_SIZEGREATERTHAN0 = 0x5303,
SQLOLE_E_RESULTSETOUTOFRANGE = 0x5304,
SQLOLE_E_OUTPUTPARAMREQUIRED = 0x5305,
SQLOLE_E_PROPTEXTNONNULL = 0x5306,
SQLOLE_E_BADPROCTYPE = 0x5307,
SQLOLE_E_BADFILLFACTOR = 0x5308,
SQLOLE_E_INVALIDINDEXTYPE = 0x5309,
SQLOLE_E_INVALIDPRIVTYPE = 0x530A,
SQLOLE_E_BADTRIGTYPE = 0x530B,
SQLOLE_E_INVALIDDAYOFWEEK = 0x530C,
SQLOLE_E_INVALIDMONTH = 0x530D,
SQLOLE_E_BADDAYCOUNT = 0x530E,
SQLOLE_E_BADMONTHCOUNT = 0x530F,
SQLOLE_E_BADCONFIGVALUE = 0x5310,
SQLOLE_E_INVALIDPARAMINDEX = 0x5311,
SQLOLE_E_INVALIDPARAMRANGE = 0x5312,
SQLOLE_E_INVALIDDBOBJTYPE = 0x5313,
SQLOLE_E_ROWCOLOUTOFRANGE = 0x5314,
SQLOLE_E_NONUNIQUENAME = 0x5315,
SQLOLE_E_NOTIMESTAMPUDDT = 0x5316,
SQLOLE_E_INVALIDNAME = 0x5317,
SQLOLE_E_INVALIDCOMPLETION = 0x5318,
SQLOLE_E_NAMETOOLONG = 0x5319,
SQLOLE_E_INVALIDFREQTYPE = 0x531A,
SQLOLE_E_INVALIDFREQSUBDAY = 0x531B,
SQLOLE_E_INVALIDFREQRELINTERVAL = 0x531C,
SQLOLE_E_BADWEEKLYINTERVAL = 0x531D,
SQLOLE_E_BADMONTHLYINTERVAL = 0x531E,
SQLOLE_E_BADMONTHLYRELINTERVAL = 0x531F,
SQLOLE_E_INVALIDSRVOPTION = 0x5320,
SQLOLE_E_INVALIDRUNPRIORITY = 0x5321,
SQLOLE_E_DBNAMEREQUIRED = 0x5322,
SQLOLE_E_PUBNAMEREQUIRED = 0x5323,
SQLOLE_E_PROPINDEXOUTOFRANGE = 0x5324,
SQLOLE_E_INVALIDNOTIFYTYPE = 0x5325,
SQLOLE_E_INVALIDENUMNOTIFYTYPE = 0x5326,
SQLOLE_E_INVALIDWEEKDAY = 0x5327,
SQLOLE_E_INVALIDOBJECTTYPE = 0x5328,
SQLOLE_E_OBJECTREQUIRED = 0x5329,
SQLOLE_E_INVALIDEVENTTYPE = 0x532A,
SQLOLE_E_INVALIDCOMPLETIONTYPE = 0x532B,
SQLOLE_E_INVALIDKEYTYPE = 0x532C,
SQLOLE_E_TABLEMUSTBECREATED = 0x532D,
SQLOLE_E_INVALIDPREARTICLE = 0x532E,
SQLOLE_E_INVALIDSECURITYMODE = 0x532F,
SQLOLE_E_INVALIDPREC = 0x5330,
SQLOLE_E_INVALIDDEPENDENCYTYPE = 0x5331,
SQLOLE_E_INVALIDVERIFYCONNTYPE = 0x5332,
SQLOLE_E_INVALIDSTATUSINFOTYPE = 0x5333,
SQLOLE_E_INVALIDFORWARDINGSEVERITY = 0x5334,
SQLOLE_E_INVALIDFORWARDINGSERVER = 0x5335,
SQLOLE_E_INVALIDRESTARTINTERVAL = 0x5336,
SQLOLE_E_INVALIDHISTORYROWSMAX = 0x5337,
SQLOLE_E_NAMETOOSHORT = 0x5338,
SQLOLE_E_UNEXPECTED = 0x5339,
SQLOLE_E_INVALIDHISTORYROWSPERTASKMAX = 0x533A,
SQLOLE_E_INVALIDOBJSORTTYPE = 0x533B,
SQLOLE_E_INVALIDEXECTYPE = 0x533C,
// Errors indicating that either the connected SQL Server is an invalid version,
// or the client platform is invalid, or a combination of those; or that the
// server has not been set up properly for SQLOLE (the required stored procedures
// are not installed)..
SQLOLE_ECAT_INVALIDPLATFORM = 0x5400,
SQLOLE_E_BACKUPSQL60ONLY = 0x5400,
SQLOLE_E_MSSQLONLY = 0x5401,
SQLOLE_E_WIN95REQUIRESCONN = 0x5402,
SQLOLE_E_NOTONWIN95 = 0x5403,
SQLOLE_E_SQL60ONLY = 0x5404,
SQLOLE_E_REPLSQL60ONLY = 0x5405,
SQLOLE_E_STARTUPPROCSQL60ONLY = 0x5406,
SQLOLE_E_NEEDSQLOLEPROCS = 0x5407,
SQLOLE_E_ALTERSQL60ONLY = 0x5408,
SQLOLE_E_SORTEDDATAREORGSQL60ONLY = 0x5409,
SQLOLE_E_MSSQLNTONLY = 0x540A,
SQLOLE_E_WIN95REQUIRESSQL60 = 0x540B,
SQLOLE_E_BACKUPSQL65ONLY = 0x540C,
SQLOLE_E_SQL65ONLY = 0x540D,
SQLOLE_E_ALERTSQL65ONLY = 0x540E,
SQLOLE_E_REMOTESQL65ONLY = 0x540F,
SQLOLE_E_PIPEDEVSQL60ONLY = 0x5410,
SQLOLE_E_FKEYSQL65ONLY = 0x5411,
SQLOLE_E_XPIMPERSONATESQL65ONLY = 0x5412,
// Errors indicating that the named object was not found in the collection, or
// that the ordinal passed as a collection index was out of range.
SQLOLE_ECAT_ITEMNOTFOUND = 0x5500,
SQLOLE_E_RULENOTFOUND = 0x5500,
SQLOLE_E_DEFAULTNOTFOUND = 0x5501,
SQLOLE_E_TYPENOTFOUND = 0x5502,
SQLOLE_E_LOGINNOTFOUND = 0x5503,
SQLOLE_E_GROUPNOTFOUND = 0x5504,
SQLOLE_E_LANGNOTFOUND = 0x5505,
SQLOLE_E_DBNOTFOUND = 0x5506,
SQLOLE_E_DEVICENOTFOUND = 0x5507,
SQLOLE_E_COLUMNNOTFOUND = 0x5508,
SQLOLE_E_ORDOUTOFRANGE = 0x5509,
SQLOLE_E_NAMENOTFOUND = 0x550A,
SQLOLE_E_USERNOTFOUND = 0x550B,
SQLOLE_E_NAMENOTINCACHE = 0x550C,
SQLOLE_E_PROPNAMENOTFOUND = 0x550D,
SQLOLE_E_IDNOTFOUND = 0x550E,
// Errors indicating that the current login does not have sufficient privilege
// to perform the requested operation.
SQLOLE_ECAT_UNPRIVILEGEDLOGIN = 0x5600,
SQLOLE_E_MUSTBESAORDBO = 0x5600,
SQLOLE_E_MUSTBESAORLOGIN = 0x5601,
SQLOLE_E_MUSTBESA = 0x5602,
// Errors indicating a query execution error or an inaccessible database.
SQLOLE_ECAT_EXECUTION = 0x5700,
SQLOLE_E_SYSPROCERROR = 0x5700,
SQLOLE_E_CACHEEXECERROR = 0x5701,
SQLOLE_E_INACCESSIBLEDB = 0x5702,
SQLOLE_E_BATCHCOMPLETEWITHERRORS = 0x5703,
// Errors indicating the connection to SQL Server cannot be restored. SQLOLE will
// automatically reconnect (as determined by the SQLServer.AutoReconnect property)
// but the network may be down or the server not started.
SQLOLE_ECAT_CONNECTION = 0x5800,
SQLOLE_E_CANTRECONNDEADCONN = 0x5800,
// Errors indicating insufficient resources either locally or on the server.
SQLOLE_ECAT_RESOURCE = 0x5900,
SQLOLE_E_OUTOFMEMORY = 0x5900,
SQLOLE_E_NOMOREDEVNOS = 0x5901,
// Errors indicating termination of Transfer.
SQLOLE_ECAT_TRANSFER = 0x5A00,
SQLOLE_E_USERABORTED = 0x5A00, //User aborted transfer
SQLOLE_E_FILEPATHREQUIRED = 0x5A01, //User should specify path for script file
// Error indicating failure of bulk copy
SQLOLE_ECAT_BCP = 0x5B00,
SQLOLE_E_INCOMPATIBLEPROPS = 0x5B00, //Some of the bcp object properties are incompatible.
SQLOLE_E_BCPEXECFAILED = 0x5B01, //dblib bcp_exec function failed
SQLOLE_E_BCPINITFAILED = 0x5B02, //dblib bcp_init function failed
SQLOLE_E_BCPCONTROLFAILED = 0x5B03, //dblib bcp_control function failed
SQLOLE_E_BCPCOLFMTFAILED = 0x5B04, //dblib bcp_colfmt failed.
SQLOLE_E_SUSPENDINDEX = 0x5B05, //Error trying to suspend indexing
SQLOLE_E_RESUMEINDEX = 0x5B06, //Error trying to resume suspended indexing
SQLOLE_E_LASTERROR = 0x5AFF
} SQLOLE_ERROR_TYPE;
// SQLOLE_ERROR #defines. These are categories, not severities; there is no
// mathematical relationship between groupings.
#ifndef _SQLOLE_ODL_ // Not done in .ODL file.
// Switch on SQLOLE_ECAT to determine the category of a returned error code.
// Use long cast as lint can complain about an enum-vs.-int.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -