void interpret ( int argc, char* argv[] ) { init_with_options (argc, argv); //test_rec_write("test"); char token[30]; while (!feof(in_s)) { fscanf (in_s, "%s", token); put_msg (DEBUG, "current token is \"%s\".\n", token); if (strcmp(token, t_quit) == 0) { quit(); break;} if (token[0] == '#') { skip_line (); continue; } if (strcmp(token, t_help) == 0) { show_help_info (); continue; } if (strcmp(token, t_database) == 0) { set_database(); continue; } if (strcmp(token, t_show) == 0) { show_database(); continue; } if (strcmp(token, t_print) == 0) { print_str(); continue; } if (strcmp(token, t_create) == 0) { create_tbl(); continue; } if (strcmp(token, t_drop) == 0) { drop_tbl(); continue; } if (strcmp(token, t_insert) == 0) { insert_row(); continue; } if (strcmp(token, t_select) == 0) { select_rows(); continue; } syntax_error (token); } }
Database new_database() { Database retval = (Database)reserve(sizeof(struct database_struct)); debug(DB_CONNECT_STRING); retval->conn = PQconnectdb(DB_CONNECT_STRING); if (PQstatus(retval->conn) != CONNECTION_OK) dblog("Failed to connect to database %c",DB_CONNECT_STRING); retval->res = NULL; set_database(retval); return retval; }