mirror of
https://github.com/mdbtools/mdbtools.git
synced 2026-03-10 00:20:54 +08:00
patch from Terry Brown <terry_n_brown at yahoo.com> to add -N option to mdb-export
This commit is contained in:
@@ -72,9 +72,10 @@ main(int argc, char **argv)
|
|||||||
char quote_text = 1;
|
char quote_text = 1;
|
||||||
char *insert_dialect = NULL;
|
char *insert_dialect = NULL;
|
||||||
char sanitize = 0;
|
char sanitize = 0;
|
||||||
|
char *namespace = "";
|
||||||
int opt;
|
int opt;
|
||||||
|
|
||||||
while ((opt=getopt(argc, argv, "HQq:X:d:D:R:I:S"))!=-1) {
|
while ((opt=getopt(argc, argv, "HQq:X:d:D:R:I:N:S"))!=-1) {
|
||||||
switch (opt) {
|
switch (opt) {
|
||||||
case 'H':
|
case 'H':
|
||||||
header_row = 0;
|
header_row = 0;
|
||||||
@@ -104,6 +105,9 @@ main(int argc, char **argv)
|
|||||||
case 'X':
|
case 'X':
|
||||||
escape_char = (char *) g_strdup(optarg);
|
escape_char = (char *) g_strdup(optarg);
|
||||||
break;
|
break;
|
||||||
|
case 'N':
|
||||||
|
namespace = (char *) g_strdup(optarg);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -134,6 +138,7 @@ main(int argc, char **argv)
|
|||||||
fprintf(stderr," -S Sanitize names (replace spaces etc. with underscore)\n");
|
fprintf(stderr," -S Sanitize names (replace spaces etc. with underscore)\n");
|
||||||
fprintf(stderr," -q <char> Use <char> to wrap text-like fields. Default is \".\n");
|
fprintf(stderr," -q <char> Use <char> to wrap text-like fields. Default is \".\n");
|
||||||
fprintf(stderr," -X <char> Use <char> to escape quoted characters within a field. Default is doubling.\n");
|
fprintf(stderr," -X <char> Use <char> to escape quoted characters within a field. Default is doubling.\n");
|
||||||
|
fprintf(stderr," -N <namespace> Prefix identifiers with namespace\n");
|
||||||
g_free (delimiter);
|
g_free (delimiter);
|
||||||
g_free (row_delimiter);
|
g_free (row_delimiter);
|
||||||
g_free (quote_char);
|
g_free (quote_char);
|
||||||
@@ -198,7 +203,7 @@ main(int argc, char **argv)
|
|||||||
quoted_name = sanitize_name(argv[optind + 1]);
|
quoted_name = sanitize_name(argv[optind + 1]);
|
||||||
else
|
else
|
||||||
quoted_name = mdb->default_backend->quote_name(argv[optind + 1]);
|
quoted_name = mdb->default_backend->quote_name(argv[optind + 1]);
|
||||||
fprintf(stdout, "INSERT INTO %s (", quoted_name);
|
fprintf(stdout, "INSERT INTO %s%s (", namespace, quoted_name);
|
||||||
free(quoted_name);
|
free(quoted_name);
|
||||||
for (j=0;j<table->num_cols;j++) {
|
for (j=0;j<table->num_cols;j++) {
|
||||||
if (j>0) fprintf(stdout, ", ");
|
if (j>0) fprintf(stdout, ", ");
|
||||||
|
|||||||
Reference in New Issue
Block a user