"dbf2pg [options] dbf-file"
Options:
[-v[v]] [-f] [-u | -l] [-c | -D] [-d database] [-t table]
- [-h host] [-s oldname=newname[,oldname=newname]] [-s
+ [-h host] [-s oldname=[newname][,oldname=[newname]]] [-b
start] [-e end] [-W] [-U username] [-B transaction_size]
[-F charset_from [-T charset_to]]
dbf2sql(1L) dbf2sql(1L)
- -s oldname=newname[,oldname=newname]
+ -s oldname=[newname][,oldname=[newname]]
Change the name of a field from oldname to newname.
This is mainly used to avoid using reserved SQL-
- keywords. Example:
- -s SELECT=SEL,COMMIT=doit
+ keywords. When the new fieldname is empty, the field
+ is skipped in both the CREATE-clause and the
+ INSERT-clauses, in common words: it will not be present
+ in the SQL-table.
+ Example:
+ -s SELECT=SEL,remark=,COMMIT=doit
This is done before the -f operator has taken
effect!
- -s start
+ -b start
Specify the first record-number in the xBase-file
we will insert.
Options:
.br
[-v[v]] [-f] [-u | -l] [-c | -D] [-d database] [-t table]
-[-h host] [-s oldname=newname[,oldname=newname]]
-[-s start] [-e end] [-W] [-U username] [-B transaction_size]
+[-h host] [-s oldname=[newname][,oldname=[newname]]]
+[-b start] [-e end] [-W] [-U username] [-B transaction_size]
[-F charset_from [-T charset_to]]
.SH DESCRIPTION
.IR -f
operator has taken effect!
.TP
-.I "-s start"
+.I "-b start"
Specify the first record-number in the xBase-file we will insert.
.TP
.I "-e end"
printf("dbf2pg\n"
"usage: dbf2pg [-u | -l] [-h hostname] [-W] [-U username]\n"
" [-B transaction_size] [-F charset_from [-T charset_to]]\n"
- " [-s oldname=newname[,oldname=newname[...]]] [-d dbase]\n"
+ " [-s oldname=[newname][,oldname=[newname][...]]] [-d dbase]\n"
" [-t table] [-c | -D] [-f] [-v[v]] dbf-file\n");
}
field *fields;
int i,
h,
+ j,
result;
char *query,
*foo;
if (result == DBF_VALID)
{
query[0] = '\0';
+ j = 0; /* counter for fields in the output */
for (h = 0; h < dbh->db_nfields; h++)
{
- if (!strlen(fields[h].db_name))
+ if (!strlen(fields[h].db_name)) /* When the new fieldname is empty, the field is skipped */
+ {
continue;
+ }
+ else
+ {
+ j++;
+ }
- if (h != 0) /* not for the first field! */
+ if (j > 1) /* not for the first field! */
strcat(query, "\t"); /* COPY statement field
* separator */