ChangeLog

ChangeLog for SQG

http://sites.google.com/site/sqlquerygenerator

1.0 - (07-12-12) -sql datatypes now supported: DATE, DATETIME, TIMESTAMP, REAL and TEXT

-in verbose mode, any other datatype can be used

-the header printed in the output file now contains the date and time

-fixed a bug that was causing the last column to be skipped if the CREATE TABLE

query file did not end with a space and/or new line.

-fixed a bug that was allowing invalid table names to be entered.

-an error message is now displayed if there are no table names found in

the CREATE TABLE query file.

-revised the README file

-new function getinput() handles all user input based on the column information rather than have

each module containing [virtually] the same code for user input

-changed the --verbose-where / -w option to --verbose / -v

-columns with unknown/unsupported datatypes are skipped and warning message is displayed (in non-verbose mode only)

-bug fix: if there is no space between the comma and next column name in the CREATE TABLE query

file, then the column name is not skipped(as it was in passed versions).

-Default values are now supported and will be handled by the dbms

-fixed bug in gototable() that made it return 0 if only one character of the table name

was entered by the user

-new variable in struct defined in querygen.h: int primary_key. when getcolumn()

encounters a column that is the PRIMARY KEY this is set to 1. else it will be 0.

-one of the new features (when verbose-mode is on) is that when making INSERT INTO queries

you can use values you entered for the previous row in the current row(you can change it

if you do not want to use the same value again).

-user is given 10 tries to enter a correct table name rather than exiting on first failure

-new -g, --gpl option to show terms of gpl license

-when prompted to enter a column name, user can use "?" to see a list of column names

-when user is prompted to type in Y or N (yes/no), it is done with getc and code has been added to

clear out stdin if they type in more than one character. a switch/case statement handles the input

rather than if/else statements

-insert, delete, and update query functions now return type int rather than void. this allows main() to

terminate the program by returning 0. in past versions main never returned 0.

-major code cleanup: now compiles under gcc 4.5.2 with -Wall and -Wextra with no warnings

0.9 - (03-03-03) -added gototable() function. This function rewinds the CREATE TABLE query file

then reads up to the tablename which is passed as an argument. This prevents

a lot of replicated code.

-added where_clause() function. This function handles the WHERE clauses for

update_query.c and delete_query.c

-new -w, --verbose-where option added. With this option, you can choose the

operator in the WHERE clause and have more than one clause separated with

either AND or OR

-improved parsing of the CREATE TABLE query file

-updated documentation

0.8 - (01-14-03) - single quotes and backslashes typed by the user are now preceded by a backslash

in the output so it will be inserted into the database without error.

(ie: you type in "don't format c:\" the output will be"don\'t format c:\\")

- long options supported now (see README for info)

- new option added to program "--print-stdout". This prints the output to the screen.

- fixed 3 bugs that affected program operation (see main.c, insert_query.c, and

update_query.c in Module_CHANGELOG for more info)

-updated documentation in docs/en/ folder

0.7 - (11-22-02) support for creating queries for multiple tables added.

0.6 - (08-13-02) now checks for SQL reserved words. A couple of bug fixes(see Module_CHANGELOG)

0.5 - (04-09-02) the -a option was added. It allows you to append the output file rather than

overwrite it. insert_query() and update_query() do error checking for columns

that are NOT NULL. Documentation in docs/en/ updated.

0.4 - (03-01-02) now makes DELETE queries

bugfixes throughout the program

new usage is "$sqg [option] [input file] [output file]"

0.3 - (02-02-02) finished the first version of the update_query() function. Updated insert_query()

0.2 - (12-03-01) fixed bug in insert_query() that was treating numerical datatypes as strings

0.1 - (10-28-01) First version. This only makes INSERT INTO queries

date in this changelog are in the format of DD-MM-YY