odbc - SQL Parameters - where does expansion happens -


i'm getting little confused using parameters sql queries, , seeing things can't explain, i'm after background info @ point.

first, there standard format parameter names in queries, or database/middleware dependent ? i've seen both this:-

delete * @tablename     

and...

delete * :tablename 

second - (typically) parameter replacement happen? parameters replaced/expanded before query sent database, or database receive params , query separately, , perform expansion itself?

just background, i'm using devart unidac toolkit c++builder app connect via odbc excel spreadsheet. know pessimal in few ways... (i'm trying understand why particular command works when doesn't use parameters)

sql parameters sent database. database performs expansion itself. allows database set query plan work different values of parameters.

microsoft uses @parname parameters. oracle uses :parname. other databases different.

no database know of allows specify table name parameter. have expand client side, like:

command.commandtext = string.format("delete {0}", tablename); 

p.s. * not allowed after delete. after all, can delete whole rows, not set of columns.


Comments

Popular posts from this blog

.htaccess - First slash is removed after domain when entering a webpage in the browser -

Automatically create pages in phpfox -

c# - Farseer ContactListener is not working -