ADO.NET tutorial for beginners - Part 14 Sqlcommandbuilder update not working

Database, Information Technology

ADO.NET tutorial for beginners

61 Lessons

Part 14 Sqlcommandbuilder update not working

Text version of the video
http://csharp-video-tutorials.blogspot.com/2013/10/part-14-sqlcommandbuilder-update-not.html

Slides
http://csharp-video-tutorials.blogspot.com/2013/11/part-14-sqlcommandbuilder-update-not.html

All ADO .NET Text Articles
http://csharp-video-tutorials.blogspot.com/p/free-adonet-video-tutorial.html

All ADO .NET Slides
http://csharp-video-tutorials.blogspot.com/p/adonet-slides.html

All Dot Net and SQL Server Tutorials in English
https://www.youtube.com/user/kudvenkat/playlists?view=1&sort=dd

All Dot Net and SQL Server Tutorials in Arabic
https://www.youtube.com/c/KudvenkatArabic/playlists

This is continuation to Part 13. Please watch Part 13 from ADO.NET tutorial, before proceeding.

Two common reasons why SqlDataAdapter.Update does not work
1. SqlCommandBuilder object not associated with SqlDataAdapter object. Without this association SqlCommandBuilder object does not know how to generate INSERT, UPDATE and DELETE statements.
SqlCommandBuilder builder = new SqlCommandBuilder(dataAdapter);
If the above line is not present in your code, SqlDataAdapter.Update() method witll throw an exception – Update requires a valid UpdateCommand when passed DataRow collection with modified rows.

2. The SelectCommand that is associated with SqlDataAdapter, does not return atleast one primary key or unique column. If this is the case you will get an exception – Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information.

For troubleshooting purposes, if you want to see the autogenerated INSERT, UPDATE, and DELETE T-SQL statements, use GetInsertCommand(), GetUpdateCommand() and GetDeleteCommand().
lblInsert.Text = builder.GetInsertCommand().CommandText;
lblUpdate.Text = builder.GetUpdateCommand().CommandText;
lblDelete.Text = builder.GetDeleteCommand().CommandText;

    .Net .net sqldatareader multiple result sets Access Added ado net sql transaction example ado.net ado.net cache dataset ado.net transaction c# ado.net transaction example ado.net tutorial Advantages asp net dataset delete row asp net dataset update to database asp.net asp.net bind dataset multiple tables asp.net c# data access tutorial asp.net c# database connection asp.net c# database connection with sql server asp.net c# sqlbulkcopy asp.net connect to sql server database asp.net connect to sql server tutorial asp.net database application asp.net datareader multiple results asp.net dataset insert row asp.net dataset multiple tables asp.net dataset update row asp.net fill dataset with multiple tables asp.net gridview dataset multiple tables asp.net sql connection example c# asp.net sqlbulkcopy datatable asp.net transaction example asp.net web application database benefits bulk copy class c# C# c# .net data access tutorial c# bank transaction c# bulkcopy datatable c# data access tutorial c# data provider c# database transaction rollback c# datagridview dataset multiple tables c# datareader multiple tables c# dataset 2 tables c# dataset insert into database c# dataset insert update delete c# dataset multiple tables stored procedure c# dataset two tables c# dataset without database c# datatable rowstate deleted c# disconnected dataset c# load data from database c# sql transaction try catch c# sqlbulkcopy batch c# sqlbulkcopy class c# sqlbulkcopy database c# sqlbulkcopy datatable example c# sqlbulkcopy example c# sqlbulkcopy xml data c# sqlcommandbuilder update c# sqlconnection example c# sqlconnection sqlcommand c# sqldatareader example c# sqldatareader sample code c# transaction best practices c# transaction commit rollback c# transaction exception c# transaction rollback exception caching dataset calling can we store multiple tables in datareader class command commandbuilder update command c# configuration file connection connection string connection string sql authentication connectionstring windows authentication c# ConnectionStrings Data data access in dot net data access techniques in c# DataAdapter database datareader c# multiple result sets DataRowVersion dataset dataset crud example dataset disconnected architecture Deleted Detached difference between typed and untyped dataset difference between typed and untyped dataset in asp.net differences disconnected disconnected data access disconnected database in c# dot net dot net data provider dotnet example ExecuteNonQuery ExecuteReader ExecuteScalar executing gridview using dataset in asp.net gridview with dataset c# haschanges injection insert data using sqlbulkcopy in c# insert xml data into sql table using c# interview introduction to data access in .net load xml data into sql server methods Modified moving data from one table to another in sql multiple tables in datareader c# NextResult() method not working Object output parameters parameterized queries prevention primary key questions rejectchanges retrieve connection string from app.config c# retrieving multiple result sets using nextresult c# row RowState sql sql connection SQL Injection sql injection attack mechanisms and prevention techniques sql injection demo sql injection detection and prevention techniques sql injection for dummies sql injection forms sql injection get request sql injection hacking basics tutorial sql injection how to sql injection in search box sql injection in search field sql injection in search query sql injection lessons sql injection on website sql injection post request sql injection prevention asp.net sql injection prevention best practices sql injection prevention cheat sheet sql injection prevention in asp.net sql injection prevention methods sql injection prevention system sql injection prevention techniques sql injection prevention tutorial sql injection queries sql injection real life example sql injection real world example sql injection simple explanation sqlbulkcopy c# sqlbulkcopy example sqlbulkcopy table to table SqlCommand SqlCommandBuilder sqlcommandbuilder update c# sqlcommandbuilder update command c# sqlconnection sqldataadapter sqldataadapter c# example select SqlDataReader sqldatareader example sqldatareader loop through columns sqldatareader loop through fields sqldatareader loop through rows sqldatareader multiple tables sqldatareader read all columns sqldatareader read all rows sqldatareader read column value sqldatareader read example sqldatareader read to end sqldatareader read while states stored procedure stored procedures Strongly transaction in ado.net c# with example transaction in ado.net using c# transaction in asp.net transaction in asp.net c# transactions in ado.net tutorial two or more result sets typed typed versus untyped datasets typed vs untyped dataset Unchanged untyped Update use of using keyword in c# versions Weakly web application Web.Config what is data provider in c# windows application app config connection string