Forms Data Controls :: Cannot Insert Explicit Value For Identity Column In Table 'UserDetails'
Mar 3, 2011
I have error:
Cannot insert explicit value for identity column in table 'UserDetails' when IDENTITY_INSERT is set to OFF.
I'm trying to insert a record through a BLL (Business Logic Layer) class with an 'Insert' button attached to the FooterTemplate of a GridView2. My code:
[Code]....
[Code]....
BLL layer code:
[Code]....
The field 'idUser' is autoincremented. When I use SqlDataSource with a DetailsView, add option it adds a record and autoincrements the 'isUser'.
I am working on a web app for an online photo album. It is the last project in Scott Mitchell's book: "ASP.Net 2.0 in 24 hours".
I am creating a page where users can enter new photo images. The functionality for uploading an image will come later. I am working on just inserting a new row into the Pictures table with an optional category, a required title and a required description.
I am getting an error when I try to insert a new row.
Here is a screenshot of the page with a shot of the dropdown list.
The Categories are user-specific. I am getting the correct values retrieved.
[URL]
There are two pretty simple database tables involved here.
NOTE: The CategoryID and PIctureID are both autoincrement integer columns.
[URL]
The page uses a DetailsView that uses a SqlDataSource that uses the Pictures table. (The DetailsView's Default Mode property is set to "Insert". The "Enable Inserting" checkbox is also checked.)
The dropdown list uses a dropdown control that uses a SqlDataSource that uses the Categories table.
When the "Insert" button is clicked the CategoryID value associated with selected (Category) Name on the dropdown list will be used along with the Title and Description values to insert a row in to the Pictures table. (If no Category value is selected, then a null value will be used for the CategoryID. This is OK because the CategoryID column in the Pictures table allows nulls.)
My problem is that I am getting this error:
Cannot insert explicit value for identity column in table 'Pictures' when IDENTITY_INSERT is set to OFF.
(FYI: I have the full version of both Visual Studio and SQL Server.)
Following the MVC1 vers of Nerddinner, but using 2010 and MVC2. Never seen this error. Looked in controller, model, view. Where does MVC pass the identity value, and how to stop it? I have never had to set IDENTITY_INSERT in any app before.
I have an insert table with identity specification set. And I getthis error. I'm using a stored procedure to store it. How do I correct it. I'm also using a details view on my insert page.
Exception Details: System.Data.SqlClient.SqlException: Cannot insert explicit value for identity column in table 'Insert' when IDENTITY_INSERT is set to OFF.
I am inserting data into Employee table using stored procedure.In employee table EmpNo is identity column.Once i insert data into table stored procedure should EmpNo i.e identitycolumn value.
correct my stored procedure to returm EMpNo Identity column after inserting row.
alter procedure SAR_Sp_AddEmployee(@EmpName varchar(10),@CampaignID int,@startDate datetime) as insert into EmpMaster values(@EmpName,@CampaignID,@startDate)
This would seem to be quite a trivial task, however I am having trouble retrieving the identity of the record inserted using the detailsview.insert() in the code behind. It would seem that detailsview.DataKey.Value would contain this value, but it is null after the insert is performed.
I have made a AutoNumber Identity Column and iset Identity Specification property to "Yes" to keep the Identity Increment and Identity Seed values as default ones.
But when i use a datagriview and use a table adapter the column donīt appear on the datagridview.
I have a database table and the column that has identity specification set to true is not displaying in numerical order. Whether I use Server Explorer and use Show Table Data or I create an application to view the contents of the table using a DataGridView I see that column displayed with the numbers often though not always in a non-numerical order.
Does it perhaps have to do with the way the rows for that column were added or would it be something else. I was looking at the properties for that column but don't see what I would change to make the rows display in numeric order.
I am developing a asp.net application and i am using SQL Server 2008. I took a IDENTITY column as Record_ID for detail table where i will have trillions of records per year. So just want to ask whats the largest number record id (identity) column can hold and in ASP.NET which data type i should use to handle record id as i am using this id as a reference to update the table data. I don't want to end up being trapped some day.
I am trying to use a DetailsView to enter a new row into my database, but need to enter a further row in a linked table at the same time.
I am able to use the "iteminserted" event to gain control after the event has completed, but I need the key to the row i just inserted into the main table.
I am using a dataset, so the insert is managed by a tableadapter which has been configured to return an integer with the newly created identity of the row i just inserted.
Does anyone know how I can get access to that identity? is it in the "e" object of iteminserted? how do i find that if it is?
Here is the VB CodeBehind I am using to insert the row in the linked table (the DetailsView has just inserted a row into the "Books" table and the database has just assigned it an identity which should have been returned to somewhere by the tableadapter. I need that identity as a key to the "BookAuthors" table):
[Code]....
This is the ASP code for the DetailsView and the DataSource:
[Code]....
And here is the code for the tableadapter i am using
I want to copy data from a table[tblExcel][No.of columns:2] to another table[ev_event] which has 5 columns, 2 columns from the another table, 3 columns from user defined value
Basically i deal with two tables.i have a table T1 of the following format:id company_name i need to read this data and create a table T2 as followsi wrote the following code. it worked fine for retrieving data and modification but fails to insert the modified data into the 2nd table.the error is, it does not recognise the value for @token
ArrayList dynarr=new ArrayList(); // global variable protected void Button2_Click(object sender, EventArgs e) { int row = 1; int i; string strcmd = null; string Connection = "Data Source=...."; SqlConnection conn = new SqlConnection(Connection); string str = "select company_name from T1 where ID=@ID"; [code]...
I am in the process of creating my database and I have the pending question of whether I should add a UserID using INT to the membership table. I am not replacing the UserID that is a UniqueIdentifier I am just adding a UserID with INT.
The reason I want to do this is because I have about twelve other tables that uses the UserID column. It will be easy for users to insert data into the other tables and I foresee the tables getting to be millions of rows, by using an UserID INT it will avoid the mass amount of storage from the UniqueIdentifier column.
Now my question is what are my repurcussions of doing this? I've already found out one, and I believe it is my biggest question, if I were to create an insert command in .net how would I grab the UserID INT rather then the UserID UniqueIdentifier to insert it into my tables? For example, I can get the userid this way:
I have this error when trying to insert a new record through a 'New' button in asp:DetailsView control. Error details:Message: Sys.WebForms.PageRequestManagerServerErrorException: Cannot insert the value NULL into column 'idUser', table 'C:INETPUBWWWROOTVIEWS1APP_DATADBSEARCHRESULTS.MDF.dbo.UserDetails'; column does not allow nulls. INSERT fails.I have an typed dataset xsd & adapter, where i automatically generate delete, update, insert commands. I also use SqlDataSource.The field idUser doesn't allow nulls on database level, and in the xsd I marked the following properties:AllowDBNull = false, AutoIncrement = true, AutoIncrementSeed = 0, AutoIncrementStep = 1, ReadOnly = true, Unique = trueMy code is:
[Code]....
How to solve the problem or where I should look for the problem?p.s. If i have in DetailsView, idUser field properties set: InsertVisible="True", ReadOnly="False" and i enter a value manually, the records successfully inserts.
I have been searching on here for many hours and read many posts but for some reason I am being slow and cannot figure this out. I am writing a record and need to get the identity field back. I have tried many combinations based on what I have read but the below code is where I am sitting at now. it has appdatasource.ExecuteScalar() underlined and the error says 'ExecuteScalar' is not a member of 'System.Web.UI.WebControls.SQLDataSource'. I would be very grateful if someone could point out what I am missing to get this to work.
Protected Sub SubmitApp_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles SubmitApp.Click
Dim appdatasource As New SqlDataSource appdatasource.ConnectionString = ConfigurationManager.ConnectionStrings("ConnectionString1").ToString appdatasource.InsertCommandType = SqlDataSourceCommandType.Text appdatasource.InsertCommand = "INSERT INTO APPLICATION (FirstName,MiddleName,LastName,AcceptTerms,IPv4Address,DateInserted) VALUES (@FirstName,@MiddleName,@LastName,@IPv4Address,@DateInserted);select @@SCOPE_IDENTITY" appdatasource.InsertParameters.Add("FirstName", fname.Text) appdatasource.InsertParameters.Add("MiddleName", minit.Text) appdatasource.InsertParameters.Add("LastName", lname.Text) appdatasource.InsertParameters.Add("DateInserted", DateTime.Now()) appdatasource.InsertParameters.Add("IPv4Address", Request.UserHostAddress.ToString) Dim appid As Integer = appdatasource.ExecuteScalar() End Sub
I am using two tables if one table is master table that is list of products and their Id's.I bind all list of products in dropdownlist.If i select Product means i want to insert their Id in table's.How to done this in easy form.Any one can send easiest form of inserting.
I have a DetailsView for inserting values and currently the columns are center aligned. What I want is to have my "label" right aligned and my "text box/dropdown box" left aligned.
Something like:
Name: _______________
Address: __________________________
Phone: __________
Insert Cancel
If I change the alignment to left for both, the Insert and Cancel buttons on the bottom of the control also shift to the left, and I'd like them to stay centered.
I am attempting to bind data from a dropdown list that was populated from another datasourceID. I've bolded what I believe is relevant to this issue in the code below. But basicly its binding the proper county on the pull down menu but when I hit form submit it dosnt postback that info instead its null.
how can i insert a file upload template column and link it to each row because each row has a unique idi have item code column and i am listing the grid upon the item code columnso for every item code row i need to use file upload to upload it s excel sheet