mirror of
https://github.com/mdbtools/mdbtools.git
synced 2026-03-10 00:20:54 +08:00
Combine functions that bind a column and its length
This commit is contained in:
@@ -60,7 +60,7 @@ int started;
|
||||
{
|
||||
bound_values [j] = (char *) g_malloc (MDB_BIND_SIZE);
|
||||
bound_values [j] [0] = '\0';
|
||||
mdb_bind_column (table, j + 1, bound_values [j]);
|
||||
mdb_bind_column (table, j+1, bound_values[j], NULL);
|
||||
}
|
||||
|
||||
fprintf (stdout, "/******************************************************************/\n");
|
||||
|
||||
@@ -139,8 +139,7 @@ main(int argc, char **argv)
|
||||
|
||||
for (j=0;j<table->num_cols;j++) {
|
||||
bound_values[j] = (char *) g_malloc0(MDB_BIND_SIZE);
|
||||
mdb_bind_column(table, j+1, bound_values[j]);
|
||||
mdb_bind_len(table, j+1, &bound_lens[j]);
|
||||
mdb_bind_column(table, j+1, bound_values[j], &bound_lens[j]);
|
||||
}
|
||||
if (header_row) {
|
||||
col=g_ptr_array_index(table->columns,0);
|
||||
|
||||
@@ -60,9 +60,8 @@ main(int argc, char **argv)
|
||||
mdb_read_columns(table);
|
||||
mdb_rewind_table(table);
|
||||
|
||||
col_num = mdb_bind_column_by_name(table, argv[optind+2], buf);
|
||||
mdb_bind_len(table, col_num, &len);
|
||||
mdb_bind_column_by_name(table, "Name", name);
|
||||
col_num = mdb_bind_column_by_name(table, argv[optind+2], buf, &len);
|
||||
mdb_bind_column_by_name(table, "Name", name, NULL);
|
||||
|
||||
while(mdb_fetch_row(table)) {
|
||||
if (!strcmp(name, argv[optind+1])) {
|
||||
|
||||
@@ -80,8 +80,7 @@ char *sargcol, *sargop, *sargval;
|
||||
}
|
||||
}
|
||||
printf("column %d\n",found);
|
||||
mdb_bind_column(table, found, ole_data);
|
||||
mdb_bind_len(table, found, &len);
|
||||
mdb_bind_column(table, found, ole_data, &len);
|
||||
|
||||
if (sargname) {
|
||||
sargcol = strtok(sargname," ");
|
||||
|
||||
@@ -70,7 +70,7 @@ MdbSarg sarg;
|
||||
for (j=0;j<table->num_cols;j++) {
|
||||
bound_values[j] = (char *) g_malloc(MDB_BIND_SIZE);
|
||||
bound_values[j][0] = '\0';
|
||||
mdb_bind_column(table, j+1, bound_values[j]);
|
||||
mdb_bind_column(table, j+1, bound_values[j], NULL);
|
||||
}
|
||||
|
||||
/* print header */
|
||||
|
||||
@@ -20,7 +20,6 @@
|
||||
|
||||
#include "mdbtools.h"
|
||||
|
||||
int bind_column(MdbTableDef *table, char *colname, unsigned char *data, int *len);
|
||||
void read_to_row(MdbTableDef *table, char *sargname);
|
||||
|
||||
int
|
||||
@@ -30,6 +29,7 @@ MdbHandle *mdb;
|
||||
MdbTableDef *table;
|
||||
char *colname, *tabname;
|
||||
char *colval;
|
||||
int colnum;
|
||||
char *sargname = NULL;
|
||||
char *updstr = NULL;
|
||||
unsigned char data[255];
|
||||
@@ -55,7 +55,8 @@ int len;
|
||||
printf("updstr %s\n",updstr);
|
||||
colname = strtok(updstr,"=");
|
||||
colval = strtok(NULL,"=");
|
||||
bind_column(table, colname, data, &len);
|
||||
colnum = mdb_bind_column_by_name(table, colname, data, &len);
|
||||
printf("column %d\n", colnum);
|
||||
read_to_row(table, sargname);
|
||||
printf("current value of %s is %s, changing to %s\n", colname, data, colval);
|
||||
len = strlen(colval);
|
||||
@@ -70,23 +71,6 @@ int len;
|
||||
exit(0);
|
||||
}
|
||||
|
||||
int bind_column(MdbTableDef *table, char *colname, unsigned char *data, int *len)
|
||||
{
|
||||
unsigned int i, found = 0;
|
||||
MdbColumn *col;
|
||||
|
||||
for (i=0;i<table->num_cols;i++) {
|
||||
col=g_ptr_array_index(table->columns,i);
|
||||
printf("%d colname %s\n", i, col->name);
|
||||
if (col && !strcmp(col->name,colname)) {
|
||||
found = i+1;
|
||||
}
|
||||
}
|
||||
printf("column %d\n",found);
|
||||
mdb_bind_column(table, found, data);
|
||||
mdb_bind_len(table, found, len);
|
||||
return 0;
|
||||
}
|
||||
void read_to_row(MdbTableDef *table, char *sargname)
|
||||
{
|
||||
static MdbSargNode sarg;
|
||||
|
||||
Reference in New Issue
Block a user