~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_parse.cc

Merge Padraig's cleanup-exec-command branch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
487
487
 
488
488
 
489
489
  switch (lex->sql_command) {
490
 
  case SQLCOM_EMPTY_QUERY:
491
 
    session->my_ok();
492
 
    break;
493
 
 
494
 
  case SQLCOM_SHOW_WARNS:
495
 
  {
496
 
    res= mysqld_show_warnings(session, (uint32_t)
497
 
                              ((1L << (uint32_t) DRIZZLE_ERROR::WARN_LEVEL_NOTE) |
498
 
                               (1L << (uint32_t) DRIZZLE_ERROR::WARN_LEVEL_WARN) |
499
 
                               (1L << (uint32_t) DRIZZLE_ERROR::WARN_LEVEL_ERROR)
500
 
                               ));
501
 
    break;
502
 
  }
503
 
  case SQLCOM_SHOW_ERRORS:
504
 
  {
505
 
    res= mysqld_show_warnings(session, (uint32_t)
506
 
                              (1L << (uint32_t) DRIZZLE_ERROR::WARN_LEVEL_ERROR));
507
 
    break;
508
 
  }
509
 
  case SQLCOM_ASSIGN_TO_KEYCACHE:
510
 
  {
511
 
    assert(first_table == all_tables && first_table != 0);
512
 
    res= mysql_assign_to_keycache(session, first_table, &lex->ident);
513
 
    break;
514
 
  }
515
 
  case SQLCOM_SHOW_ENGINE_STATUS:
516
 
    {
517
 
      res = ha_show_status(session, lex->show_engine, HA_ENGINE_STATUS);
518
 
      break;
519
 
    }
520
490
  case SQLCOM_CREATE_TABLE:
521
491
  {
522
492
    /* If CREATE TABLE of non-temporary table, do implicit commit */
776
746
    }
777
747
    break;
778
748
  }
779
 
  case SQLCOM_SHOW_CREATE:
780
 
    assert(first_table == all_tables && first_table != 0);
781
 
    {
782
 
      res= drizzled_show_create(session, first_table);
783
 
      break;
784
 
    }
785
 
  case SQLCOM_CHECKSUM:
786
 
  {
787
 
    assert(first_table == all_tables && first_table != 0);
788
 
    res = mysql_checksum_table(session, first_table, &lex->check_opt);
789
 
    break;
790
 
  }
791
749
  case SQLCOM_CHECK:
792
750
  {
793
751
    assert(first_table == all_tables && first_table != 0);
1030
988
    res= mysql_rm_table(session, first_table, lex->drop_if_exists, lex->drop_temporary);
1031
989
  }
1032
990
  break;
1033
 
  case SQLCOM_SHOW_PROCESSLIST:
1034
 
    mysqld_list_processes(session, NULL, lex->verbose);
1035
 
    break;
1036
991
  case SQLCOM_CHANGE_DB:
1037
992
  {
1038
993
    LEX_STRING db_str= { (char *) select_lex->db, strlen(select_lex->db) };
1042
997
 
1043
998
    break;
1044
999
  }
1045
 
 
1046
 
  case SQLCOM_LOAD:
1047
 
  {
1048
 
    assert(first_table == all_tables && first_table != 0);
1049
 
    res= mysql_load(session, lex->exchange, first_table, lex->field_list,
1050
 
                    lex->update_list, lex->value_list, lex->duplicates, lex->ignore);
1051
 
    break;
1052
 
  }
1053
 
 
1054
1000
  case SQLCOM_SET_OPTION:
1055
1001
  {
1056
1002
    List<set_var_base> *lex_var_list= &lex->var_list;
1207
1153
      goto error;
1208
1154
    session->my_ok();
1209
1155
    break;
1210
 
  case SQLCOM_COMMIT:
1211
 
    if (! session->endTransaction(lex->tx_release ? COMMIT_RELEASE : lex->tx_chain ? COMMIT_AND_CHAIN : COMMIT))
1212
 
      goto error;
1213
 
    session->my_ok();
1214
 
    break;
1215
 
  case SQLCOM_ROLLBACK:
1216
 
    if (! session->endTransaction(lex->tx_release ? ROLLBACK_RELEASE : lex->tx_chain ? ROLLBACK_AND_CHAIN : ROLLBACK))
1217
 
      goto error;
1218
 
    session->my_ok();
1219
 
    break;
1220
1156
  case SQLCOM_RELEASE_SAVEPOINT:
1221
1157
  {
1222
1158
    SAVEPOINT *sv;
1323
1259
  }
1324
1260
  /*
1325
1261
   * The following conditional statement is only temporary until
1326
 
   * the mongo switch statement that occurs afterwards has been
 
1262
   * the mongo switch statement that occurs above has been
1327
1263
   * fully removed. Once that switch statement is gone, every
1328
1264
   * command will have its own class and we won't need this
1329
1265
   * check.