~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_parse.cc

  • Committer: Mark Atwood
  • Date: 2011-10-13 18:28:03 UTC
  • mfrom: (2433.1.5 rf1)
  • Revision ID: me@mark.atwood.name-20111013182803-pbmb3r5emfxfrbvy
mergeĀ lp:~olafvdspek/drizzle/refactor2

Show diffs side-by-side

added added

removed removed

Lines of Context:
835
835
        !(((Item_func*)default_value)->functype() == Item_func::NOW_FUNC &&
836
836
         (type == DRIZZLE_TYPE_TIMESTAMP or type == DRIZZLE_TYPE_MICROTIME)))
837
837
    {
838
 
      my_error(ER_INVALID_DEFAULT, MYF(0), field_name->str);
 
838
      my_error(ER_INVALID_DEFAULT, MYF(0), field_name->data());
839
839
      return true;
840
840
    }
841
841
    else if (default_value->type() == Item::NULL_ITEM)
843
843
      default_value= 0;
844
844
      if ((type_modifier & (NOT_NULL_FLAG | AUTO_INCREMENT_FLAG)) == NOT_NULL_FLAG)
845
845
      {
846
 
        my_error(ER_INVALID_DEFAULT, MYF(0), field_name->str);
 
846
        my_error(ER_INVALID_DEFAULT, MYF(0), field_name->data());
847
847
        return true;
848
848
      }
849
849
    }
850
850
    else if (type_modifier & AUTO_INCREMENT_FLAG)
851
851
    {
852
 
      my_error(ER_INVALID_DEFAULT, MYF(0), field_name->str);
 
852
      my_error(ER_INVALID_DEFAULT, MYF(0), field_name->data());
853
853
      return true;
854
854
    }
855
855
  }
856
856
 
857
857
  if (on_update_value && (type != DRIZZLE_TYPE_TIMESTAMP and type != DRIZZLE_TYPE_MICROTIME))
858
858
  {
859
 
    my_error(ER_INVALID_ON_UPDATE, MYF(0), field_name->str);
 
859
    my_error(ER_INVALID_ON_UPDATE, MYF(0), field_name->data());
860
860
    return true;
861
861
  }
862
862
 
863
863
  CreateField* new_field= new CreateField;
864
 
  if (new_field->init(session, field_name->str, type, length, decimals, type_modifier, *comment, change, interval_list, cs, 0, column_format)
 
864
  if (new_field->init(session, field_name->data(), type, length, decimals, type_modifier, *comment, change, interval_list, cs, 0, column_format)
865
865
      || new_field->setDefaultValue(default_value, on_update_value))
866
866
    return true;
867
867
 
904
904
 
905
905
  if (!table)
906
906
    return NULL;                                // End of memory
907
 
  const char* alias_str= alias ? alias->str : table->table.str;
 
907
  const char* alias_str= alias ? alias->data() : table->table.data();
908
908
  if (! table_options.test(TL_OPTION_ALIAS) &&
909
909
      check_table_name(table->table.str, table->table.length))
910
910
  {
957
957
  ptr->derived=     table->sel;
958
958
  ptr->select_lex=  lex->current_select;
959
959
  ptr->index_hints= index_hints_arg;
960
 
  ptr->option= option ? option->str : 0;
 
960
  ptr->option= option ? option->data() : NULL;
961
961
  /* check that used name is unique */
962
962
  if (lock_type != TL_IGNORE)
963
963
  {
1559
1559
                              bool no_error)
1560
1560
{
1561
1561
  int well_formed_error;
1562
 
  uint32_t res= cs->cset->well_formed_len(cs, str->str, str->str + str->length,
1563
 
                                      max_char_length, &well_formed_error);
 
1562
  uint32_t res= cs->cset->well_formed_len(cs, str->begin(), str->end(), max_char_length, &well_formed_error);
1564
1563
 
1565
1564
  if (!well_formed_error &&  str->length == res)
1566
1565
    return false;
1567
1566
 
1568
1567
  if (!no_error)
1569
 
    my_error(ER_WRONG_STRING_LENGTH, MYF(0), str->str, err_msg, max_char_length);
 
1568
    my_error(ER_WRONG_STRING_LENGTH, MYF(0), str->data(), err_msg, max_char_length);
1570
1569
  return true;
1571
1570
}
1572
1571
 
1583
1582
  const charset_info_st * const cs= &my_charset_utf8mb4_general_ci;
1584
1583
 
1585
1584
  int well_formed_error;
1586
 
  uint32_t res= cs->cset->well_formed_len(cs, str->str, str->str + str->length,
1587
 
                                      max_char_length, &well_formed_error);
 
1585
  uint32_t res= cs->cset->well_formed_len(cs, str->begin(), str->end(), max_char_length, &well_formed_error);
1588
1586
 
1589
1587
  if (well_formed_error)
1590
1588
  {
1591
 
    my_error(ER_INVALID_CHARACTER_STRING, MYF(0), "identifier", str->str);
 
1589
    my_error(ER_INVALID_CHARACTER_STRING, MYF(0), "identifier", str->data());
1592
1590
    return true;
1593
1591
  }
1594
1592
 
1600
1598
  case EE_OK:
1601
1599
    break;
1602
1600
  case ER_WRONG_STRING_LENGTH:
1603
 
    my_error(err_code, MYF(0), str->str, param_for_err_msg, max_char_length);
 
1601
    my_error(err_code, MYF(0), str->data(), param_for_err_msg, max_char_length);
1604
1602
    break;
1605
1603
  case ER_TOO_LONG_IDENT:
1606
 
    my_error(err_code, MYF(0), str->str);
 
1604
    my_error(err_code, MYF(0), str->data());
1607
1605
    break;
1608
1606
  default:
1609
 
    assert(0);
1610
 
    break;
 
1607
    assert(false);
1611
1608
  }
1612
1609
 
1613
1610
  return true;