js-tsql-parser

1.3.0 • Public • Published

js-tsql-parser

[WIP] Adding support for TSQL, forked from JavaScriptor/js-sql-parser

parse / stringify sql (select grammar) in js.

NPM Version NPM Downloads

sql grammar follows https://dev.mysql.com/doc/refman/5.7/en/select.html

commonjs usage

npm install --save js-tsql-parser

const parser = require('js-tsql-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/tsqlParser.js"><script/>
 
var tsqlParser = window.tsqlParser;
var ast = tsqlParser.parse('select * from dual');
var sql = tsqlParser.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

Readme

Keywords

Package Sidebar

Install

npm i js-tsql-parser

Weekly Downloads

9

Version

1.3.0

License

ISC

Unpacked Size

5.07 MB

Total Files

13

Last publish

Collaborators

  • sanjaynishad