Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 503
  • Last Modified:

Cannot edit tables in MS SQL Server 2005 database

Problem: I have created three database tables that will not let me edit them.

Details:
Here's what I did:

1. In MS Access 2003, I created a database with three tables:

tbl_BusinessSupporters
tbl_BusinessSupportersCategories
tbl_Biz_Support_Has_Cat

The three tables are related, as shown in the diagram below.

2. Next, I used the "Microsoft SQL Server Migration Assistant for Access" to export the database from MS Access 2003 (on my local computer) to MS SQL Server 2005 (on my database server). That went well.

3. The "Microsoft SQL Server Migration Assistant for Access" application prompted me to "Link" the MS Access tables to the tables in MS SQL Server 2005. This means that when I update the tables in MS Access on my local computer, then the tables in MS SQL Server get updated too -- because the tables displayed in the local MS Access application are, in fact, the actual tables on the MS SQL Server. (This is my understanding, anyway. Correct me if I am mistaken?)

The problem is, I cannot edit any of the three tables in either the local MS Access application, or in the MS SQL Server.

* I cannot add any more records to table "tbl_Biz_Support_Has_Cat" -- in MS Access the AutoNumber is deactivated.

* Or, in MS Access, if I go into tbl_BusinessSupporters and attempt to delete a record, I get this error: "ODBC Call Failed. The DELETE statement conflicted with the Reference Constraint. The conflict occurred in database ascassociation, table dbo.tbl_Biz_Support_Has_Cat, column BusinessID. The statement has been terminated. (#3621)"

I would like to be able to edit these database tables in MS Access on my local computer, save the edits, and (since the tables are linked to the MS SQL Server) have the edits appear in the MS SQL Server (hence on the live web site).

What am I doing wrong?

Thank you for any advice!

Eric

The SELECT statement that I use in my ColdFusion application:
 
SELECT *
FROM tbl_BusinessSupporters bs, tbl_BusinessSupportersCategories bsc, tbl_Biz_Support_Has_Cat bshc
WHERE bs.BusinessID = bshc.BusinessID
AND bsc.BusinessCategoryID = bshc.BusinessCategoryID
AND bsc.BusinessCategoryID = 2
ORDER BY BusinessTitle ASC

Open in new window

three-tables.gif
0
Eric Bourland
Asked:
Eric Bourland
  • 3
  • 2
  • 2
2 Solutions
 
arnoldCommented:
I suspect the fact that the SQL table relies on the linked Access DB, neither can be altered. There is no mechanism that will be able to interpret your addition of a column or deletion of one in terms of the link on the SQL server.
One option is unlink the database on SQL 2005.  Make the changes and relink.
The other option import the Access DB into the SQL as an object rather than as a linked object.  Then when you need to alter the database, you can do it through SSMS on the SQL server.
0
 
Eric BourlandAuthor Commented:
arnold, thank you for the response. I was thinking along those same lines -- I cannot alter the database b/c the MS SQL table is linked to my MS Access application.

But, if that is the case, then what is the purpose of linking? It seems like the only purpose of linking tables is to make them uneditable -- which I will guess is not intended to be the case.

I'm continuing to investigate. I'll get back to you soon.

Eric
0
 
arnoldCommented:
SQL is a client/server platform.  Access DB is not by default.  The access developer needs to build the client/server functionality into the access front end.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
milduraitCommented:
The updates are failing because tbl_BusinessSupportersCategories and tbl_Biz_Support_Has_Cat do not have Identity columns.
Try the columns in SQL Server (Data Type Int, Identity Yes) and then relink the tables to access.


0
 
milduraitCommented:
..Try adding the columns in SQL Server...
0
 
Eric BourlandAuthor Commented:
mildurait, thank for your note. I made this observation too: tbl_BusinessSupportersCategories and tbl_Biz_Support_Has_Cat do not have Identity columns. But I tried to add identity columns in SSMS ... I was not allowed to do so.

I think I need to unlink the tables, then try to add identity columns. I will try this and get back to you tomorrow. Thanks for your help.

Eric
0
 
Eric BourlandAuthor Commented:
Thanks for your help. Here is how I fixed it: In MS Access I unlinked the tables. I also removed all of the relationships between the tables (again, in MS Access). Then I added the relationships again -- but did not enforce referential integrity. Also, I deleted the tables from the MS SQL Server, and ran the "Microsoft SQL Server Migration Assistant for Access" application again. At first I did not link the tables, to see if I could edit the tables in MS SQL Server. I could. Then I linked the tables -- and now I can still edit them. Yahoo.

Thanks again, friends. Enjoy the rest of the weeked.

Eric
0

Featured Post

Veeam Disaster Recovery in Microsoft Azure

Veeam PN for Microsoft Azure is a FREE solution designed to simplify and automate the setup of a DR site in Microsoft Azure using lightweight software-defined networking. It reduces the complexity of VPN deployments and is designed for businesses of ALL sizes.

  • 3
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now