Hinzufügen von Identitätsspalte zu Datentabelle mit C#. Ich benutze SQL Server.Hinzufügen von Identitätsspalte zu Datentabelle mit C#
Antwort
Sie könnten so etwas vielleicht versuchen?
private void AddAutoIncrementColumn()
{
DataColumn column = new DataColumn();
column.DataType = System.Type.GetType("System.Int32");
column.AutoIncrement = true;
column.AutoIncrementSeed = 1000;
column.AutoIncrementStep = 10;
// Add the column to a new DataTable.
DataTable table = new DataTable("table");
table.Columns.Add(column);
}
Sie nicht autoincrement auf Datatable (oder Front-End für diese Angelegenheit), es sei denn, Sie nur Ihre Anwendung eine einzige Benutzeranwendung machen wollen.
Wenn Sie das Autoinkrement benötigen, tun Sie es einfach in der Datenbank und rufen Sie dann die automatisch inkrementierte ID ab, die aus der Datenbank für Ihr Frontend erzeugt wurde.
Siehe meine Antwort hier, nur die SqliteDataAdapter zu SqlDataAdapter ändern, SqliteConnection zu SqlConnection, etc: anyway see why I get this "Concurrency Violation" in these few lines of code??? Concurrency violation: the UpdateCommand affected 0 of the expected 1 records
Ich lese Daten aus der Flat-Datei und muss eine Zeilennummer zur DataTable hinzufügen - es gibt Zeiten, wenn dies gültig ist, und nein, es macht meine App nicht zu einem einzelnen Benutzer. – MrTelly
ja, oder für die Ausgabe ..... Ich erzeuge Ausgabe, die aus mehreren unabhängigen Lesevorgänge besteht, die in einer einzigen Sequenz enden müssen. Es ist eine sehr wichtige lokale Verwendung der DataTable ...... ähnliche Isolation wie "Single-User", aber nicht das Gleiche. –
Nur meine zwei Cent. Auto-Zuwachs ist nützlich in einer Winform
App (stand alone als Michael Buen zu Recht gesagt hat), das heißt:
DatagridView
wird verwendet, um Daten anzuzeigen, die nicht ein „Schlüsselfeld“ hat, kann die gleiche verwendet werden für Aufzählung.
Ich denke nicht, es ist eine gute Idee autoincrement auf Datentabelle zu verwenden, wenn Sie Einsatz verwenden und zu einer Datentabelle zu löschen, weil die Zahl nicht rearranget werden, keine endgültige i wird eine kleine Idee teilen, wie können wir autoincrement Handbuch verwenden .
DataTable dt = new DataTable();
dt.Columns.Add("ID",typeof(int));
dt.Columns.Add("Produto Nome", typeof(string));
dt.Rows.Add(null, "A");
dt.Rows.Add(null, "B");
dt.Rows.Add(null, "C");
for(int i=0;i < dt.Rows.Count;i++)
{
dt.Rows[i]["ID"] = i + 1;
}
immer bei der endgültigen Festlegung des Einsatzes oder löschen müssen
for(int i=0;i < dt.Rows.Count;i++)
{
dt.Rows[i]["ID"] = i + 1;
}
Das ist wirklich verwirrend. Und das Ändern von 'DataTable' ändert die DB nicht, und ich glaube, das ist der wesentliche Teil der OP-Frage. – andr
DataTable table = new DataTable("table");
DataColumn dc= table.Columns.Add("id", typeof(int));
dc.AutoIncrement=true;
dc.AutoIncrementSeed = 1;
dc.AutoIncrementStep = 1;
// Add the new column name in DataTable
table.Columns.Add("name",typeof(string));
table.Rows.Add(null, "A");
table.Rows.Add(null, "B");
table.Rows.Add(null, "C");
dieser Schleife laufen Wenn die Datentabelle bereits ausgefüllt ist. Sie können die folgende Methode verwenden
void AddAndPopulateDataTableRowID(DataTable dt, string col, bool isGUID)
{
if(isGUID)
dt.Columns.Add(col, typeof(System.Guid));
else
dt.Columns.Add(col, typeof(System.Int32));
int rowid = 1;
foreach (DataRow dr in dt.Rows)
{
if (isGUID)
dr[col] = Guid.NewGuid();
else
dr[col] = rowid++;
}
}
- 1. Hinzufügen von Jahreszeiten Spalte zu Datentabelle basierend auf Monatsdaten
- 2. Datentabelle zu Excel in C#
- 3. Laravel Hinzufügen von Datentabelle zu schwenken, während neue Rekord Einfügen
- 4. Hinzufügen von doppelten Typ einer Spalte zu einer Datentabelle
- 5. dc.js - Datentabelle mit jquery Datentabelle Plugin
- 6. wie Header von Datentabelle
- 7. Erstellen einer Tabelle mit Identitätsspalte
- 8. Liste von Entitäten zu Datentabelle
- 9. C# Datentabelle zur Listenansicht
- 10. Identitätsspalte in EF 4
- 11. wie Datentabelle in C#
- 12. zuordnen Inserted Identitätsspalte zu anderen Tisch
- 13. C# Element in Zeile von Datentabelle erhalten
- 14. Hinzufügen einer Spalte einer Datentabelle zu einer anderen
- 15. Wie Zeile kopieren und zu derselben Datentabelle hinzufügen
- 16. Wert zu einer Datentabelle in die zweite Spalte hinzufügen
- 17. eine Datentabelle in einem Datensatz Hinzufügen
- 18. EF7 Konfigurieren einer Identitätsspalte
- 19. hinzufügen Parameter Datentabelle Ajax-Aufruf vor
- 20. Korrekter Weg von Mongo zu Datentabelle
- 21. Baugruppe ADC (Hinzufügen mit Übertrag) zu C++
- 22. Hinzufügen von C-Datei zu Visual Studio
- 23. Hinzufügen von Textaufzählungszeichen zu einem C# -Formular
- 24. Hinzufügen von GUI zu C++ Win32-Konsole
- 25. Hinzufügen von Attributen zu C# Eigenschaftsset Parameter
- 26. Hinzufügen von C++ QAbstractSeries zu QML chartview
- 27. Hinzufügen von Strukturen zu einer Karte C++
- 28. Hinzufügen von DropDownLists zu einem Benutzersteuerelement C#
- 29. Hinzufügen eines Multi-Select auf js Datentabelle
- 30. Get gefilterte Daten von Dataset zu Datentabelle
Wenn eine vorhandene DataTable mit Daten darin hinzugefügt wird, füllt dies automatisch die neue Spalte in den vorhandenen Zeilen? – Lunyx