~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_show.cc

MergedĀ fromĀ PatG.

Show diffs side-by-side

added added

removed removed

Lines of Context:
584
584
  has_now_default= (timestamp_field == field &&
585
585
                    field->unireg_check != Field::TIMESTAMP_UN_FIELD);
586
586
    
587
 
  has_default= (field->type() != FIELD_TYPE_BLOB &&
 
587
  has_default= (field->type() != DRIZZLE_TYPE_BLOB &&
588
588
                !(field->flags & NO_DEFAULT_VALUE_FLAG) &&
589
589
                field->unireg_check != Field::NEXT_NUMBER
590
590
                  && has_now_default);
732
732
 
733
733
    if (flags & NOT_NULL_FLAG)
734
734
      packet->append(STRING_WITH_LEN(" NOT NULL"));
735
 
    else if (field->type() == FIELD_TYPE_TIMESTAMP)
 
735
    else if (field->type() == DRIZZLE_TYPE_TIMESTAMP)
736
736
    {
737
737
      /*
738
738
        TIMESTAMP field require explicit NULL flag, because unlike
1117
1117
  field_list.push_back(field=new Item_empty_string("db",NAME_CHAR_LEN));
1118
1118
  field->maybe_null=1;
1119
1119
  field_list.push_back(new Item_empty_string("Command",16));
1120
 
  field_list.push_back(new Item_return_int("Time",7, FIELD_TYPE_LONG));
 
1120
  field_list.push_back(new Item_return_int("Time",7, DRIZZLE_TYPE_LONG));
1121
1121
  field_list.push_back(field=new Item_empty_string("State",30));
1122
1122
  field->maybe_null=1;
1123
1123
  field_list.push_back(field=new Item_empty_string("Info",max_query_length));
3003
3003
  table->field[offset]->store(column_type.ptr(),
3004
3004
                         (tmp_buff ? tmp_buff - column_type.ptr() :
3005
3005
                          column_type.length()), cs);
3006
 
  is_blob= (field->type() == FIELD_TYPE_BLOB);
 
3006
  is_blob= (field->type() == DRIZZLE_TYPE_BLOB);
3007
3007
  if (field->has_charset() || is_blob ||
3008
 
      field->real_type() == FIELD_TYPE_VARCHAR ||  // For varbinary type
3009
 
      field->real_type() == FIELD_TYPE_STRING)     // For binary type
 
3008
      field->real_type() == DRIZZLE_TYPE_VARCHAR ||  // For varbinary type
 
3009
      field->real_type() == DRIZZLE_TYPE_STRING)     // For binary type
3010
3010
  {
3011
3011
    uint32_t octet_max_length= field->max_display_length();
3012
3012
    if (is_blob && octet_max_length != (uint32_t) 4294967295U)
3029
3029
 
3030
3030
  decimals= field->decimals();
3031
3031
  switch (field->type()) {
3032
 
  case FIELD_TYPE_NEWDECIMAL:
 
3032
  case DRIZZLE_TYPE_NEWDECIMAL:
3033
3033
    field_length= ((Field_new_decimal*) field)->precision;
3034
3034
    break;
3035
 
  case FIELD_TYPE_TINY:
3036
 
  case FIELD_TYPE_SHORT:
3037
 
  case FIELD_TYPE_LONG:
3038
 
  case FIELD_TYPE_LONGLONG:
 
3035
  case DRIZZLE_TYPE_TINY:
 
3036
  case DRIZZLE_TYPE_SHORT:
 
3037
  case DRIZZLE_TYPE_LONG:
 
3038
  case DRIZZLE_TYPE_LONGLONG:
3039
3039
    field_length= field->max_display_length() - 1;
3040
3040
    break;
3041
 
  case FIELD_TYPE_DOUBLE:
 
3041
  case DRIZZLE_TYPE_DOUBLE:
3042
3042
    field_length= field->field_length;
3043
3043
    if (decimals == NOT_FIXED_DEC)
3044
3044
      decimals= -1;                           // return NULL
3857
3857
  for (; fields_info->field_name; fields_info++)
3858
3858
  {
3859
3859
    switch (fields_info->field_type) {
3860
 
    case FIELD_TYPE_TINY:
3861
 
    case FIELD_TYPE_LONG:
3862
 
    case FIELD_TYPE_SHORT:
3863
 
    case FIELD_TYPE_LONGLONG:
 
3860
    case DRIZZLE_TYPE_TINY:
 
3861
    case DRIZZLE_TYPE_LONG:
 
3862
    case DRIZZLE_TYPE_SHORT:
 
3863
    case DRIZZLE_TYPE_LONGLONG:
3864
3864
      if (!(item= new Item_return_int(fields_info->field_name,
3865
3865
                                      fields_info->field_length,
3866
3866
                                      fields_info->field_type,
3870
3870
      }
3871
3871
      item->unsigned_flag= (fields_info->field_flags & MY_I_S_UNSIGNED);
3872
3872
      break;
3873
 
    case FIELD_TYPE_NEWDATE:
3874
 
    case FIELD_TYPE_TIME:
3875
 
    case FIELD_TYPE_TIMESTAMP:
3876
 
    case FIELD_TYPE_DATETIME:
 
3873
    case DRIZZLE_TYPE_NEWDATE:
 
3874
    case DRIZZLE_TYPE_TIME:
 
3875
    case DRIZZLE_TYPE_TIMESTAMP:
 
3876
    case DRIZZLE_TYPE_DATETIME:
3877
3877
      if (!(item=new Item_return_date_time(fields_info->field_name,
3878
3878
                                           fields_info->field_type)))
3879
3879
      {
3880
3880
        return(0);
3881
3881
      }
3882
3882
      break;
3883
 
    case FIELD_TYPE_DOUBLE:
 
3883
    case DRIZZLE_TYPE_DOUBLE:
3884
3884
      if ((item= new Item_float(fields_info->field_name, 0.0, NOT_FIXED_DEC, 
3885
3885
                           fields_info->field_length)) == NULL)
3886
3886
        return(NULL);
3887
3887
      break;
3888
 
    case FIELD_TYPE_NEWDECIMAL:
 
3888
    case DRIZZLE_TYPE_NEWDECIMAL:
3889
3889
      if (!(item= new Item_decimal((int64_t) fields_info->value, false)))
3890
3890
      {
3891
3891
        return(0);
3900
3900
      item->set_name(fields_info->field_name,
3901
3901
                     strlen(fields_info->field_name), cs);
3902
3902
      break;
3903
 
    case FIELD_TYPE_BLOB:
 
3903
    case DRIZZLE_TYPE_BLOB:
3904
3904
      if (!(item= new Item_blob(fields_info->field_name,
3905
3905
                                fields_info->field_length)))
3906
3906
      {
3909
3909
      break;
3910
3910
    default:
3911
3911
      /* Don't let unimplemented types pass through. Could be a grave error. */
3912
 
      assert(fields_info->field_type == FIELD_TYPE_STRING);
 
3912
      assert(fields_info->field_type == DRIZZLE_TYPE_STRING);
3913
3913
 
3914
3914
      if (!(item= new Item_empty_string("", fields_info->field_length, cs)))
3915
3915
      {
4310
4310
 
4311
4311
ST_FIELD_INFO schema_fields_info[]=
4312
4312
{
4313
 
  {"CATALOG_NAME", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4314
 
  {"SCHEMA_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Database",
4315
 
   SKIP_OPEN_TABLE},
4316
 
  {"DEFAULT_CHARACTER_SET_NAME", 64, FIELD_TYPE_STRING, 0, 0, 0,
4317
 
   SKIP_OPEN_TABLE},
4318
 
  {"DEFAULT_COLLATION_NAME", 64, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4319
 
  {"SQL_PATH", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4320
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4313
  {"CATALOG_NAME", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4314
  {"SCHEMA_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Database",
 
4315
   SKIP_OPEN_TABLE},
 
4316
  {"DEFAULT_CHARACTER_SET_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4317
   SKIP_OPEN_TABLE},
 
4318
  {"DEFAULT_COLLATION_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4319
  {"SQL_PATH", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4320
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4321
4321
};
4322
4322
 
4323
4323
 
4324
4324
ST_FIELD_INFO tables_fields_info[]=
4325
4325
{
4326
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4327
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4328
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Name",
 
4326
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4327
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4328
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Name",
4329
4329
   SKIP_OPEN_TABLE},
4330
 
  {"TABLE_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
4331
 
  {"ENGINE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, "Engine", OPEN_FRM_ONLY},
4332
 
  {"VERSION", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0,
 
4330
  {"TABLE_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
 
4331
  {"ENGINE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, "Engine", OPEN_FRM_ONLY},
 
4332
  {"VERSION", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0,
4333
4333
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Version", OPEN_FRM_ONLY},
4334
 
  {"ROW_FORMAT", 10, FIELD_TYPE_STRING, 0, 1, "Row_format", OPEN_FULL_TABLE},
4335
 
  {"TABLE_ROWS", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0,
 
4334
  {"ROW_FORMAT", 10, DRIZZLE_TYPE_STRING, 0, 1, "Row_format", OPEN_FULL_TABLE},
 
4335
  {"TABLE_ROWS", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0,
4336
4336
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Rows", OPEN_FULL_TABLE},
4337
 
  {"AVG_ROW_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0, 
 
4337
  {"AVG_ROW_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0, 
4338
4338
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Avg_row_length", OPEN_FULL_TABLE},
4339
 
  {"DATA_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0, 
 
4339
  {"DATA_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0, 
4340
4340
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Data_length", OPEN_FULL_TABLE},
4341
 
  {"MAX_DATA_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0,
 
4341
  {"MAX_DATA_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0,
4342
4342
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Max_data_length", OPEN_FULL_TABLE},
4343
 
  {"INDEX_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0, 
 
4343
  {"INDEX_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0, 
4344
4344
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Index_length", OPEN_FULL_TABLE},
4345
 
  {"DATA_FREE", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0,
 
4345
  {"DATA_FREE", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0,
4346
4346
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Data_free", OPEN_FULL_TABLE},
4347
 
  {"AUTO_INCREMENT", MY_INT64_NUM_DECIMAL_DIGITS , FIELD_TYPE_LONGLONG, 0, 
 
4347
  {"AUTO_INCREMENT", MY_INT64_NUM_DECIMAL_DIGITS , DRIZZLE_TYPE_LONGLONG, 0, 
4348
4348
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Auto_increment", OPEN_FULL_TABLE},
4349
 
  {"CREATE_TIME", 0, FIELD_TYPE_DATETIME, 0, 1, "Create_time", OPEN_FULL_TABLE},
4350
 
  {"UPDATE_TIME", 0, FIELD_TYPE_DATETIME, 0, 1, "Update_time", OPEN_FULL_TABLE},
4351
 
  {"CHECK_TIME", 0, FIELD_TYPE_DATETIME, 0, 1, "Check_time", OPEN_FULL_TABLE},
4352
 
  {"TABLE_COLLATION", 64, FIELD_TYPE_STRING, 0, 1, "Collation", OPEN_FRM_ONLY},
4353
 
  {"CHECKSUM", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0,
 
4349
  {"CREATE_TIME", 0, DRIZZLE_TYPE_DATETIME, 0, 1, "Create_time", OPEN_FULL_TABLE},
 
4350
  {"UPDATE_TIME", 0, DRIZZLE_TYPE_DATETIME, 0, 1, "Update_time", OPEN_FULL_TABLE},
 
4351
  {"CHECK_TIME", 0, DRIZZLE_TYPE_DATETIME, 0, 1, "Check_time", OPEN_FULL_TABLE},
 
4352
  {"TABLE_COLLATION", 64, DRIZZLE_TYPE_STRING, 0, 1, "Collation", OPEN_FRM_ONLY},
 
4353
  {"CHECKSUM", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0,
4354
4354
   (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), "Checksum", OPEN_FULL_TABLE},
4355
 
  {"CREATE_OPTIONS", 255, FIELD_TYPE_STRING, 0, 1, "Create_options",
 
4355
  {"CREATE_OPTIONS", 255, DRIZZLE_TYPE_STRING, 0, 1, "Create_options",
4356
4356
   OPEN_FRM_ONLY},
4357
 
  {"TABLE_COMMENT", TABLE_COMMENT_MAXLEN, FIELD_TYPE_STRING, 0, 0, "Comment", OPEN_FRM_ONLY},
4358
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4357
  {"TABLE_COMMENT", TABLE_COMMENT_MAXLEN, DRIZZLE_TYPE_STRING, 0, 0, "Comment", OPEN_FRM_ONLY},
 
4358
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4359
4359
};
4360
4360
 
4361
4361
 
4362
4362
ST_FIELD_INFO columns_fields_info[]=
4363
4363
{
4364
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FRM_ONLY},
4365
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
4366
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
4367
 
  {"COLUMN_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Field",
 
4364
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FRM_ONLY},
 
4365
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
 
4366
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
 
4367
  {"COLUMN_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Field",
4368
4368
   OPEN_FRM_ONLY},
4369
 
  {"ORDINAL_POSITION", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0,
 
4369
  {"ORDINAL_POSITION", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0,
4370
4370
   MY_I_S_UNSIGNED, 0, OPEN_FRM_ONLY},
4371
 
  {"COLUMN_DEFAULT", MAX_FIELD_VARCHARLENGTH, FIELD_TYPE_STRING, 0,
 
4371
  {"COLUMN_DEFAULT", MAX_FIELD_VARCHARLENGTH, DRIZZLE_TYPE_STRING, 0,
4372
4372
   1, "Default", OPEN_FRM_ONLY},
4373
 
  {"IS_NULLABLE", 3, FIELD_TYPE_STRING, 0, 0, "Null", OPEN_FRM_ONLY},
4374
 
  {"DATA_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
4375
 
  {"CHARACTER_MAXIMUM_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG,
4376
 
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
4377
 
  {"CHARACTER_OCTET_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS , FIELD_TYPE_LONGLONG,
4378
 
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
4379
 
  {"NUMERIC_PRECISION", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG,
4380
 
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
4381
 
  {"NUMERIC_SCALE", MY_INT64_NUM_DECIMAL_DIGITS , FIELD_TYPE_LONGLONG,
4382
 
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
4383
 
  {"CHARACTER_SET_NAME", 64, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FRM_ONLY},
4384
 
  {"COLLATION_NAME", 64, FIELD_TYPE_STRING, 0, 1, "Collation", OPEN_FRM_ONLY},
4385
 
  {"COLUMN_TYPE", 65535, FIELD_TYPE_STRING, 0, 0, "Type", OPEN_FRM_ONLY},
4386
 
  {"COLUMN_KEY", 3, FIELD_TYPE_STRING, 0, 0, "Key", OPEN_FRM_ONLY},
4387
 
  {"EXTRA", 27, FIELD_TYPE_STRING, 0, 0, "Extra", OPEN_FRM_ONLY},
4388
 
  {"PRIVILEGES", 80, FIELD_TYPE_STRING, 0, 0, "Privileges", OPEN_FRM_ONLY},
4389
 
  {"COLUMN_COMMENT", COLUMN_COMMENT_MAXLEN, FIELD_TYPE_STRING, 0, 0, "Comment", OPEN_FRM_ONLY},
4390
 
  {"STORAGE", 8, FIELD_TYPE_STRING, 0, 0, "Storage", OPEN_FRM_ONLY},
4391
 
  {"FORMAT", 8, FIELD_TYPE_STRING, 0, 0, "Format", OPEN_FRM_ONLY},
4392
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4373
  {"IS_NULLABLE", 3, DRIZZLE_TYPE_STRING, 0, 0, "Null", OPEN_FRM_ONLY},
 
4374
  {"DATA_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
 
4375
  {"CHARACTER_MAXIMUM_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG,
 
4376
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
 
4377
  {"CHARACTER_OCTET_LENGTH", MY_INT64_NUM_DECIMAL_DIGITS , DRIZZLE_TYPE_LONGLONG,
 
4378
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
 
4379
  {"NUMERIC_PRECISION", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG,
 
4380
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
 
4381
  {"NUMERIC_SCALE", MY_INT64_NUM_DECIMAL_DIGITS , DRIZZLE_TYPE_LONGLONG,
 
4382
   0, (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED), 0, OPEN_FRM_ONLY},
 
4383
  {"CHARACTER_SET_NAME", 64, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FRM_ONLY},
 
4384
  {"COLLATION_NAME", 64, DRIZZLE_TYPE_STRING, 0, 1, "Collation", OPEN_FRM_ONLY},
 
4385
  {"COLUMN_TYPE", 65535, DRIZZLE_TYPE_STRING, 0, 0, "Type", OPEN_FRM_ONLY},
 
4386
  {"COLUMN_KEY", 3, DRIZZLE_TYPE_STRING, 0, 0, "Key", OPEN_FRM_ONLY},
 
4387
  {"EXTRA", 27, DRIZZLE_TYPE_STRING, 0, 0, "Extra", OPEN_FRM_ONLY},
 
4388
  {"PRIVILEGES", 80, DRIZZLE_TYPE_STRING, 0, 0, "Privileges", OPEN_FRM_ONLY},
 
4389
  {"COLUMN_COMMENT", COLUMN_COMMENT_MAXLEN, DRIZZLE_TYPE_STRING, 0, 0, "Comment", OPEN_FRM_ONLY},
 
4390
  {"STORAGE", 8, DRIZZLE_TYPE_STRING, 0, 0, "Storage", OPEN_FRM_ONLY},
 
4391
  {"FORMAT", 8, DRIZZLE_TYPE_STRING, 0, 0, "Format", OPEN_FRM_ONLY},
 
4392
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4393
4393
};
4394
4394
 
4395
4395
 
4396
4396
ST_FIELD_INFO charsets_fields_info[]=
4397
4397
{
4398
 
  {"CHARACTER_SET_NAME", 64, FIELD_TYPE_STRING, 0, 0, "Charset",
4399
 
   SKIP_OPEN_TABLE},
4400
 
  {"DEFAULT_COLLATE_NAME", 64, FIELD_TYPE_STRING, 0, 0, "Default collation",
4401
 
   SKIP_OPEN_TABLE},
4402
 
  {"DESCRIPTION", 60, FIELD_TYPE_STRING, 0, 0, "Description",
4403
 
   SKIP_OPEN_TABLE},
4404
 
  {"MAXLEN", 3, FIELD_TYPE_LONGLONG, 0, 0, "Maxlen", SKIP_OPEN_TABLE},
4405
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4398
  {"CHARACTER_SET_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, "Charset",
 
4399
   SKIP_OPEN_TABLE},
 
4400
  {"DEFAULT_COLLATE_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, "Default collation",
 
4401
   SKIP_OPEN_TABLE},
 
4402
  {"DESCRIPTION", 60, DRIZZLE_TYPE_STRING, 0, 0, "Description",
 
4403
   SKIP_OPEN_TABLE},
 
4404
  {"MAXLEN", 3, DRIZZLE_TYPE_LONGLONG, 0, 0, "Maxlen", SKIP_OPEN_TABLE},
 
4405
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4406
4406
};
4407
4407
 
4408
4408
 
4409
4409
ST_FIELD_INFO collation_fields_info[]=
4410
4410
{
4411
 
  {"COLLATION_NAME", 64, FIELD_TYPE_STRING, 0, 0, "Collation", SKIP_OPEN_TABLE},
4412
 
  {"CHARACTER_SET_NAME", 64, FIELD_TYPE_STRING, 0, 0, "Charset",
4413
 
   SKIP_OPEN_TABLE},
4414
 
  {"ID", MY_INT32_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0, 0, "Id",
4415
 
   SKIP_OPEN_TABLE},
4416
 
  {"IS_DEFAULT", 3, FIELD_TYPE_STRING, 0, 0, "Default", SKIP_OPEN_TABLE},
4417
 
  {"IS_COMPILED", 3, FIELD_TYPE_STRING, 0, 0, "Compiled", SKIP_OPEN_TABLE},
4418
 
  {"SORTLEN", 3, FIELD_TYPE_LONGLONG, 0, 0, "Sortlen", SKIP_OPEN_TABLE},
4419
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4411
  {"COLLATION_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, "Collation", SKIP_OPEN_TABLE},
 
4412
  {"CHARACTER_SET_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, "Charset",
 
4413
   SKIP_OPEN_TABLE},
 
4414
  {"ID", MY_INT32_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0, 0, "Id",
 
4415
   SKIP_OPEN_TABLE},
 
4416
  {"IS_DEFAULT", 3, DRIZZLE_TYPE_STRING, 0, 0, "Default", SKIP_OPEN_TABLE},
 
4417
  {"IS_COMPILED", 3, DRIZZLE_TYPE_STRING, 0, 0, "Compiled", SKIP_OPEN_TABLE},
 
4418
  {"SORTLEN", 3, DRIZZLE_TYPE_LONGLONG, 0, 0, "Sortlen", SKIP_OPEN_TABLE},
 
4419
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4420
4420
};
4421
4421
 
4422
4422
 
4423
4423
ST_FIELD_INFO events_fields_info[]=
4424
4424
{
4425
 
  {"EVENT_CATALOG", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4426
 
  {"EVENT_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Db",
4427
 
   SKIP_OPEN_TABLE},
4428
 
  {"EVENT_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Name",
4429
 
   SKIP_OPEN_TABLE},
4430
 
  {"DEFINER", 77, FIELD_TYPE_STRING, 0, 0, "Definer", SKIP_OPEN_TABLE},
4431
 
  {"TIME_ZONE", 64, FIELD_TYPE_STRING, 0, 0, "Time zone", SKIP_OPEN_TABLE},
4432
 
  {"EVENT_BODY", 8, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4433
 
  {"EVENT_DEFINITION", 65535, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4434
 
  {"EVENT_TYPE", 9, FIELD_TYPE_STRING, 0, 0, "Type", SKIP_OPEN_TABLE},
4435
 
  {"EXECUTE_AT", 0, FIELD_TYPE_DATETIME, 0, 1, "Execute at", SKIP_OPEN_TABLE},
4436
 
  {"INTERVAL_VALUE", 256, FIELD_TYPE_STRING, 0, 1, "Interval value",
4437
 
   SKIP_OPEN_TABLE},
4438
 
  {"INTERVAL_FIELD", 18, FIELD_TYPE_STRING, 0, 1, "Interval field",
4439
 
   SKIP_OPEN_TABLE},
4440
 
  {"SQL_MODE", 65535, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4441
 
  {"STARTS", 0, FIELD_TYPE_DATETIME, 0, 1, "Starts", SKIP_OPEN_TABLE},
4442
 
  {"ENDS", 0, FIELD_TYPE_DATETIME, 0, 1, "Ends", SKIP_OPEN_TABLE},
4443
 
  {"STATUS", 18, FIELD_TYPE_STRING, 0, 0, "Status", SKIP_OPEN_TABLE},
4444
 
  {"ON_COMPLETION", 12, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4445
 
  {"CREATED", 0, FIELD_TYPE_DATETIME, 0, 0, 0, SKIP_OPEN_TABLE},
4446
 
  {"LAST_ALTERED", 0, FIELD_TYPE_DATETIME, 0, 0, 0, SKIP_OPEN_TABLE},
4447
 
  {"LAST_EXECUTED", 0, FIELD_TYPE_DATETIME, 0, 1, 0, SKIP_OPEN_TABLE},
4448
 
  {"EVENT_COMMENT", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4449
 
  {"ORIGINATOR", 10, FIELD_TYPE_LONGLONG, 0, 0, "Originator", SKIP_OPEN_TABLE},
4450
 
  {"CHARACTER_SET_CLIENT", MY_CS_NAME_SIZE, FIELD_TYPE_STRING, 0, 0,
 
4425
  {"EVENT_CATALOG", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4426
  {"EVENT_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Db",
 
4427
   SKIP_OPEN_TABLE},
 
4428
  {"EVENT_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Name",
 
4429
   SKIP_OPEN_TABLE},
 
4430
  {"DEFINER", 77, DRIZZLE_TYPE_STRING, 0, 0, "Definer", SKIP_OPEN_TABLE},
 
4431
  {"TIME_ZONE", 64, DRIZZLE_TYPE_STRING, 0, 0, "Time zone", SKIP_OPEN_TABLE},
 
4432
  {"EVENT_BODY", 8, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4433
  {"EVENT_DEFINITION", 65535, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4434
  {"EVENT_TYPE", 9, DRIZZLE_TYPE_STRING, 0, 0, "Type", SKIP_OPEN_TABLE},
 
4435
  {"EXECUTE_AT", 0, DRIZZLE_TYPE_DATETIME, 0, 1, "Execute at", SKIP_OPEN_TABLE},
 
4436
  {"INTERVAL_VALUE", 256, DRIZZLE_TYPE_STRING, 0, 1, "Interval value",
 
4437
   SKIP_OPEN_TABLE},
 
4438
  {"INTERVAL_FIELD", 18, DRIZZLE_TYPE_STRING, 0, 1, "Interval field",
 
4439
   SKIP_OPEN_TABLE},
 
4440
  {"SQL_MODE", 65535, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4441
  {"STARTS", 0, DRIZZLE_TYPE_DATETIME, 0, 1, "Starts", SKIP_OPEN_TABLE},
 
4442
  {"ENDS", 0, DRIZZLE_TYPE_DATETIME, 0, 1, "Ends", SKIP_OPEN_TABLE},
 
4443
  {"STATUS", 18, DRIZZLE_TYPE_STRING, 0, 0, "Status", SKIP_OPEN_TABLE},
 
4444
  {"ON_COMPLETION", 12, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4445
  {"CREATED", 0, DRIZZLE_TYPE_DATETIME, 0, 0, 0, SKIP_OPEN_TABLE},
 
4446
  {"LAST_ALTERED", 0, DRIZZLE_TYPE_DATETIME, 0, 0, 0, SKIP_OPEN_TABLE},
 
4447
  {"LAST_EXECUTED", 0, DRIZZLE_TYPE_DATETIME, 0, 1, 0, SKIP_OPEN_TABLE},
 
4448
  {"EVENT_COMMENT", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4449
  {"ORIGINATOR", 10, DRIZZLE_TYPE_LONGLONG, 0, 0, "Originator", SKIP_OPEN_TABLE},
 
4450
  {"CHARACTER_SET_CLIENT", MY_CS_NAME_SIZE, DRIZZLE_TYPE_STRING, 0, 0,
4451
4451
   "character_set_client", SKIP_OPEN_TABLE},
4452
 
  {"COLLATION_CONNECTION", MY_CS_NAME_SIZE, FIELD_TYPE_STRING, 0, 0,
 
4452
  {"COLLATION_CONNECTION", MY_CS_NAME_SIZE, DRIZZLE_TYPE_STRING, 0, 0,
4453
4453
   "collation_connection", SKIP_OPEN_TABLE},
4454
 
  {"DATABASE_COLLATION", MY_CS_NAME_SIZE, FIELD_TYPE_STRING, 0, 0,
 
4454
  {"DATABASE_COLLATION", MY_CS_NAME_SIZE, DRIZZLE_TYPE_STRING, 0, 0,
4455
4455
   "Database Collation", SKIP_OPEN_TABLE},
4456
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4456
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4457
4457
};
4458
4458
 
4459
4459
 
4460
4460
 
4461
4461
ST_FIELD_INFO coll_charset_app_fields_info[]=
4462
4462
{
4463
 
  {"COLLATION_NAME", 64, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4464
 
  {"CHARACTER_SET_NAME", 64, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4465
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4463
  {"COLLATION_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4464
  {"CHARACTER_SET_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4465
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4466
4466
};
4467
4467
 
4468
4468
 
4469
4469
ST_FIELD_INFO stat_fields_info[]=
4470
4470
{
4471
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FRM_ONLY},
4472
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
4473
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Table", OPEN_FRM_ONLY},
4474
 
  {"NON_UNIQUE", 1, FIELD_TYPE_LONGLONG, 0, 0, "Non_unique", OPEN_FRM_ONLY},
4475
 
  {"INDEX_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
4476
 
  {"INDEX_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Key_name",
4477
 
   OPEN_FRM_ONLY},
4478
 
  {"SEQ_IN_INDEX", 2, FIELD_TYPE_LONGLONG, 0, 0, "Seq_in_index", OPEN_FRM_ONLY},
4479
 
  {"COLUMN_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Column_name",
4480
 
   OPEN_FRM_ONLY},
4481
 
  {"COLLATION", 1, FIELD_TYPE_STRING, 0, 1, "Collation", OPEN_FRM_ONLY},
4482
 
  {"CARDINALITY", MY_INT64_NUM_DECIMAL_DIGITS, FIELD_TYPE_LONGLONG, 0, 1,
 
4471
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FRM_ONLY},
 
4472
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
 
4473
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Table", OPEN_FRM_ONLY},
 
4474
  {"NON_UNIQUE", 1, DRIZZLE_TYPE_LONGLONG, 0, 0, "Non_unique", OPEN_FRM_ONLY},
 
4475
  {"INDEX_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FRM_ONLY},
 
4476
  {"INDEX_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Key_name",
 
4477
   OPEN_FRM_ONLY},
 
4478
  {"SEQ_IN_INDEX", 2, DRIZZLE_TYPE_LONGLONG, 0, 0, "Seq_in_index", OPEN_FRM_ONLY},
 
4479
  {"COLUMN_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Column_name",
 
4480
   OPEN_FRM_ONLY},
 
4481
  {"COLLATION", 1, DRIZZLE_TYPE_STRING, 0, 1, "Collation", OPEN_FRM_ONLY},
 
4482
  {"CARDINALITY", MY_INT64_NUM_DECIMAL_DIGITS, DRIZZLE_TYPE_LONGLONG, 0, 1,
4483
4483
   "Cardinality", OPEN_FULL_TABLE},
4484
 
  {"SUB_PART", 3, FIELD_TYPE_LONGLONG, 0, 1, "Sub_part", OPEN_FRM_ONLY},
4485
 
  {"PACKED", 10, FIELD_TYPE_STRING, 0, 1, "Packed", OPEN_FRM_ONLY},
4486
 
  {"NULLABLE", 3, FIELD_TYPE_STRING, 0, 0, "Null", OPEN_FRM_ONLY},
4487
 
  {"INDEX_TYPE", 16, FIELD_TYPE_STRING, 0, 0, "Index_type", OPEN_FULL_TABLE},
4488
 
  {"COMMENT", 16, FIELD_TYPE_STRING, 0, 1, "Comment", OPEN_FRM_ONLY},
4489
 
  {"INDEX_COMMENT", INDEX_COMMENT_MAXLEN, FIELD_TYPE_STRING, 0, 0, "Index_Comment", OPEN_FRM_ONLY},
4490
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4484
  {"SUB_PART", 3, DRIZZLE_TYPE_LONGLONG, 0, 1, "Sub_part", OPEN_FRM_ONLY},
 
4485
  {"PACKED", 10, DRIZZLE_TYPE_STRING, 0, 1, "Packed", OPEN_FRM_ONLY},
 
4486
  {"NULLABLE", 3, DRIZZLE_TYPE_STRING, 0, 0, "Null", OPEN_FRM_ONLY},
 
4487
  {"INDEX_TYPE", 16, DRIZZLE_TYPE_STRING, 0, 0, "Index_type", OPEN_FULL_TABLE},
 
4488
  {"COMMENT", 16, DRIZZLE_TYPE_STRING, 0, 1, "Comment", OPEN_FRM_ONLY},
 
4489
  {"INDEX_COMMENT", INDEX_COMMENT_MAXLEN, DRIZZLE_TYPE_STRING, 0, 0, "Index_Comment", OPEN_FRM_ONLY},
 
4490
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4491
4491
};
4492
4492
 
4493
4493
 
4494
4494
ST_FIELD_INFO user_privileges_fields_info[]=
4495
4495
{
4496
 
  {"GRANTEE", 81, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4497
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4498
 
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4499
 
  {"IS_GRANTABLE", 3, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4500
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4496
  {"GRANTEE", 81, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4497
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4498
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4499
  {"IS_GRANTABLE", 3, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4500
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4501
4501
};
4502
4502
 
4503
4503
 
4504
4504
ST_FIELD_INFO schema_privileges_fields_info[]=
4505
4505
{
4506
 
  {"GRANTEE", 81, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4507
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4508
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4509
 
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4510
 
  {"IS_GRANTABLE", 3, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4511
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4506
  {"GRANTEE", 81, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4507
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4508
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4509
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4510
  {"IS_GRANTABLE", 3, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4511
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4512
4512
};
4513
4513
 
4514
4514
 
4515
4515
ST_FIELD_INFO table_privileges_fields_info[]=
4516
4516
{
4517
 
  {"GRANTEE", 81, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4518
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4519
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4520
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4521
 
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4522
 
  {"IS_GRANTABLE", 3, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4523
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4517
  {"GRANTEE", 81, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4518
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4519
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4520
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4521
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4522
  {"IS_GRANTABLE", 3, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4523
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4524
4524
};
4525
4525
 
4526
4526
 
4527
4527
ST_FIELD_INFO column_privileges_fields_info[]=
4528
4528
{
4529
 
  {"GRANTEE", 81, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4530
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4531
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4532
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4533
 
  {"COLUMN_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4534
 
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4535
 
  {"IS_GRANTABLE", 3, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4536
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4529
  {"GRANTEE", 81, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4530
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4531
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4532
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4533
  {"COLUMN_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4534
  {"PRIVILEGE_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4535
  {"IS_GRANTABLE", 3, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4536
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4537
4537
};
4538
4538
 
4539
4539
 
4540
4540
ST_FIELD_INFO table_constraints_fields_info[]=
4541
4541
{
4542
 
  {"CONSTRAINT_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4543
 
  {"CONSTRAINT_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4544
 
   OPEN_FULL_TABLE},
4545
 
  {"CONSTRAINT_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4546
 
   OPEN_FULL_TABLE},
4547
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4548
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4549
 
  {"CONSTRAINT_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4550
 
   OPEN_FULL_TABLE},
4551
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4542
  {"CONSTRAINT_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4543
  {"CONSTRAINT_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4544
   OPEN_FULL_TABLE},
 
4545
  {"CONSTRAINT_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4546
   OPEN_FULL_TABLE},
 
4547
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4548
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4549
  {"CONSTRAINT_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4550
   OPEN_FULL_TABLE},
 
4551
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4552
4552
};
4553
4553
 
4554
4554
 
4555
4555
ST_FIELD_INFO key_column_usage_fields_info[]=
4556
4556
{
4557
 
  {"CONSTRAINT_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4558
 
  {"CONSTRAINT_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4559
 
   OPEN_FULL_TABLE},
4560
 
  {"CONSTRAINT_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4561
 
   OPEN_FULL_TABLE},
4562
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4563
 
  {"TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4564
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4565
 
  {"COLUMN_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4566
 
  {"ORDINAL_POSITION", 10 ,FIELD_TYPE_LONGLONG, 0, 0, 0, OPEN_FULL_TABLE},
4567
 
  {"POSITION_IN_UNIQUE_CONSTRAINT", 10 ,FIELD_TYPE_LONGLONG, 0, 1, 0,
4568
 
   OPEN_FULL_TABLE},
4569
 
  {"REFERENCED_TABLE_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, 0,
4570
 
   OPEN_FULL_TABLE},
4571
 
  {"REFERENCED_TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, 0,
4572
 
   OPEN_FULL_TABLE},
4573
 
  {"REFERENCED_COLUMN_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, 0,
4574
 
   OPEN_FULL_TABLE},
4575
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4557
  {"CONSTRAINT_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4558
  {"CONSTRAINT_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4559
   OPEN_FULL_TABLE},
 
4560
  {"CONSTRAINT_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4561
   OPEN_FULL_TABLE},
 
4562
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4563
  {"TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4564
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4565
  {"COLUMN_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4566
  {"ORDINAL_POSITION", 10 ,DRIZZLE_TYPE_LONGLONG, 0, 0, 0, OPEN_FULL_TABLE},
 
4567
  {"POSITION_IN_UNIQUE_CONSTRAINT", 10 ,DRIZZLE_TYPE_LONGLONG, 0, 1, 0,
 
4568
   OPEN_FULL_TABLE},
 
4569
  {"REFERENCED_TABLE_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, 0,
 
4570
   OPEN_FULL_TABLE},
 
4571
  {"REFERENCED_TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, 0,
 
4572
   OPEN_FULL_TABLE},
 
4573
  {"REFERENCED_COLUMN_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, 0,
 
4574
   OPEN_FULL_TABLE},
 
4575
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4576
4576
};
4577
4577
 
4578
4578
 
4579
4579
ST_FIELD_INFO table_names_fields_info[]=
4580
4580
{
4581
 
  {"TABLE_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4582
 
  {"TABLE_SCHEMA",NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4583
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Tables_in_",
 
4581
  {"TABLE_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4582
  {"TABLE_SCHEMA",NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4583
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Tables_in_",
4584
4584
   SKIP_OPEN_TABLE},
4585
 
  {"TABLE_TYPE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Table_type",
 
4585
  {"TABLE_TYPE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Table_type",
4586
4586
   OPEN_FRM_ONLY},
4587
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4587
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4588
4588
};
4589
4589
 
4590
4590
 
4591
4591
ST_FIELD_INFO open_tables_fields_info[]=
4592
4592
{
4593
 
  {"Database", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Database",
 
4593
  {"Database", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Database",
4594
4594
   SKIP_OPEN_TABLE},
4595
 
  {"Table",NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Table", SKIP_OPEN_TABLE},
4596
 
  {"In_use", 1, FIELD_TYPE_LONGLONG, 0, 0, "In_use", SKIP_OPEN_TABLE},
4597
 
  {"Name_locked", 4, FIELD_TYPE_LONGLONG, 0, 0, "Name_locked", SKIP_OPEN_TABLE},
4598
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4595
  {"Table",NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Table", SKIP_OPEN_TABLE},
 
4596
  {"In_use", 1, DRIZZLE_TYPE_LONGLONG, 0, 0, "In_use", SKIP_OPEN_TABLE},
 
4597
  {"Name_locked", 4, DRIZZLE_TYPE_LONGLONG, 0, 0, "Name_locked", SKIP_OPEN_TABLE},
 
4598
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4599
4599
};
4600
4600
 
4601
4601
 
4602
4602
ST_FIELD_INFO variables_fields_info[]=
4603
4603
{
4604
 
  {"VARIABLE_NAME", 64, FIELD_TYPE_STRING, 0, 0, "Variable_name",
 
4604
  {"VARIABLE_NAME", 64, DRIZZLE_TYPE_STRING, 0, 0, "Variable_name",
4605
4605
   SKIP_OPEN_TABLE},
4606
 
  {"VARIABLE_VALUE", 16300, FIELD_TYPE_STRING, 0, 1, "Value", SKIP_OPEN_TABLE},
4607
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4606
  {"VARIABLE_VALUE", 16300, DRIZZLE_TYPE_STRING, 0, 1, "Value", SKIP_OPEN_TABLE},
 
4607
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4608
4608
};
4609
4609
 
4610
4610
 
4611
4611
ST_FIELD_INFO processlist_fields_info[]=
4612
4612
{
4613
 
  {"ID", 4, FIELD_TYPE_LONGLONG, 0, 0, "Id", SKIP_OPEN_TABLE},
4614
 
  {"USER", 16, FIELD_TYPE_STRING, 0, 0, "User", SKIP_OPEN_TABLE},
4615
 
  {"HOST", LIST_PROCESS_HOST_LEN,  FIELD_TYPE_STRING, 0, 0, "Host",
4616
 
   SKIP_OPEN_TABLE},
4617
 
  {"DB", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, "Db", SKIP_OPEN_TABLE},
4618
 
  {"COMMAND", 16, FIELD_TYPE_STRING, 0, 0, "Command", SKIP_OPEN_TABLE},
4619
 
  {"TIME", 7, FIELD_TYPE_LONGLONG, 0, 0, "Time", SKIP_OPEN_TABLE},
4620
 
  {"STATE", 64, FIELD_TYPE_STRING, 0, 1, "State", SKIP_OPEN_TABLE},
4621
 
  {"INFO", PROCESS_LIST_INFO_WIDTH, FIELD_TYPE_STRING, 0, 1, "Info",
4622
 
   SKIP_OPEN_TABLE},
4623
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4613
  {"ID", 4, DRIZZLE_TYPE_LONGLONG, 0, 0, "Id", SKIP_OPEN_TABLE},
 
4614
  {"USER", 16, DRIZZLE_TYPE_STRING, 0, 0, "User", SKIP_OPEN_TABLE},
 
4615
  {"HOST", LIST_PROCESS_HOST_LEN,  DRIZZLE_TYPE_STRING, 0, 0, "Host",
 
4616
   SKIP_OPEN_TABLE},
 
4617
  {"DB", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, "Db", SKIP_OPEN_TABLE},
 
4618
  {"COMMAND", 16, DRIZZLE_TYPE_STRING, 0, 0, "Command", SKIP_OPEN_TABLE},
 
4619
  {"TIME", 7, DRIZZLE_TYPE_LONGLONG, 0, 0, "Time", SKIP_OPEN_TABLE},
 
4620
  {"STATE", 64, DRIZZLE_TYPE_STRING, 0, 1, "State", SKIP_OPEN_TABLE},
 
4621
  {"INFO", PROCESS_LIST_INFO_WIDTH, DRIZZLE_TYPE_STRING, 0, 1, "Info",
 
4622
   SKIP_OPEN_TABLE},
 
4623
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4624
4624
};
4625
4625
 
4626
4626
 
4627
4627
ST_FIELD_INFO plugin_fields_info[]=
4628
4628
{
4629
 
  {"PLUGIN_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, "Name", 
4630
 
   SKIP_OPEN_TABLE},
4631
 
  {"PLUGIN_VERSION", 20, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
4632
 
  {"PLUGIN_STATUS", 10, FIELD_TYPE_STRING, 0, 0, "Status", SKIP_OPEN_TABLE},
4633
 
  {"PLUGIN_TYPE", 80, FIELD_TYPE_STRING, 0, 0, "Type", SKIP_OPEN_TABLE},
4634
 
  {"PLUGIN_LIBRARY", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, "Library",
4635
 
   SKIP_OPEN_TABLE},
4636
 
  {"PLUGIN_AUTHOR", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4637
 
  {"PLUGIN_DESCRIPTION", 65535, FIELD_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
4638
 
  {"PLUGIN_LICENSE", 80, FIELD_TYPE_STRING, 0, 1, "License", SKIP_OPEN_TABLE},
4639
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4629
  {"PLUGIN_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, "Name", 
 
4630
   SKIP_OPEN_TABLE},
 
4631
  {"PLUGIN_VERSION", 20, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE},
 
4632
  {"PLUGIN_STATUS", 10, DRIZZLE_TYPE_STRING, 0, 0, "Status", SKIP_OPEN_TABLE},
 
4633
  {"PLUGIN_TYPE", 80, DRIZZLE_TYPE_STRING, 0, 0, "Type", SKIP_OPEN_TABLE},
 
4634
  {"PLUGIN_LIBRARY", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, "Library",
 
4635
   SKIP_OPEN_TABLE},
 
4636
  {"PLUGIN_AUTHOR", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4637
  {"PLUGIN_DESCRIPTION", 65535, DRIZZLE_TYPE_STRING, 0, 1, 0, SKIP_OPEN_TABLE},
 
4638
  {"PLUGIN_LICENSE", 80, DRIZZLE_TYPE_STRING, 0, 1, "License", SKIP_OPEN_TABLE},
 
4639
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4640
4640
};
4641
4641
 
4642
4642
ST_FIELD_INFO referential_constraints_fields_info[]=
4643
4643
{
4644
 
  {"CONSTRAINT_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4645
 
  {"CONSTRAINT_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4646
 
   OPEN_FULL_TABLE},
4647
 
  {"CONSTRAINT_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4648
 
   OPEN_FULL_TABLE},
4649
 
  {"UNIQUE_CONSTRAINT_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0,
4650
 
   OPEN_FULL_TABLE},
4651
 
  {"UNIQUE_CONSTRAINT_SCHEMA", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
4652
 
   OPEN_FULL_TABLE},
4653
 
  {"UNIQUE_CONSTRAINT_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0,
 
4644
  {"CONSTRAINT_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4645
  {"CONSTRAINT_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4646
   OPEN_FULL_TABLE},
 
4647
  {"CONSTRAINT_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4648
   OPEN_FULL_TABLE},
 
4649
  {"UNIQUE_CONSTRAINT_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0,
 
4650
   OPEN_FULL_TABLE},
 
4651
  {"UNIQUE_CONSTRAINT_SCHEMA", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
 
4652
   OPEN_FULL_TABLE},
 
4653
  {"UNIQUE_CONSTRAINT_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0,
4654
4654
   MY_I_S_MAYBE_NULL, 0, OPEN_FULL_TABLE},
4655
 
  {"MATCH_OPTION", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4656
 
  {"UPDATE_RULE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4657
 
  {"DELETE_RULE", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4658
 
  {"TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4659
 
  {"REFERENCED_TABLE_NAME", NAME_CHAR_LEN, FIELD_TYPE_STRING, 0, 0, 0,
 
4655
  {"MATCH_OPTION", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4656
  {"UPDATE_RULE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4657
  {"DELETE_RULE", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4658
  {"TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4659
  {"REFERENCED_TABLE_NAME", NAME_CHAR_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0,
4660
4660
   OPEN_FULL_TABLE},
4661
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 
4661
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
4662
4662
};
4663
4663
 
4664
4664
 
4665
4665
ST_FIELD_INFO parameters_fields_info[]=
4666
4666
{
4667
 
  {"SPECIFIC_CATALOG", FN_REFLEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4668
 
  {"SPECIFIC_SCHEMA", NAME_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4669
 
  {"SPECIFIC_NAME", NAME_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4670
 
  {"ORDINAL_POSITION", 21 , FIELD_TYPE_LONG, 0, 0, 0, OPEN_FULL_TABLE},
4671
 
  {"PARAMETER_MODE", 5, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4672
 
  {"PARAMETER_NAME", NAME_LEN, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4673
 
  {"DATA_TYPE", NAME_LEN, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4674
 
  {"CHARACTER_MAXIMUM_LENGTH", 21 , FIELD_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
4675
 
  {"CHARACTER_OCTET_LENGTH", 21 , FIELD_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
4676
 
  {"NUMERIC_PRECISION", 21 , FIELD_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
4677
 
  {"NUMERIC_SCALE", 21 , FIELD_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
4678
 
  {"CHARACTER_SET_NAME", 64, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4679
 
  {"COLLATION_NAME", 64, FIELD_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
4680
 
  {"DTD_IDENTIFIER", 65535, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4681
 
  {"ROUTINE_TYPE", 9, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
4682
 
  {0, 0, FIELD_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE}
 
4667
  {"SPECIFIC_CATALOG", FN_REFLEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4668
  {"SPECIFIC_SCHEMA", NAME_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4669
  {"SPECIFIC_NAME", NAME_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4670
  {"ORDINAL_POSITION", 21 , DRIZZLE_TYPE_LONG, 0, 0, 0, OPEN_FULL_TABLE},
 
4671
  {"PARAMETER_MODE", 5, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4672
  {"PARAMETER_NAME", NAME_LEN, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4673
  {"DATA_TYPE", NAME_LEN, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4674
  {"CHARACTER_MAXIMUM_LENGTH", 21 , DRIZZLE_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
 
4675
  {"CHARACTER_OCTET_LENGTH", 21 , DRIZZLE_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
 
4676
  {"NUMERIC_PRECISION", 21 , DRIZZLE_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
 
4677
  {"NUMERIC_SCALE", 21 , DRIZZLE_TYPE_LONG, 0, 1, 0, OPEN_FULL_TABLE},
 
4678
  {"CHARACTER_SET_NAME", 64, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4679
  {"COLLATION_NAME", 64, DRIZZLE_TYPE_STRING, 0, 1, 0, OPEN_FULL_TABLE},
 
4680
  {"DTD_IDENTIFIER", 65535, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4681
  {"ROUTINE_TYPE", 9, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE},
 
4682
  {0, 0, DRIZZLE_TYPE_STRING, 0, 0, 0, OPEN_FULL_TABLE}
4683
4683
};
4684
4684
 
4685
4685