Was ich tun muss, ist eine SET IDENTITY_INSERT dbo.myTable ON
Anweisung, was ist die Syntax der Verwendung der obigen Anweisung in einer C# App?Wie setze ich SET IDENTITY_INSERT dbo.myTable ON-Anweisung
Antwort
Es ist genau das gleiche wie jedes andere Bit von SQL:
using (var connection = new SqlConnection("Connection String here"))
{
connection.Open();
var query = "SET IDENTITY_INSERT dbo.MyTable ON; INSERT INTO dbo.MyTable (IdentityColumn) VALUES (@identityColumnValue); SET IDENTITY_INSERT dbo.MyTable OFF;";
using (var command = new SqlCommand(query, connection)
{
command.Parameters.AddWithValue("@identityColumnValue", 3);
command.ExecuteNonQuery();
}
}
fehlende rechte Klammer am Ende von "using" Zeile –
Nun, wenn es Teil eines SqlCommand
Instanz ist, die Sie gerade fügen Sie den Text:
using(SqlConnection myConnection = new SqlConnection(connString))
{
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "SET IDENTITY_INSERT dbo.MyTable ON";
cmd.CommandText += //set the rest of your command here.
}
ich die Frage Notwendigkeit davon jedoch. Wenn Sie eine Identität so häufig in eine Tabelle einfügen, dass Sie Code verwenden, würde ich eine gespeicherte Prozedur für die Einfügung empfehlen. Sie würden es dann rufen Sie im Grunde die gleiche Art und Weise:
using(SqlConnection myConnectino = new SqlConnection(connString))
{
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "usp_insert_record_into_my_table [ParamList]";
cmd.CommandType = SqlCommandType.StoredProcedure;
}
Aaaaaargh, gespeicherte Prozeduren mit "usp_" vorangestellt, meine Augen, meine Augen, es burrrrrrns! ;) – Rob
@Rob - ja, ich weiß, alte Konvention. Ich mag es wirklich, weil es einfacher ist, im Management Studio zu finden (für mich). Es dient keinem anderen Zweck. Wenn Sie _really_ wollen, schätze ich, dass ich es ändern kann. Nur für dich. : P – AllenG
Meh - solange es nicht "sp_" ist, siehe: http://blogs.lessthandot.com/index.php/DataMgmt/DBProgramming/MSSQLServer/don-t-start-your-procedures-with-sp_ –
- 1. Set IDENTITY_INSERT OFF für alle Tabellen
- 2. Wie IDENTITY_INSERT als ON festgelegt?
- 3. Deaktivieren IDENTITY_INSERT für Datensatz einfügen
- 4. Wie setze ich $ und setze ein Update MongoDB ein?
- 5. Wie setze ich das selecteditem
- 6. Wie setze ich UICollectionViewDelegateFlowLayout?
- 7. IDENTITY_INSERT ist auf OFF gesetzt - Wie wird es eingeschaltet?
- 8. Wie setze ich Zufallszahlen ein?
- 9. Hibernate 3.5 vs 4 IDENTITY_INSERT Probleme
- 10. Wie setze ich diese Unterbrechungspunkte in ~/.gdbinit?
- 11. Wie kombiniere ich und setze? in .bat
- 12. Wie setze ich NSExtensionActivationRule Prädikate?
- 13. Linq zu SQL: Warum erhalte ich IDENTITY_INSERT Fehler?
- 14. Wie setze ich ein Bind in C#
- 15. Wie setze ich den Port in HTTParty
- 16. Wie setze ich SearchView TextSize?
- 17. gyp - Wie setze ich FRAMEWORK_SEARCH_PATH?
- 18. Wie setze ich Sikuli Pfad
- 19. Wie setze ich einen Blockdatenwert?
- 20. Wie setze ich QWidget width?
- 21. Wie setze ich QWidget Hintergrundfarbe?
- 22. Wie setze ich DataGridTextColumn Textfarbe?
- 23. Wie setze ich setProgressDrawable() korrekt?
- 24. Wie setze ich paint.setColor (R.color.white)
- 25. Wie setze ich QMainWindow Titel
- 26. Highcharts: Wie setze ich DataGrouping?
- 27. Wie setze ich Iteratoren zusammen?
- 28. Wie setze ich JDesktopPane Größe
- 29. Wie setze ich UISlider vertikal?
- 30. Wie setze ich Daten in Viewpager?
, wem markiert diese als „nicht eine wirkliche Frage“ - bitte die [SET IDENTITY_INSERT] lesen (http://msdn.microsoft.com/en-us /library/ms188059.aspx). –
@OMG Ponys - Ich habe mich gefragt, warum jemand "keine echte Frage" hatte: -/ – Rob