PostGIS  2.3.7dev-r@@SVN_REVISION@@
int ShpLoaderGetSQLCopyStatement ( SHPLOADERSTATE state,
char **  strheader 
)

Definition at line 1463 of file shp2pgsql-core.c.

References _, shp_loader_state::col_names, shp_loader_state::config, shp_loader_config::dump_format, malloc(), shp_loader_state::message, shp_loader_config::schema, SHPLOADERERR, SHPLOADERMSGLEN, SHPLOADEROK, and shp_loader_config::table.

Referenced by main(), and pgui_action_import().

1464 {
1465  char *copystr;
1466 
1467  /* Allocate the string for the COPY statement */
1468  if (state->config->dump_format)
1469  {
1470  if (state->config->schema)
1471  {
1472  copystr = malloc(strlen(state->config->schema) + strlen(state->config->table) +
1473  strlen(state->col_names) + 40);
1474 
1475  sprintf(copystr, "COPY \"%s\".\"%s\" %s FROM stdin;\n",
1476  state->config->schema, state->config->table, state->col_names);
1477  }
1478  else
1479  {
1480  copystr = malloc(strlen(state->config->table) + strlen(state->col_names) + 40);
1481 
1482  sprintf(copystr, "COPY \"%s\" %s FROM stdin;\n", state->config->table, state->col_names);
1483  }
1484 
1485  *strheader = copystr;
1486  return SHPLOADEROK;
1487  }
1488  else
1489  {
1490  /* Flag an error as something has gone horribly wrong */
1491  snprintf(state->message, SHPLOADERMSGLEN, _("Internal error: attempt to generate a COPY statement for data that hasn't been requested in COPY format"));
1492 
1493  return SHPLOADERERR;
1494  }
1495 }
SHPLOADERCONFIG * config
#define _(String)
Definition: shpcommon.h:24
#define SHPLOADEROK
char message[SHPLOADERMSGLEN]
void * malloc(YYSIZE_T)
#define SHPLOADERERR
#define SHPLOADERMSGLEN

Here is the call graph for this function:

Here is the caller graph for this function: