[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 package DBD::mysql::GetInfo; 2 ######################################## 3 # DBD::mysql::GetInfo 4 # 5 # 6 # Generated by DBI::DBD::Metadata 7 # $Author: rlippan $ <-- the person to blame 8 # $Revision: 1.2 $ 9 # $Date: 2003/04/01 01:17:27 $ 10 11 use strict; 12 use DBD::mysql; 13 # Beware: not officially documented interfaces... 14 # use DBI::Const::GetInfoType qw(%GetInfoType); 15 # use DBI::Const::GetInfoReturn qw(%GetInfoReturnTypes %GetInfoReturnValues); 16 17 my $sql_driver = 'mysql'; 18 my $sql_ver_fmt = '%02d.%02d.%04d'; # ODBC version string: ##.##.##### 19 my $sql_driver_ver = do { 20 no warnings; 21 sprintf $sql_ver_fmt, split (/./, $DBD::mysql::VERSION); 22 }; 23 24 my @Keywords = qw( 25 26 BIGINT 27 BLOB 28 DEFAULT 29 KEYS 30 LIMIT 31 LONGBLOB 32 MEDIMUMBLOB 33 MEDIUMINT 34 MEDIUMTEXT 35 PROCEDURE 36 REGEXP 37 RLIKE 38 SHOW 39 TABLES 40 TINYBLOB 41 TINYTEXT 42 UNIQUE 43 UNSIGNED 44 ZEROFILL 45 ); 46 47 48 sub sql_keywords { 49 50 return join ',', @Keywords; 51 52 } 53 54 55 56 sub sql_data_source_name { 57 my $dbh = shift; 58 return "dbi:$sql_driver:" . $dbh->{Name}; 59 } 60 61 sub sql_user_name { 62 my $dbh = shift; 63 # Non-standard attribute 64 return $dbh->{CURRENT_USER}; 65 } 66 67 68 #################### 69 # makefunc() 70 # returns a ref to a sub that that calls into XS to get 71 # values for info types that must needs be coded in C 72 73 sub makefunk ($) { 74 my $type = shift; 75 return sub {dbd_mysql_get_info(shift, $type)} 76 } 77 78 79 80 81 our %info = ( 82 20 => 'N', # SQL_ACCESSIBLE_PROCEDURES 83 19 => 'Y', # SQL_ACCESSIBLE_TABLES 84 0 => 0, # SQL_ACTIVE_CONNECTIONS 85 116 => 0, # SQL_ACTIVE_ENVIRONMENTS 86 1 => 0, # SQL_ACTIVE_STATEMENTS 87 169 => 127, # SQL_AGGREGATE_FUNCTIONS 88 117 => 0, # SQL_ALTER_DOMAIN 89 86 => 3, # SQL_ALTER_TABLE 90 10021 => 0, # SQL_ASYNC_MODE 91 120 => 2, # SQL_BATCH_ROW_COUNT 92 121 => 2, # SQL_BATCH_SUPPORT 93 82 => 0, # SQL_BOOKMARK_PERSISTENCE 94 114 => 1, # SQL_CATALOG_LOCATION 95 10003 => 'Y', # SQL_CATALOG_NAME 96 41 => makefunk 41, # SQL_CATALOG_NAME_SEPARATOR 97 42 => makefunk 42, # SQL_CATALOG_TERM 98 92 => 29, # SQL_CATALOG_USAGE 99 10004 => '', # SQL_COLLATING_SEQUENCE 100 10004 => '', # SQL_COLLATION_SEQ 101 87 => 'Y', # SQL_COLUMN_ALIAS 102 22 => 0, # SQL_CONCAT_NULL_BEHAVIOR 103 53 => 259071, # SQL_CONVERT_BIGINT 104 54 => 0, # SQL_CONVERT_BINARY 105 55 => 259071, # SQL_CONVERT_BIT 106 56 => 259071, # SQL_CONVERT_CHAR 107 57 => 259071, # SQL_CONVERT_DATE 108 58 => 259071, # SQL_CONVERT_DECIMAL 109 59 => 259071, # SQL_CONVERT_DOUBLE 110 60 => 259071, # SQL_CONVERT_FLOAT 111 48 => 0, # SQL_CONVERT_FUNCTIONS 112 # 173 => undef, # SQL_CONVERT_GUID 113 61 => 259071, # SQL_CONVERT_INTEGER 114 123 => 0, # SQL_CONVERT_INTERVAL_DAY_TIME 115 124 => 0, # SQL_CONVERT_INTERVAL_YEAR_MONTH 116 71 => 0, # SQL_CONVERT_LONGVARBINARY 117 62 => 259071, # SQL_CONVERT_LONGVARCHAR 118 63 => 259071, # SQL_CONVERT_NUMERIC 119 64 => 259071, # SQL_CONVERT_REAL 120 65 => 259071, # SQL_CONVERT_SMALLINT 121 66 => 259071, # SQL_CONVERT_TIME 122 67 => 259071, # SQL_CONVERT_TIMESTAMP 123 68 => 259071, # SQL_CONVERT_TINYINT 124 69 => 0, # SQL_CONVERT_VARBINARY 125 70 => 259071, # SQL_CONVERT_VARCHAR 126 122 => 0, # SQL_CONVERT_WCHAR 127 125 => 0, # SQL_CONVERT_WLONGVARCHAR 128 126 => 0, # SQL_CONVERT_WVARCHAR 129 74 => 1, # SQL_CORRELATION_NAME 130 127 => 0, # SQL_CREATE_ASSERTION 131 128 => 0, # SQL_CREATE_CHARACTER_SET 132 129 => 0, # SQL_CREATE_COLLATION 133 130 => 0, # SQL_CREATE_DOMAIN 134 131 => 0, # SQL_CREATE_SCHEMA 135 132 => 1045, # SQL_CREATE_TABLE 136 133 => 0, # SQL_CREATE_TRANSLATION 137 134 => 0, # SQL_CREATE_VIEW 138 23 => 2, # SQL_CURSOR_COMMIT_BEHAVIOR 139 24 => 2, # SQL_CURSOR_ROLLBACK_BEHAVIOR 140 10001 => 0, # SQL_CURSOR_SENSITIVITY 141 2 => \&sql_data_source_name, # SQL_DATA_SOURCE_NAME 142 25 => 'N', # SQL_DATA_SOURCE_READ_ONLY 143 119 => 7, # SQL_DATETIME_LITERALS 144 17 => 'MySQL', # SQL_DBMS_NAME 145 18 => makefunk 18, # SQL_DBMS_VER 146 170 => 3, # SQL_DDL_INDEX 147 26 => 2, # SQL_DEFAULT_TRANSACTION_ISOLATION 148 26 => 2, # SQL_DEFAULT_TXN_ISOLATION 149 10002 => 'N', # SQL_DESCRIBE_PARAMETER 150 # 171 => undef, # SQL_DM_VER 151 3 => 137076632, # SQL_DRIVER_HDBC 152 # 135 => undef, # SQL_DRIVER_HDESC 153 4 => 137076088, # SQL_DRIVER_HENV 154 # 76 => undef, # SQL_DRIVER_HLIB 155 # 5 => undef, # SQL_DRIVER_HSTMT 156 6 => 'libmyodbc3.so', # SQL_DRIVER_NAME 157 77 => '03.51', # SQL_DRIVER_ODBC_VER 158 7 => $sql_driver_ver, # SQL_DRIVER_VER 159 136 => 0, # SQL_DROP_ASSERTION 160 137 => 0, # SQL_DROP_CHARACTER_SET 161 138 => 0, # SQL_DROP_COLLATION 162 139 => 0, # SQL_DROP_DOMAIN 163 140 => 0, # SQL_DROP_SCHEMA 164 141 => 7, # SQL_DROP_TABLE 165 142 => 0, # SQL_DROP_TRANSLATION 166 143 => 0, # SQL_DROP_VIEW 167 144 => 0, # SQL_DYNAMIC_CURSOR_ATTRIBUTES1 168 145 => 0, # SQL_DYNAMIC_CURSOR_ATTRIBUTES2 169 27 => 'Y', # SQL_EXPRESSIONS_IN_ORDERBY 170 8 => 63, # SQL_FETCH_DIRECTION 171 84 => 0, # SQL_FILE_USAGE 172 146 => 97863, # SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 173 147 => 6016, # SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 174 81 => 11, # SQL_GETDATA_EXTENSIONS 175 88 => 3, # SQL_GROUP_BY 176 28 => 4, # SQL_IDENTIFIER_CASE 177 #29 => sub {dbd_mysql_get_info(shift,$GetInfoType {SQL_IDENTIFIER_QUOTE_CHAR})}, 178 29 => makefunk 29, # SQL_IDENTIFIER_QUOTE_CHAR 179 148 => 0, # SQL_INDEX_KEYWORDS 180 149 => 0, # SQL_INFO_SCHEMA_VIEWS 181 172 => 7, # SQL_INSERT_STATEMENT 182 73 => 'N', # SQL_INTEGRITY 183 150 => 0, # SQL_KEYSET_CURSOR_ATTRIBUTES1 184 151 => 0, # SQL_KEYSET_CURSOR_ATTRIBUTES2 185 89 => \&sql_keywords, # SQL_KEYWORDS 186 113 => 'Y', # SQL_LIKE_ESCAPE_CLAUSE 187 78 => 0, # SQL_LOCK_TYPES 188 34 => 64, # SQL_MAXIMUM_CATALOG_NAME_LENGTH 189 97 => 0, # SQL_MAXIMUM_COLUMNS_IN_GROUP_BY 190 98 => 32, # SQL_MAXIMUM_COLUMNS_IN_INDEX 191 99 => 0, # SQL_MAXIMUM_COLUMNS_IN_ORDER_BY 192 100 => 0, # SQL_MAXIMUM_COLUMNS_IN_SELECT 193 101 => 0, # SQL_MAXIMUM_COLUMNS_IN_TABLE 194 30 => 64, # SQL_MAXIMUM_COLUMN_NAME_LENGTH 195 1 => 0, # SQL_MAXIMUM_CONCURRENT_ACTIVITIES 196 31 => 18, # SQL_MAXIMUM_CURSOR_NAME_LENGTH 197 0 => 0, # SQL_MAXIMUM_DRIVER_CONNECTIONS 198 10005 => 64, # SQL_MAXIMUM_IDENTIFIER_LENGTH 199 102 => 500, # SQL_MAXIMUM_INDEX_SIZE 200 104 => 0, # SQL_MAXIMUM_ROW_SIZE 201 32 => 0, # SQL_MAXIMUM_SCHEMA_NAME_LENGTH 202 105 => makefunk 105, # SQL_MAXIMUM_STATEMENT_LENGTH 203 # 20000 => undef, # SQL_MAXIMUM_STMT_OCTETS 204 # 20001 => undef, # SQL_MAXIMUM_STMT_OCTETS_DATA 205 # 20002 => undef, # SQL_MAXIMUM_STMT_OCTETS_SCHEMA 206 106 => makefunk 106, # SQL_MAXIMUM_TABLES_IN_SELECT 207 35 => 64, # SQL_MAXIMUM_TABLE_NAME_LENGTH 208 107 => 16, # SQL_MAXIMUM_USER_NAME_LENGTH 209 10022 => 0, # SQL_MAX_ASYNC_CONCURRENT_STATEMENTS 210 112 => 0, # SQL_MAX_BINARY_LITERAL_LEN 211 34 => 64, # SQL_MAX_CATALOG_NAME_LEN 212 108 => 0, # SQL_MAX_CHAR_LITERAL_LEN 213 97 => 0, # SQL_MAX_COLUMNS_IN_GROUP_BY 214 98 => 32, # SQL_MAX_COLUMNS_IN_INDEX 215 99 => 0, # SQL_MAX_COLUMNS_IN_ORDER_BY 216 100 => 0, # SQL_MAX_COLUMNS_IN_SELECT 217 101 => 0, # SQL_MAX_COLUMNS_IN_TABLE 218 30 => 64, # SQL_MAX_COLUMN_NAME_LEN 219 1 => 0, # SQL_MAX_CONCURRENT_ACTIVITIES 220 31 => 18, # SQL_MAX_CURSOR_NAME_LEN 221 0 => 0, # SQL_MAX_DRIVER_CONNECTIONS 222 10005 => 64, # SQL_MAX_IDENTIFIER_LEN 223 102 => 500, # SQL_MAX_INDEX_SIZE 224 32 => 0, # SQL_MAX_OWNER_NAME_LEN 225 33 => 0, # SQL_MAX_PROCEDURE_NAME_LEN 226 34 => 64, # SQL_MAX_QUALIFIER_NAME_LEN 227 104 => 0, # SQL_MAX_ROW_SIZE 228 103 => 'Y', # SQL_MAX_ROW_SIZE_INCLUDES_LONG 229 32 => 0, # SQL_MAX_SCHEMA_NAME_LEN 230 105 => 8192, # SQL_MAX_STATEMENT_LEN 231 106 => 31, # SQL_MAX_TABLES_IN_SELECT 232 35 => makefunk 35, # SQL_MAX_TABLE_NAME_LEN 233 107 => 16, # SQL_MAX_USER_NAME_LEN 234 37 => 'Y', # SQL_MULTIPLE_ACTIVE_TXN 235 36 => 'Y', # SQL_MULT_RESULT_SETS 236 111 => 'N', # SQL_NEED_LONG_DATA_LEN 237 75 => 1, # SQL_NON_NULLABLE_COLUMNS 238 85 => 2, # SQL_NULL_COLLATION 239 49 => 16777215, # SQL_NUMERIC_FUNCTIONS 240 9 => 1, # SQL_ODBC_API_CONFORMANCE 241 152 => 2, # SQL_ODBC_INTERFACE_CONFORMANCE 242 12 => 1, # SQL_ODBC_SAG_CLI_CONFORMANCE 243 15 => 1, # SQL_ODBC_SQL_CONFORMANCE 244 73 => 'N', # SQL_ODBC_SQL_OPT_IEF 245 10 => '03.80', # SQL_ODBC_VER 246 115 => 123, # SQL_OJ_CAPABILITIES 247 90 => 'Y', # SQL_ORDER_BY_COLUMNS_IN_SELECT 248 38 => 'Y', # SQL_OUTER_JOINS 249 115 => 123, # SQL_OUTER_JOIN_CAPABILITIES 250 39 => '', # SQL_OWNER_TERM 251 91 => 0, # SQL_OWNER_USAGE 252 153 => 2, # SQL_PARAM_ARRAY_ROW_COUNTS 253 154 => 3, # SQL_PARAM_ARRAY_SELECTS 254 80 => 3, # SQL_POSITIONED_STATEMENTS 255 79 => 31, # SQL_POS_OPERATIONS 256 21 => 'N', # SQL_PROCEDURES 257 40 => '', # SQL_PROCEDURE_TERM 258 114 => 1, # SQL_QUALIFIER_LOCATION 259 41 => '.', # SQL_QUALIFIER_NAME_SEPARATOR 260 42 => 'database', # SQL_QUALIFIER_TERM 261 92 => 29, # SQL_QUALIFIER_USAGE 262 93 => 3, # SQL_QUOTED_IDENTIFIER_CASE 263 11 => 'N', # SQL_ROW_UPDATES 264 39 => '', # SQL_SCHEMA_TERM 265 91 => 0, # SQL_SCHEMA_USAGE 266 43 => 7, # SQL_SCROLL_CONCURRENCY 267 44 => 17, # SQL_SCROLL_OPTIONS 268 14 => '\\', # SQL_SEARCH_PATTERN_ESCAPE 269 13 => makefunk 13, # SQL_SERVER_NAME 270 94 => 'ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜáíóúñÑ', # SQL_SPECIAL_CHARACTERS 271 155 => 7, # SQL_SQL92_DATETIME_FUNCTIONS 272 156 => 0, # SQL_SQL92_FOREIGN_KEY_DELETE_RULE 273 157 => 0, # SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 274 158 => 8160, # SQL_SQL92_GRANT 275 159 => 0, # SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 276 160 => 0, # SQL_SQL92_PREDICATES 277 161 => 466, # SQL_SQL92_RELATIONAL_JOIN_OPERATORS 278 162 => 32640, # SQL_SQL92_REVOKE 279 163 => 7, # SQL_SQL92_ROW_VALUE_CONSTRUCTOR 280 164 => 255, # SQL_SQL92_STRING_FUNCTIONS 281 165 => 0, # SQL_SQL92_VALUE_EXPRESSIONS 282 118 => 4, # SQL_SQL_CONFORMANCE 283 166 => 2, # SQL_STANDARD_CLI_CONFORMANCE 284 167 => 97863, # SQL_STATIC_CURSOR_ATTRIBUTES1 285 168 => 6016, # SQL_STATIC_CURSOR_ATTRIBUTES2 286 83 => 7, # SQL_STATIC_SENSITIVITY 287 50 => 491519, # SQL_STRING_FUNCTIONS 288 95 => 0, # SQL_SUBQUERIES 289 51 => 7, # SQL_SYSTEM_FUNCTIONS 290 45 => 'table', # SQL_TABLE_TERM 291 109 => 0, # SQL_TIMEDATE_ADD_INTERVALS 292 110 => 0, # SQL_TIMEDATE_DIFF_INTERVALS 293 52 => 106495, # SQL_TIMEDATE_FUNCTIONS 294 46 => 3, # SQL_TRANSACTION_CAPABLE 295 72 => 15, # SQL_TRANSACTION_ISOLATION_OPTION 296 46 => 3, # SQL_TXN_CAPABLE 297 72 => 15, # SQL_TXN_ISOLATION_OPTION 298 96 => 0, # SQL_UNION 299 96 => 0, # SQL_UNION_STATEMENT 300 47 => \&sql_user_name, # SQL_USER_NAME 301 10000 => 1992, # SQL_XOPEN_CLI_YEAR 302 ); 303 304 1; 305 306 __END__
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |