Parameterized query only works with WHERE clause (?)

J

John Bailo

In testing it seems like I can only use a parameterized query when the
parameters are in a WHERE clause.

For example

cmd.CommandText = "SELECT * FROM jbtest where testfield1=@tablename ";
cmd.Parameters.Add("@tablename", tablename);

works.

But:

txt_createtable_fields= "(myfieed varchar(24))";
cmd.CommandText = "CREATE TABLE @tablename " +
txt_createtable_fields.ToString();
cmd.Parameters.Add("@tablename", tablename);

Does not.

Comments?
 
F

Frans Bouma [C# MVP]

John said:
In testing it seems like I can only use a parameterized query when
the parameters are in a WHERE clause.

For example

cmd.CommandText = "SELECT * FROM jbtest where testfield1=@tablename ";
cmd.Parameters.Add("@tablename", tablename);

works.

But:

txt_createtable_fields= "(myfieed varchar(24))";
cmd.CommandText = "CREATE TABLE @tablename " +
txt_createtable_fields.ToString(); cmd.Parameters.Add("@tablename",
tablename);

Does not.

Comments?

Perhaps because CREATE TABLE requires a constant as name, not a
parameter?

FB


--
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top