Quale tipo di grammatica viene utilizzata per analizzare PostgreSQL? LR, LALR, LL o qualcos'altro?Quale tipo di grammatica viene utilizzata per analizzare PostgreSQL?
5
A
risposta
6
Il PostgreSQL parser è basato su yacc e Lex. I parser generati da yacc sono LALR (1). Puoi leggere la grammatica di Postgres here.
+1
Questo era fino alla [versione 8.X] (http://www.postgresql.org/docs/8.4/static/parser-stage.html). Nelle versioni 9+ PosgreSQL [sta usando Bison] (http://www.postgresql.org/docs/9.0/static/parser-stage.html), che è un generatore di parser compatibile con full-yacc. –
Problemi correlati
- 1. Quale cifra viene utilizzata su NFS crittografato?
- 2. Quale origine traccia viene utilizzata da System.Diagnostics.Trace.WriteLine?
- 3. GIT e SSH, quale chiave viene utilizzata?
- 4. Quale codifica viene utilizzata dal protocollo HTTP?
- 5. Quale risoluzione dpi viene utilizzata per un'app per iPhone?
- 6. Come sapere quale implementazione JAXB viene utilizzata?
- 7. Come scoprire quale risorsa drawble viene utilizzata?
- 8. Quale classe viene utilizzata per scrivere caratteri anziché byte?
- 9. Quanto e quale pianificazione viene utilizzata per i progetti software?
- 10. Python: quale codifica viene utilizzata per elaborare sys.argv?
- 11. Quale versione di Entity Framework viene utilizzata dal mio progetto?
- 12. Quale versione di VB viene utilizzata in SSRS
- 13. Quale libreria gui viene utilizzata dall'editor di testo sublime?
- 14. Come meglio analizzare una grammatica semplice?
- 15. Quale tipo viene scelto per un'espressione polimorfa quando viene stampato?
- 16. Scoprire se/quale libreria BLAS viene utilizzata da Numpy
- 17. Che tipo di parser è necessario per questa grammatica?
- 18. postgreSQL spiegare analizzare una funzione
- 19. Che tipo di struttura dati viene utilizzata per le mappe immutabili?
- 20. Quale unità di misura viene utilizzata per determinare la precisione del GPS con l'API geo HTML5?
- 21. Qualcuno sa quale tecnica di crittografia viene utilizzata da JDeveloper/SQL Developer per mantenere le credenziali?
- 22. Per cosa viene utilizzata l'importazione java.util.UUID?
- 23. Tipo di campo PostgreSQL per timestamp unix?
- 24. Quale tipo di dati per latitudine e longitudine?
- 25. Quale funzione viene utilizzata per inizializzare il membro della classe statico?
- 26. Che cosa determina quale versione di Typescript viene utilizzata durante un processo di msbuild?
- 27. .NET: per che cosa viene utilizzata l'intestazione dell'oggetto?
- 28. PostgreSQL: quale tipo di dati deve essere utilizzato per la valuta?
- 29. Grammatica grammatica dispari
- 30. L'espressione di tipo 'System.Int32' non può essere utilizzata per il tipo di ritorno 'System.Object'
È probabile che sia basato su una grammatica LALR (1); questo è ciò che Yacc/Bison gestisce normalmente. Ci sono probabilmente alcune complicazioni in questo; a volte la grammatica SQL diventa difficile da gestire con LALR (1). –
Il codice sorgente per parser è qui (per l'ultima versione) http://git.postgresql.org/gitweb/?p=postgresql.git;a=tree;f=src/backend/parser;h=904b1b0bb8bddc95b422b27a3d44fd826dedf736;hb=REL9_1_STABLE Contiene definizioni standard LEX e YACC ... – zeFrenchy