0
我想使用SQL精簡版在我的表上添加一列。它曾用於之前的工作,但我現在說錯誤更改表添加唯一列sql ce
重複的值不能插入唯一的索引。 [表名=最後的嘗試,約束名稱= UQ__final try__0000000000000228]
我使用C#,因爲我得到新的列名(使用文本框),並確定是否列是唯一的(複選框)。它曾經工作,然後突然不是。請幫忙!我的代碼有點亂。我很抱歉,這就是:
string constr = "ALTER TABLE ";
if (textBox2.Text.ToString() != "")
{
constr += "[" + table + "] ADD [" + col1 + "]";
if (comboBox2.Text == "text")
{
constr += " nvarchar(300)";
}
else if (comboBox2.Text == "number")
{
constr += " int";
}
else if (comboBox2.Text == "date")
{
constr += " datetime";
}
if (checkBox1.Checked)
{
constr += " unique";
}
}
cmd.CommandText = constr;
cmd.ExecuteNonQuery();
的constr
輸出像
ALTER TABLE table ADD COLUMN column1 int unique
請幫幫忙!謝謝!
編輯:
我發現我不能添加一列只有在數據網格視圖已經有內其數據。我該怎麼辦?幫幫我!謝謝!!!
這個問題似乎都從DataGridView中,而不是ALTER TABLE SQL ... – Grace
你可以在表列添加到表被填充,但不是當字段不是空或唯一時。當該字段不爲空時,你必須提供一個默認值,如果你希望它是唯一的,你必須添加沒有唯一的列,然後創建一個唯一的索引,允許在列創建後產生空值 – GuidoG