~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/message/statement_transform.cc

  • Committer: Andrew Hutchings
  • Date: 2010-09-08 19:03:09 UTC
  • mfrom: (1750 staging)
  • mto: (1750.1.1 build)
  • mto: This revision was merged to the branch mainline in revision 1751.
  • Revision ID: andrew@linuxjedi.co.uk-20100908190309-mya1nu7xvo1fpvk8
Merge trunk into branch

Show diffs side-by-side

added added

removed removed

Lines of Context:
1283
1283
  switch (field_type)
1284
1284
  {
1285
1285
    case Table::Field::DOUBLE:
1286
 
    destination.append(" double", 7);
 
1286
    destination.append(" DOUBLE", 7);
1287
1287
    if (field.has_numeric_options()
1288
1288
        && field.numeric_options().has_precision())
1289
1289
    {
1297
1297
    {
1298
1298
      if (field.string_options().has_collation()
1299
1299
          && field.string_options().collation().compare("binary") == 0)
1300
 
        destination.append(" varbinary(", 11);
 
1300
        destination.append(" VARBINARY(", 11);
1301
1301
      else
1302
 
        destination.append(" varchar(", 9);
 
1302
        destination.append(" VARCHAR(", 9);
1303
1303
 
1304
1304
      stringstream ss;
1305
1305
      ss << field.string_options().length() << ")";
1310
1310
    {
1311
1311
      if (field.string_options().has_collation()
1312
1312
          && field.string_options().collation().compare("binary") == 0)
1313
 
        destination.append(" blob", 5);
 
1313
        destination.append(" BLOB", 5);
1314
1314
      else
1315
 
        destination.append(" text", 5);
 
1315
        destination.append(" TEXT", 5);
1316
1316
    }
1317
1317
    break;
1318
1318
  case Table::Field::ENUM:
1319
1319
    {
1320
1320
      size_t num_field_values= field.enumeration_values().field_value_size();
1321
 
      destination.append(" enum(", 6);
 
1321
      destination.append(" ENUM(", 6);
1322
1322
      for (size_t x= 0; x < num_field_values; ++x)
1323
1323
      {
1324
1324
        const string &type= field.enumeration_values().field_value(x);
1334
1334
      break;
1335
1335
    }
1336
1336
  case Table::Field::INTEGER:
1337
 
    destination.append(" int", 4);
 
1337
    destination.append(" INT", 4);
1338
1338
    break;
1339
1339
  case Table::Field::BIGINT:
1340
 
    destination.append(" bigint", 7);
 
1340
    destination.append(" BIGINT", 7);
1341
1341
    break;
1342
1342
  case Table::Field::DECIMAL:
1343
1343
    {
1344
 
      destination.append(" decimal(", 9);
 
1344
      destination.append(" DECIMAL(", 9);
1345
1345
      stringstream ss;
1346
1346
      ss << field.numeric_options().precision() << ",";
1347
1347
      ss << field.numeric_options().scale() << ")";
1349
1349
    }
1350
1350
    break;
1351
1351
  case Table::Field::DATE:
1352
 
    destination.append(" date", 5);
 
1352
    destination.append(" DATE", 5);
1353
1353
    break;
1354
1354
  case Table::Field::TIMESTAMP:
1355
 
    destination.append(" timestamp",  10);
 
1355
    destination.append(" TIMESTAMP",  10);
1356
1356
    break;
1357
1357
  case Table::Field::DATETIME:
1358
 
    destination.append(" datetime",  9);
 
1358
    destination.append(" DATETIME",  9);
1359
1359
    break;
1360
1360
  }
1361
1361
 
1374
1374
      field.type() == Table::Field::VARCHAR)
1375
1375
  {
1376
1376
    if (field.string_options().has_collation()
1377
 
        && (field.string_options().collation().compare("binary")
1378
 
            && field.string_options().collation().compare("utf8_general_ci")))
 
1377
        && field.string_options().collation().compare("binary"))
1379
1378
    {
1380
1379
      destination.append(" COLLATE ", 9);
1381
1380
      destination.append(field.string_options().collation());