c# - MySql alter table in c# 错误

标签 c# mysql

我正在尝试执行

ALTER TABLE

我的应用程序中的命令,但在运行时出现此错误

 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VARCHAR(10) NOT NULL' at line 1

这是我的代码:

for (int k = 0; k < dlzkaTab; k++)
{
 string query1 = "ALTER TABLE reflextime ADD " + atributes[k] + " VARCHAR(10) NOT NULL";
 MySqlCommand cmd = new MySqlCommand(query1, conect);
 cmd.ExecuteScalar();
 }

谁能帮帮我?

编辑:

这是完整的代码。在第一个 for 循环中,我从 xls 文件中读取第一行,并将其放入数组属性中。如您所见,我试图打印出每个加载的单元格。它运行良好(它正在打印正确的值)。然而,在这个 for 循环之后,数组什么都不打印(空消息框)。

  for (int j = 2; j < colCount; j++)
  {
   string atr = xlRange.Cells[1, j].Text;
   atributes[j]=atr;
   MessageBox.Show(atributes[j]);
  }

 MessageBox.Show("Súbor načítaný");

 int dlzkaTab = atributes.Length;

 MessageBox.Show(atributes[1]);  //empty messagebox

 for (int k = 0; k < dlzkaTab; k++)
 {
 string query1 = "ALTER TABLE reflextime ADD COLUMN " + atributes[k] + " VARCHAR(10) NOT NULL";
 MySqlCommand cmd = new MySqlCommand(query1, conect);
 cmd.ExecuteScalar();

 } 

最佳答案

我认为您正在尝试向表中添加 列。

您在要添加的列名之前的语句中错过了 COLUMN 关键字。

"ALTER TABLE reflextime ADD COLUMN " + atributes[k] + " VARCHAR(10) NOT NULL"

关于c# - MySql alter table in c# 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22986106/

相关文章:

c# - 为什么 SortedSet<T>.GetViewBetween 不是 O(log N)?

php - 从数据库表生成新闻

php - 当我加入另一个表时发现查询错误

php - 无法从多页表单输入数据

php - 使用 MySQLi 和 PHP 检索过程结果

c# - 在 C# 中复制 C++ 的 RAII

c# - CompareValidator 无法正常工作

c# - 在 C# 中使用主键向数据库插入行的最佳方法是什么

c# - 为 QueryString 压缩大约 1000 字节的文本

php - 将选定的复选框下拉值发送到 Codeigniter 中的 MySQL 表