📄 sqlcli.h
字号:
/* -*- C -*- *//* sqlcli.h Header File for SQL CLI. * The actual header file must contain at least the information * specified here, except that the comments may vary. * * This file is adapted for PostgreSQL * from the SQL98 August 1994 draft standard. * Thomas G. Lockhart 1999-06-16 * * Updated from Date and Darwen, 1997, with some definitions * not in the SQL3 August 1994 draft standard * - Thomas Lockhart 1999-06-17 *//* API declaration data types */typedef unsigned char SQLCHAR;typedef long SQLINTEGER;typedef short SQLSMALLINT;typedef double SQLDOUBLE;typedef float SQLREAL;typedef void * SQLPOINTER;typedef unsigned char SQLDATE;typedef unsigned char SQLTIME;typedef unsigned char SQLTIMESTAMP;typedef unsigned char SQLDECIMAL;typedef unsigned char SQLNUMERIC;/* function return type */typedef SQLSMALLINT SQLRETURN;/* generic data structures */typedef SQLINTEGER SQLHENV; /* environment handle */typedef SQLINTEGER SQLHDBC; /* connection handle */typedef SQLINTEGER SQLHSTMT; /* statement handle */typedef SQLINTEGER SQLHDESC; /* descriptor handle *//* special length/indicator values */#define SQL_NULL_DATA -1#define SQL_DATA_AT_EXEC -2/* return values from functions */#define SQL_SUCCESS 0#define SQL_SUCCESS_WITH_INFO 1#define SQL_NEED_DATA 99#define SQL_NO_DATA 100#define SQL_ERROR -1#define SQL_INVALID_HANDLE -2/* test for SQL_SUCCESS or SQL_SUCCESS_WITH_INFO */#define SQL_SUCCEEDED(rc) (((rc)&(~1))==0)/* flags for null-terminated string */#define SQL_NTS -3#define SQL_NTSL -3L/* maximum message length from Date and Darwen * was 255 in the August 1994 draft standard * - Thomas Lockhart 1999-06-17 */#define SQL_MAX_MESSAGE_LENGTH 512/* maximum identifier length */#define SQL_MAX_ID_LENGTH 18/* date/time length constants *//* add p+1 for time and timestamp if precision is nonzero */#define SQL_DATE_LEN 10#define SQL_TIME_LEN 8#define SQL_TIMESTAMP_LEN 19/* handle type identifiers */#define SQL_HANDLE_ENV 1#define SQL_HANDLE_DBC 2#define SQL_HANDLE_STMT 3#define SQL_HANDLE_DESC 4/* environment attribute */#define SQL_ATTR_OUTPUT_NTS 10001/* connection attribute */#define SQL_ATTR_AUTO_IPD 10001/* statement attributes */#define SQL_ATTR_APP_ROW_DESC 10010#define SQL_ATTR_APP_PARAM_DESC 10011#define SQL_ATTR_IMP_ROW_DESC 10012#define SQL_ATTR_IMP_PARAM_DESC 10013#define SQL_ATTR_CURSOR_SCROLLABLE -1#define SQL_ATTR_CURSOR_SENSITIVITY -2/* identifiers of fields in the SQL descriptor *//* These ran 1-99 in the August 1994 draft standard * - Thomas Lockhart 1999-06-17 */#define SQL_DESC_COUNT 1001#define SQL_DESC_TYPE 1002#define SQL_DESC_LENGTH 1003#define SQL_DESC_OCTET_LENGTH_POINTER 1004#define SQL_DESC_PRECISION 1005#define SQL_DESC_SCALE 1006#define SQL_DESC_DATETIME_INTERVAL_CODE 1007#define SQL_DESC_NULLABLE 1008#define SQL_DESC_INDICATOR_POINTER 1009#define SQL_DESC_DATA_POINTER 1010#define SQL_DESC_NAME 1011#define SQL_DESC_UNNAMED 1012#define SQL_DESC_OCTET_LENGTH 1013#define SQL_DESC_DATETIME_INTERVAL_PRECISION 1014#define SQL_DESC_COLLATION_CATALOG 1015#define SQL_DESC_COLLATION_SCHEMA 1016#define SQL_DESC_COLLATION_NAME 1017#define SQL_DESC_CHARACTER_SET_CATALOG 1018#define SQL_DESC_CHARACTER_SET_SCHEMA 1019#define SQL_DESC_CHARACTER_SET_NAME 1020#define SQL_DESC_PARAMETER_MODE 1021#define SQL_DESC_PARAMETER_ORDINAL_POSITION 1022#define SQL_DESC_PARAMETER_SPECIFIC_CATALOG 1023#define SQL_DESC_PARAMETER_SPECIFIC_SCHEMA 1024#define SQL_DESC_PARAMETER_SPECIFIC_NAME 1025#define SQL_DESC_ALLOC_TYPE 1099/* identifiers of fields in the diagnostics area *//* Many new definitions since August 1994 draft standard * - Thomas Lockhart 1999-06-17 */#define SQL_DIAG_RETURNCODE 1#define SQL_DIAG_NUMBER 2#define SQL_DIAG_ROW_COUNT 3#define SQL_DIAG_SQLSTATE 4#define SQL_DIAG_NATIVE 5#define SQL_DIAG_MESSAGE_TEXT 6#define SQL_DIAG_DYNAMIC_FUNCTION 7#define SQL_DIAG_CLASS_ORIGIN 8#define SQL_DIAG_SUBCLASS_ORIGIN 9#define SQL_DIAG_CONNECTION_NAME 10#define SQL_DIAG_SERVER_NAME 11#define SQL_DIAG_DYNAMIC_FUNCTION_CODE 12#define SQL_DIAG_MORE 13#define SQL_DIAG_CONDITION_NUMBER 14#define SQL_DIAG_CONSTRAINT_CATALOG 15#define SQL_DIAG_CONSTRAINT_SCHEMA 16#define SQL_DIAG_CONSTRAINT_NAME 17#define SQL_DIAG_CATALOG_NAME 18#define SQL_DIAG_SCHEMA_NAME 19#define SQL_DIAG_TABLE_NAME 20#define SQL_DIAG_COLUMN_NAME 21#define SQL_DIAG_CURSOR_NAME 22#define SQL_DIAG_MESSAGE_LENGTH 23#define SQL_DIAG_MESSAGE_OCTET_LENGTH 24/* dynamic function codes returned in diagnostics area */#define SQL_DIAG_ALTER_DOMAIN 3#define SQL_DIAG_ALTER_TABLE 4#define SQL_DIAG_CREATE_ASSERTION 6#define SQL_DIAG_CREATE_CHARACTER_SET 8#define SQL_DIAG_CREATE_COLLATION 10#define SQL_DIAG_CREATE_DOMAIN 23#define SQL_DIAG_CREATE_SCHEMA 64#define SQL_DIAG_CREATE_TABLE 77#define SQL_DIAG_CREATE_TRANSLATION 79#define SQL_DIAG_CREATE_VIEW 84#define SQL_DIAG_DELETE_WHERE 19#define SQL_DIAG_DROP_ASSERTION 24#define SQL_DIAG_DROP_CHARACTER_SET 25#define SQL_DIAG_DROP_COLLATION 26#define SQL_DIAG_DROP_DOMAIN 27#define SQL_DIAG_DROP_SCHEMA 31#define SQL_DIAG_DROP_TABLE 32#define SQL_DIAG_DROP_TRANSLATION 33#define SQL_DIAG_DROP_VIEW 36#define SQL_DIAG_DYNAMIC_DELETE_CURSOR 54#define SQL_DIAG_DYNAMIC_UPDATE_CURSOR 55#define SQL_DIAG_GRANT 48#define SQL_DIAG_INSERT 50#define SQL_DIAG_REVOKE 59#define SQL_DIAG_SELECT 41#define SQL_DIAG_SELECT_CURSOR 85#define SQL_DIAG_SET_CATALOG 66#define SQL_DIAG_SET_CONSTRAINT 68#define SQL_DIAG_SET_NAMES 72#define SQL_DIAG_SET_SCHEMA 74#define SQL_DIAG_SET_SESSION_AUTHORIZATION 76#define SQL_DIAG_SET_TIME_ZONE 71#define SQL_DIAG_SET_TRANSACTION 75#define SQL_DIAG_UNKNOWN_STATEMENT 0#define SQL_DIAG_UPDATE_WHERE 82/* SQL data type codes */#define SQL_CHAR 1#define SQL_NUMERIC 2#define SQL_DECIMAL 3#define SQL_INTEGER 4#define SQL_SMALLINT 5#define SQL_FLOAT 6#define SQL_REAL 7#define SQL_DOUBLE 8#define SQL_DATETIME 9#define SQL_INTERVAL 10#define SQL_VARCHAR 12#define SQL_BIT 14#define SQL_BIT_VARYING 15/* One-parameter shortcuts for datetime data types */#define SQL_TYPE_DATE 91#define SQL_TYPE_TIME 92#define SQL_TYPE_TIME_WITH_TIMEZONE 93#define SQL_TYPE_TIMESTAMP 94#define SQL_TYPE_TIMESTAMP_WITH_TIMEZONE 95#define SQL_INTERVAL_DAY 103#define SQL_INTERVAL_DAY_TO_HOUR 108#define SQL_INTERVAL_DAY_TO_MINUTE 109#define SQL_INTERVAL_DAY_TO_SECOND 110#define SQL_INTERVAL_HOUR 104#define SQL_INTERVAL_HOUR_TO_MINUTE 111#define SQL_INTERVAL_HOUR_TO_SECOND 112#define SQL_INTERVAL_MINUTE 105#define SQL_INTERVAL_MINUTE_TO_SECOND 113#define SQL_INTERVAL_MONTH 102#define SQL_INTERVAL_SECOND 106#define SQL_INTERVAL_YEAR 101#define SQL_INTERVAL_YEAR_TO_MONTH 107/* GetTypeInfo request for all data types */#define SQL_ALL_TYPES 0/* BindCol() and BindParam() default conversion code */#define SQL_DEFAULT 99/* GetData code indicating that the application parameter *//* descriptor specifies the data type */#define SQL_ARD_TYPE -99/* date/time type subcodes */#define SQL_CODE_DATE 1#define SQL_CODE_TIME 2#define SQL_CODE_TIMESTAMP 3#define SQL_CODE_TIME_ZONE 4#define SQL_CODE_TIMESTAMP_ZONE 5/* interval qualifier codes */#define SQL_DAY 3#define SQL_DAY_TO_HOUR 8#define SQL_DAY_TO_MINUTE 9#define SQL_DAY_TO_SECOND 10#define SQL_HOUR 4#define SQL_HOUR_TO_MINUTE 11#define SQL_HOUR_TO_SECOND 12#define SQL_MINUTE 5#define SQL_MINUTE_TO_SECOND 13#define SQL_MONTH 2#define SQL_SECOND 6#define SQL_YEAR 1#define SQL_YEAR_TO_MONTH 7/* CLI option values */#define SQL_FALSE 0#define SQL_TRUE 1#define SQL_NONSCROLLABLE 0#define SQL_SCROLLABLE 1/* parameter modes */#define SQL_PARAM_MODE_IN 1#define SQL_PARAM_MODE_OUT 4#define SQL_PARAM_MODE_INOUT 2#define SQL_PARAM_MODE_NONE 0/* values of NULLABLE field in descriptor */#define SQL_NO_NULLS 0#define SQL_NULLABLE 1/* Values returned by GetTypeInfo for the SEARCHABLE column */#define SQL_PRED_NONE 0#define SQL_PRED_CHAR 1#define SQL_PRED_BASIC 2/* values of UNNAMED field in descriptor */#define SQL_NAMED 0#define SQL_UNNAMED 1/* values of ALLOC_TYPE field in descriptor */#define SQL_DESC_ALLOC_AUTO 1#define SQL_DESC_ALLOC_USER 2/* EndTran() options */#define SQL_COMMIT 0#define SQL_ROLLBACK 1/* FreeStmt() options */#define SQL_CLOSE 0#define SQL_DROP 1#define SQL_UNBIND 2#define SQL_RESET_PARAMS 3/* null handles returned by AllocHandle() */#define SQL_NULL_HENV 0#define SQL_NULL_HDBC 0#define SQL_NULL_HSTMT 0#define SQL_NULL_HDESC 0/* GetFunctions values to identify CLI routines */#define SQL_API_SQLALLOCCONNECT 1#define SQL_API_SQLALLOCENV 2#define SQL_API_SQLALLOCHANDLE 1001#define SQL_API_SQLALLOCSTMT 3#define SQL_API_SQLBINDCOL 4#define SQL_API_SQLBINDPARAM 1002#define SQL_API_SQLCANCEL 5#define SQL_API_SQLCLOSECURSOR 1003#define SQL_API_SQLCOLATTRIBUTE 6#define SQL_API_SQLCONNECT 7#define SQL_API_SQLCOPYDESC 1004#define SQL_API_SQLDATASOURCES 57#define SQL_API_SQLDESCRIBECOL 8#define SQL_API_SQLDISCONNECT 9#define SQL_API_SQLENDTRAN 1005#define SQL_API_SQLERROR 10#define SQL_API_SQLEXECDIRECT 11#define SQL_API_SQLEXECUTE 12#define SQL_API_SQLFETCH 13#define SQL_API_SQLFETCHSCROLL 1021#define SQL_API_SQLFREECONNECT 14#define SQL_API_SQLFREEENV 15#define SQL_API_SQLFREEHANDLE 1006#define SQL_API_SQLFREESTMT 16#define SQL_API_SQLGETCONNECTATTR 1007#define SQL_API_SQLGETCURSORNAME 17#define SQL_API_SQLGETDATA 43#define SQL_API_SQLGETDESCFIELD 1008#define SQL_API_SQLGETDESCREC 1009#define SQL_API_SQLGETDIAGFIELD 1010#define SQL_API_SQLGETDIAGREC 1011#define SQL_API_SQLGETENVATTR 1012#define SQL_API_SQLGETFUNCTIONS 44#define SQL_API_SQLGETINFO 45#define SQL_API_SQLGETSTMTATTR 1014#define SQL_API_SQLGETTYPEINFO 47#define SQL_API_SQLNUMRESULTCOLS 18#define SQL_API_SQLPARAMDATA 48#define SQL_API_SQLPREPARE 19#define SQL_API_SQLPUTDATA 49#define SQL_API_SQLRELEASEENV 1015 /* Obsolete? */#define SQL_API_SQLROWCOUNT 20#define SQL_API_SQLSCROLLFETCH 1021 /* Obsolete? */#define SQL_API_SQLSETCONNECTATTR 1016#define SQL_API_SQLSETCURSORNAME 21#define SQL_API_SQLSETDESCFIELD 1017#define SQL_API_SQLSETDESCREC 1018#define SQL_API_SQLSETENVATTR 1019#define SQL_API_SQLSETSTMTATTR 1020/* information requested by GetInfo */#define SQL_MAXIMUM_DRIVER_CONNECTIONS 0#define SQL_MAXIMUM_CONCURRENT_ACTIVITIES 1#define SQL_DATA_SOURCE_NAME 2#define SQL_FETCH_DIRECTION 8#define SQL_SERVER_NAME 13#define SQL_DBMS_NAME 17#define SQL_DBMS_VERSION 18#define SQL_CURSOR_COMMIT_BEHAVIOR 23#define SQL_DATA_SOURCE_READ_ONLY 25
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -