Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > Параметризованный CREATE TABLE


Автор: Stratus 19.4.2012, 23:10
Коллеги пожалуйста подскажите каким образом можно создать 
параметризованный запрос с CREATE TABLE

Пытаюь делать так:
Код

            string SQLcmd = "create table test (@limit int)";

            using (MySqlCommand cmd = new MySqlCommand(SQLcmd, conn))
            {
                MySqlParameter param = new MySqlParameter();
                param.ParameterName = "@limit";
                param.Value = "1";
                param.MySqlDbType = MySqlDbType.String;
                cmd.Parameters.Add(param);  
                cmd.ExecuteNonQuery();
            }


В связи с этим 2 вопроса:
1. Возможно ли вообще с CREATE TABLE использовать параметризованный запрос?
2. Возможно ли использовать какой нибуть атрибут чтобы в параметре запроса, чтобы например если имя таблицы в тестовом запросе совпадает с каим либо зарезервированным словом оно трактовалось как имя таблицы а не как команда?

Автор: Kolovorot 28.5.2012, 01:44
1. Не возможно. Можно сделать так:
Код

string columnName = "AnyColumnName";

string SQLcmd = string.Format("create table test({0} int)";


2.Для этого используются квадратные скобки:
Код

create table [select](int column)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)