Recordset update

I have form level recordset variable. And I am using an SQL statement in a routine and using Set Testset = test_Db.OpenRecordset(Sql, dbOpenDynaset, 0, 1). But the problem is when I tried to update my 'Testset' recordset it is not updating. I am using
        Bldset.Edit
           Bldset!BLDGCODE = txtBuilding.Text
           Bldset!BLDGNAME = txtName.Text
        Bldset.Update

It is not updating and is not showing any errory message also. And I am sure I am opening my database as read/write mode
svenkatapuramAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
DennisHConnect With a Mentor Commented:
One of the most common reasons that you can't insert or update a record in a SQL Server table is if the table does not have a Primary Key.  Does this table have a Primary Key?
0
 
DaveD072798Commented:
If the code you've given is correct, you need to replace all occurances of "Bldset" with "Testset", as in

Testset.Edit
   Testset!BLDGCODE=txtBuilding.Text
   Testset!BLDGNAME=txtName.Text
Testset.Update

Also, you could use a With...End With to avoid typing Testset over and over. Just use the period "." and exclamation point "!" inside the With...End With pair.
0
 
svenkatapuramAuthor Commented:
Dave,

It was a typo in my question, it was Bldset. Some how my recordset is setting to read only. I do not know why? Any solution
0
What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

 
kilobugsCommented:
Are you sure there isnt any error message??? If there isnt any error message, then the process should be ok! Was you app connecting to a .mdb before???
0
 
svenkatapuramAuthor Commented:
Originally my app was using a .mdb file and later I changed to SQL server. For some tables it is updating (when I use recordset.edit) but for some it is not. But when I use direct SQL commands like update it is working. So any way I started changing my code
to SQL commands instead of recordset.

Thanks
0
 
svenkatapuramAuthor Commented:
I do have primary key for my tables
0
 
kilobugsCommented:
Then I know what is your problem!!!
0
 
kilobugsCommented:
please check some of your paths are incorrect! When you use SQL statement, pls check to see if you path to the SQL Server is correct. If you dont even have a path to the SQL Server for edit or update, or I should say when you want to send SQL statement for execution in the SQL Server, you should have a proper connection established before you execute any SQL. I think you still have some of the connections pointed to the .mdb instead of SQL Server since you have used the .mdb before. Double check the .mdb to see if updating has been done!!! I used to overlook things like those, too!
0
 
svenkatapuramAuthor Commented:
I do have porper connection to the SQL server. I thing I figured out the problem. Because I am setting the recordset(testset) in one routine, then I am passing the same SQL statement to another routine where I am using the following to populate the grid
FillGrid(f As Form, Ssql As String)
Data1.Connect = "odbc;uid=sa;pwd=;dsn=NAME"
Data1.RecordSource = Ssql$

Then I am resetting the data1.recordset to the first recordset(testset). Becuase of this it is not working. I do not have to reset again. I can use the original recordset itself for the Grid also. Any way thank you for your suggestion
0
 
svenkatapuramAuthor Commented:
I already added comment to your reply

Thanks
0
 
haavaldCommented:
.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.