HyriseSQLParser/README.md

33 lines
1014 B
Markdown
Raw Normal View History

2014-10-24 17:37:03 +02:00
SQL Parser (C++)
2014-10-09 01:27:56 +02:00
==========
2014-10-24 17:37:03 +02:00
This is a SQL Parser for C++. It parses the given SQL query into C++ objects.
2014-11-10 01:48:33 +01:00
It is developed for integration in hyrise (https://github.com/hyrise/hyrise), but can be used in other environments as well.
2014-10-31 18:54:00 +01:00
2014-11-10 01:48:33 +01:00
### General Usage
2014-10-31 18:54:00 +01:00
**Prerequisites:**
* bison (https://www.gnu.org/software/bison/)
* flex (http://flex.sourceforge.net/)
To create the full parser code run `make build`. The parser library code is created in `build/`.
2014-11-29 13:29:24 +01:00
To use the SQL Parser in your own code, you only need to include `SQLParser.h` and build+link all the source files from the parser with your project. See `hyrise/src/lib/access/sql/SQLQueryParser.cpp` for how it's used in Hyrise.
2014-10-31 18:54:00 +01:00
2014-11-29 13:29:24 +01:00
### Update in Hyrise
2014-11-10 01:48:33 +01:00
2014-11-29 13:29:24 +01:00
Run `./deploy_to_hyris.sh path/to/hyrise` to update the SQL parser within Hyrise.
2014-11-10 01:48:33 +01:00
2014-11-29 13:29:24 +01:00
### Capabilities (Can and Can't do)
2014-11-10 01:48:33 +01:00
2014-11-29 13:29:24 +01:00
**Can**
* Most of select statements
* Join expressions
* Create tables
* Insert statements
2014-11-10 01:48:33 +01:00
2014-11-29 13:29:24 +01:00
**Can't (yet)**
* Union clauses
* Update statements
* Create anything other than tables