2012-01-31 13 views
9

Sapete dove posso ottenere la notazione BNF (Backus Naur Form) per l'ultima versione di T-SQL. Questa è la versione Microsoft e non riesco a trovare nulla per questo. Ho trovato SQL2 La rivisto standard ISO here chiamato anche SQL92 ma sembra mancare alcune caratteristiche di Microsoft T-SQLNotazione BNF di T-SQL

+0

Non credo che esista un BNF pubblicato per T-SQL. –

+0

Forse se hai rivisto la tua domanda sul perché volevi una cosa del genere/quale problema stavi cercando di risolvere, si potrebbe ottenere senza? –

+0

BOL non è già in BNF? –

risposta

1

SQL-92 in BNF

SQL Server 2005 si basa su SQL92 con alcuni SQL-99 caratteristiche e di Microsoft T -estensioni SQL. Migliore che ho trovato al momento.

fatemi sapere se trovate un più aggiornato uno .....

+0

Microsoft usa [parentesi] (http://stackoverflow.com/q/9719869/402322) per citare gli identificatori. Questo è molto lontano da SQL-92. – ceving

5

Avete verificato questo btw?

General Sql Parser

Hanno Stratificati la notazione da zero ....

+0

Questa è una fonte chiusa che significa: no BNF. – ceving

3

So che questa è una vecchia questione, ma ho appena trovato this file di grammatica ospitato su bitbucket che può essere utilizzato con GOLD Parsing System .

Dato che stai cercando BNF di TSQL (lo ero anch'io), e in realtà non esiste, questa grammatica è la prossima cosa migliore IMO.

+0

Grazie per aver condiviso. –

2

Ho sviluppato la grammatica tsql per ANTLR 4 in formato EBNF. Controlla in ufficiale grammars repository. Si basa su msdn description.

sintassi Attualmente implementato:

  • controllo del flusso (MSDN).
  • Cursori (MSDN).
  • Data Manipulation Language (DML):

  • Espressioni (MSDN).
  • Predicati.
  • Transazioni (MSDN).

E altra sintassi. Controlla la grammatica e test files per maggiori dettagli.