From: Andy C. <an...@ad...> - 2001-04-29 07:51:55
|
Please somebody answer this question. As far as I know, there are only three ways to feed any sort of SQL = statement into Firebird. [1] Put the statements into your program as if they were source code, = then feed the file through gpre. gpre generates a program that can then = be compiled in the normal way and executed. This is called Embedded SQL, = or ESQL for short. [2] Feed the statements into some other program which is executing. = These statements are handed to the API as-is; the API handles the = parsing and decoding of the statements as well as executing them when = appropriate. This is called Dynamic SQL, or DSQL.=20 [3] Put the SQL statements into a procedure and store the procedure on = the server and call the procedure. There doesn't seem to be a special = name for this; I'd call it "SSQL" for "Server-side SQL". AFAIK, except for ESQL and server-side procedures, everything is DSQL. = The stuff you type into isql is DSQL plus a few extra commands like = "SHOW TABLES" (but never any extra syntax on existing DSQL statements). = The stuff you type into IBConsole is fed to isql so it's essentially the = same language. Where the API takes SQL statements they are DSQL = statements. I ask because the documentation refers to "SQL", as in "This is the = syntax for SQL, and this other thing is the syntax for DSQL", and I'm = not sure what "SQL" means when used that way. I propose that we limit the use of the word "SQL" to that which is = applicable to all input channels; e.g. "The SQL CONNECT statment". When = we give syntax, if we say "SQL" it should apply to all contexts. If the = contexts require different syntax, we should list the contexts and not = refer to some of them as SQL and the others as DSQL. For example SQL CONNECT statement: syntax for DSQL ... syntax for ESQL and SSQL ... Can anyone please help me to identify all of the separate contexts that = we need to track separately in the SQL syntax chapter? Thank you. |