Solved

Identity field doesn't increment using .NET application (in development)

Posted on 2007-04-07
4
191 Views
Last Modified: 2010-03-19
Hello.

This one kills me!

I am building a .NET application that for managing a database (SQL Server Express 2005).
In my database I have several tables, two of which (for the sake of presenting the problem) are "Patients" and "Therapists".
Both tables are built similarly; There is a PatientSID (PK, int, not null) and a TherapistSID (PK, int, not null); Both are defined as Identity, with an Identity seed of 1, and an Identity Increment of 1.

In my application, I have two forms: (you guessed right...) "Patients" and "Therapists".
On the forms I'm using auto-generated Navigation Bars (made by dragging the accordant table from the Data Source Explorer window to its form), for retrieving, adding, editing and deleting data in my database.
The two forms, like the two tables in the database, were built the same (more then once, I must say...)!!

Now, the problem:
When trying to add a record to the "Patients" form (by using the "Add" and "Save" buttons on the Navigation Bar), the record is being added to the "Patients" table just fine.
For some reason, when trying to add a record to the "Therapists" table, using the "Therapists" form (again by using the "Add" and "Save" buttons on the Navigation Bar), the record is not being added, because the "TherapistSID" is not incrementing, and I get an error message, saying that the "TherapistSID" doesn't allow NULLs.

The code running (and failing...) for the action of saving the new added record is:

Private Sub TherapistsBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles        TherapistsBindingNavigatorSaveItem.Click

        Me.Validate()
        Me.TherapistsBindingSource.EndEdit()                                                              ' This is where it fails!
        Me.TherapistsTableAdapter.Update(Me.HW1DataSet.Therapists)

End Sub

For the "Patients", the code is identical.

BTW, When adding a record directly into the table, in the SQL Server environment, it works just fine!
What's going on??

Please help.
Lior.
0
Comment
Question by:liorim2
  • 2
  • 2
4 Comments
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
Comment Utility
all you posted looks fine. however, there must be a small configuration problem, so that the controls do not "know" about the PK field to be of type identity
for example, just make sure you look at the right database...
0
 

Author Comment

by:liorim2
Comment Utility
what "controls" do not "know" about the PK field to be.........?
do you mean, controls in my application?
let me remind what i wrote in my first post: "BTW, When adding a record directly into the table, in the SQL Server environment, it works just fine!".

Lior.
0
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 500 total points
Comment Utility
I speak about the navigator bar?
0
 

Author Comment

by:liorim2
Comment Utility
Bugs, Bugs, Bugs...
Well, the problem was with the RecordSet. After killing it and rebuilding it, the problem is gone.
Thanks anyway, AngelIII, for trying.
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now