Ich versuche, eine Spalte in meiner Tabelle mit SQL Compact Edition hinzuzufügen. Früher hat es funktioniert, aber ich erhalte jetzt einen Fehler, der besagt, dassÄndern der Tabelle zum Hinzufügen eindeutiger Spalten sql ce
Ein doppelter Wert kann nicht in einen eindeutigen Index eingefügt werden. [Table name = letzter Versuch, Constraint name = UQ__final try__0000000000000228]
i C# bin mit, weil ich die neuen Spaltennamen (mit Textbox) und bestimmen, ob die Spalte eindeutig ist (Kontrollkästchen) bin immer. Früher hat es funktioniert, dann ist es plötzlich nicht mehr. bitte hilfe! Mein Code ist irgendwie unordentlich. Es tut mir leid hier ist sie:
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();
Die constr
gibt so etwas wie
ALTER TABLE table ADD COLUMN column1 int unique
Bitte um Hilfe! Vielen Dank!
EDIT:
ich, dass ich nicht eine Spalte nur hinzufügen entdeckt, wenn die Datenrasteransicht bereits seine Daten innerhalb haben. Was soll ich machen? Hilfe! Vielen Dank!!!
Das Problem aus der Datagridview kommen scheint, nicht die alten table SQL ... – Grace
können Sie Spalten in die Tabelle, wenn die Tabelle hinzufügen ist gefüllt, aber nicht wenn das Feld NICHT NULL oder UNIQUE ist. Wenn das Feld nicht null ist, müssen Sie einen Standardwert angeben, und wenn Sie möchten, dass es eindeutig ist, müssen Sie die Spalte ohne eindeutig hinzufügen und dann einen eindeutigen Index erstellen, der nach der Erstellung der Spalte Nullen zulässt – GuidoG