Commit 70798060 authored by unknown's avatar unknown
Browse files

Added --p for producing output parsable by LOAD TABLE INFILE

parent 6b7e19af
Loading
Loading
Loading
Loading
+24 −7
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ static Ndb_cluster_connection *ndb_cluster_connection= 0;
static Ndb* ndb = 0;
static const NdbDictionary::Dictionary * dic = 0;
static int _unqualified = 0;
static int _parsable = 0;

static void
fatal(char const* fmt, ...)
@@ -76,10 +77,13 @@ list(const char * tabname,
	if (dic->listIndexes(list, tabname) == -1)
	    fatal_dict("listIndexes");
    }
    if (!_parsable)
    {
      if (ndb->usingFullyQualifiedNames())
        ndbout_c("%-5s %-20s %-8s %-7s %-12s %-8s %s", "id", "type", "state", "logging", "database", "schema", "name");
      else
        ndbout_c("%-5s %-20s %-8s %-7s %s", "id", "type", "state", "logging", "name");
    }
    for (unsigned i = 0; i < list.count; i++) {
	NdbDictionary::Dictionary::List::Element& elt = list.elements[i];
        char type[100];
@@ -170,11 +174,21 @@ list(const char * tabname,
	    }
	}
	if (ndb->usingFullyQualifiedNames())
        {
          if (_parsable)
            ndbout_c("%d\t'%s'\t'%s'\t'%s'\t'%s'\t'%s'\t'%s'", elt.id, type, state, store, (elt.database)?elt.database:"", (elt.schema)?elt.schema:"", elt.name);
          else
            ndbout_c("%-5d %-20s %-8s %-7s %-12s %-8s %s", elt.id, type, state, store, (elt.database)?elt.database:"", (elt.schema)?elt.schema:"", elt.name);
        }
        else
        {
          if (_parsable)
            ndbout_c("%d\t'%s'\t'%s'\t'%s'\t'%s'", elt.id, type, state, store, elt.name);
          else
            ndbout_c("%-5d %-20s %-8s %-7s %s", elt.id, type, state, store, elt.name);
        }
    }
}

NDB_STD_OPTS_VARS;

@@ -196,6 +210,9 @@ static struct my_option my_long_options[] =
  { "unqualified", 'u', "Use unqualified table names",
    (gptr*) &_unqualified, (gptr*) &_unqualified, 0,
    GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 }, 
  { "parsable", 'p', "Return output suitable for mysql LOAD DATA INFILE",
    (gptr*) &_parsable, (gptr*) &_parsable, 0,
    GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 }, 
  { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
};
static void usage()