Добавление столбцов с именами переменных в SQL с использованием C , odbc

#c #mysql #sql #visual-c #odbc

#c #mysql #sql #visual-c #odbc

Вопрос:

Я начинающий программист, и это мой первый пост на форуме, поэтому, пожалуйста, потерпите меня.

Я использую MS Visual C 2010, поэтому отправляю запросы в MYSQL через odbc-соединение.

До сих пор у меня не было проблем с вводом значений в мои таблицы, но я изо всех сил пытаюсь создать столбцы.

например;

если это то, как вы вводите значения в таблицы sql:

 SQLCHAR  Col1[10];

SQLINTEGER ch1;

rc = SQLPrepare(hStmt,(SQLCHAR*)"(hStmt,(SQLCHAR*)"INSERT INTO phonebook ( LastName) VALUES (?) ",SQL_NTS);

rc = SQLBindParameter(hStmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, LENGTH, 0, Col1, 0, amp;ch1);

...// give ch1 and Col1 values

rc = SQLExecute(hStmt);
  

Тогда я бы добавил столбцы таким же образом???

 SQLCHAR  Col1[10];
SQLINTEGER ch1;

rc = SQLPrepare(hStmt,(SQLCHAR*)"ALTER TABLE phonebook ADD (? VARCHAR(45) NULL)",SQL_NTS);

rc = SQLBindParameter(hStmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, LENGTH, 0, Col1, 0, amp;ch1);

...// give ch1 and Col1 values

rc = SQLExecute(hStmt);
  

Пожалуйста, помогите. Если бы вы могли опубликовать какой-нибудь пример кода с вашим ответом, чтобы я мог лучше понять.

Заранее большое вам спасибо!

сара

Комментарии:

1. Здесь ошибка? Две части кода выглядят идентично. Я что-то упускаю? В любом случае, я был бы удивлен, если бы привязки были разрешены в инструкциях MySQL DDL. Почему бы просто не записать SQL в виде строки?

2. Можете ли вы указать, какое именно сообщение об ошибке вы получаете?