Comments (2)
Hi, good question.
This library was created kind of opportunistically, since I saw there would be a pretty low effort way to support all of TSQL by leveraging existing work. If I had to do it all (TSQL parsing) from scratch, I would probably not do the project, since it is the type of problem that can take years, and people start companies around selling solutions for.
So for each other dialect, if I was to do it, I'd have to weigh popularity, ease/viability of metaprogramming the syntax tree. For PL-SQL, it is very popular, and I see that there is a standalone parser available. So it is a contender, but I'll need to do a little more research to see how difficult it would be. For TSQL it was pretty easy, since there was already a .NET assembly that I could just do reflection on, but I don't think so for PL-SQL.
In general, the project goal is to provide:
- a nice API around SQL parsing
- script generation (80/20 principle for this, since TSQL syntax tree is huge. Supporting the whole type tree would be a huge effort, but supporting a subset that would take care of 99% of needs would be fairly easy)
For SQL static analysis, I'm interested, but it may make sense to do in a another project downstream from this one, because in order to do a good job, you'd need a connection to the database to get schemas, view definitions, etc, and this is just a library.
from fssqldom.
Thank you. Looks like really good base for different tools for SQL code manipulation.
from fssqldom.
Related Issues (5)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fssqldom.