Releases: elliotchance/vsql
Releases · elliotchance/vsql
v0.3.1
Better handling of SQLSTATE (#11) The SQLState structs now carry the SQLSTATE in their `code` attribute. Along with the new functions `sqlstate_from_int()` and `sqlstate_to_int()` more flexible printing and matching operations are possible.
v0.3.0
Adding NULL values and constraints (#10) - NULL can now be used as a value. - Specifying a `NOT NULL` constraint on table columns will ensure that NULL values will not be added to the table. `NULL` can also be explicitely provided to allow for `NULL`s. - New expressions in the form of `X IS NULL` and `X IS NOT NULL` can be used in both `SELECT` expressions and all `WHERE` clauses. - A new SQLSTATE 23502 violates non-null constraint has been added. As a consequence, also: - TRUE, FALSE and UNKNOWN (boolean values) can now be used in expressions. - SELECT statements support multiple expressions (not just a single value or `*`). However, the `*` is still not actually implemented. - The version stored in the databse file will now start to increment and be enforced for compatibility when opening a database.
v0.2.5
Added type checking (#7) Types from statements like INSERT and UPDATE are now checked for casting compatibility.
v0.2.4
Adding delimited identifiers (#6) Delimited identifiers are surrounded by double-quotes. A delimited identifier casing is kept the same. Whereas as regular identifier is not case-sensitive and will always be represented as upper case.
v0.2.3
Disallow reserved words for identifiers (#5) Table and column names may not use reserved words. This does not included SQL standard defined non-reserve words. Some of these words are also parser keywords so they will return a different error, that's OK, just as long as the name itself can not be used.
v0.2.2
Adding more data types (#4) A lot of new data types that for now reduce down to the same two internal types (string and f64). There are a lot of caveats with this that have been documented in the README. Also fixed a bug where CREATE TABLE would not accept more than one column.
v0.2.1
Renaming vdb to vsql (#3) As it was rightly pointed out on the V discord, vdb might be confused with a V debugger. vsql is also a more descriptive name.
v0.2.0
cli: Adding basic CLI (#2) You can also work with database files through the CLI (ctrl+c to exit). You will need to build the CLI tool first: ``` v install elliotchance.vdb v ~/.vmodules/elliotchance/vdb/vdb-cli.v ``` Then usage is: ``` $ ./vdb-cli test.vdb vdb> select * from foo a: 1234 1 row (1 ms) vdb> select * from bar 0 rows (0 ms) ```
v0.1.1
ci: Run SQL tests (#1) Also needed to move `db` folder to the properly names `vdb` package.
v0.1.0
Very basic initial implementation All data is stored in a single file and the most basic forms of CREATE TABLE, DELETE, DROP TABLE, INSERT, SELECT and UPDATE. Only two data types: CHARACTER VARYING(n) and FLOAT are supported.