我正在尝试执行
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/