Package Exports
- js-sql-parser
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (js-sql-parser) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
js-sql-parser
parse / stringify sql (select grammar) in js.
sql grammar follows https://dev.mysql.com/doc/refman/5.7/en/select.html
commonjs usage
npm install --save js-sql-parser
const parser = require('js-sql-parser');
const ast = parser.parse('select * from dual');
console.log(JSON.stringify(ast, null, 2));
ast.value.selectItems.value[0].value = 'foo';
ast.value.from.value[0].value.value.value = 'bar';
console.log(parser.stringify(ast));
// SELECT foo FROM bar
script tag
<script src="./dist/parser/sqlParser.js"><script/>
var sqlParser = window.sqlParser;
var ast = sqlParser.parse('select * from dual');
var sql = sqlParser.stringify(ast);
AMD supported
...
unsupported grammar currently
- Hexadecimal Literals as x'01af' X'01af', but 0x01af is supported.
- keyword COLLATE.
- parammarker: keyword PREPARE / EXECUTE / DEALLOCATE
- variable: keyword SET / CREATE PROCEDURE / CREATE FUNCTION
- identifier expr: ODBC escape syntax
- matchexpr: Full-Text Search Functions. // to support
- intervalexpr: Date INTERVAL keyword. // to support
- into outfile: INTO OUTFILE keyword. // to support
TODO
- ${value} like value place holder support.
Build
- Run
npm run build
to build the distributable.
LICENSE
MIT