Re: FAQs and Archives.
Posted in 1994
> > I have been asked to find an article supposedly posted to this > group stating that a SQL parser written in Lex and Yacc had been > written (the source may even have been posted to this group). > Steve, I'm not sure if it was something I posted, but our company, Anasazi, wrote a set of tools, one of which is written in lex and yacc. The tools are called tdf, presql, dbdiff, and sqlprof. * tdf reads a dictionary type file, and creates .sqls, .h, and a .th (symbol table for presql). The application programs include the .h's. The .sqls are used for detecting differences between schemas. * presql is a precompiler that we use as a top layer to ESQL/C. It allows us to use shorthands, like "ALLCOLS"; adds SQL profiling to all our code (VERY IMPORTANT!!!), allows our code to work, even if on some of our code the columns are different types and lengths. This would also allow us to change vendors (like from Informix to Oracle) fairly simply, by changing presql. * dbdiff detects differences between a set of sqls and a schema, or two schemas (etc). It not only detects the difference, it creates the SQL code to change to schema to make it the same. We use this when we release a new set of software, along with table changes. We also have a document generator that works from the tdf created file, and a whole slew of other tools, written out of sheer need. Personally, I can't imagine not having these type of tools. I have never posted the source, but maybe have talked about these tools. I think our management dudes would be happy if I posted the source. Not that we sell these products now, but I was wondering how much interest there would be if we did. Naomi -- Naomi Walker (aka N7FSA) | naomi@anasazi.com | Phoenix, Arizona Everything should be made as simple | as possible, but not simpler --Einstein | Visualize Whirled Peas