Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Upgrading DNN P...Upgrading DNN P...Upgrade from 4.9.5 - missing primary keyUpgrade from 4.9.5 - missing primary key
Previous
 
Next
New Post
4/30/2012 10:49 AM
 

Hi All,

I hope someone might have seen this issue or something similar before. I am currently trying to update a site from DNN version 4.9.5 eventually to 6.1.5, but while trying to update the database to version 5.0.0 I get a number of errors similar to this one -

System.Data.SqlClient.SqlException: There are no primary or candidate keys in the referenced table 'dbo.CTN_PortalDesktopModules' that match the referencing column list in the foreign key 'FK_CTN_DesktopModulePermission_CTN_PortalDesktopModules'.
Could not create constraint. See previous errors.
   at System.Data.SqlClient.SqlConnection. (SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
   at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)

On further investigation it appears that a large number of the tables in the database do not have a Primary Key defined in the table. While this is almost certainly the cause of the problem, I am just wondering if has anyone seen this kind of error before while upgrade from 4.9.5? If anyone has, how did you go about solving it?

Thanks,

Chris

 
New Post
4/30/2012 2:16 PM
 
there seem to be orphaned permissions in Table CTN_DesktopModulePermission, which do not have a corresponding item in CTN_PortalDesktopModules'.
try running the following script from host > SQL:
DELETE FROM CTN_DesktopModulePermission WHERE DesktopModuleId Is Not in (SELECT DesktopModuleId FROM CTN_PortalDesktopModules.

Cheers from Germany,
Sebastian Leupold

dnnWerk - The DotNetNuke Experts   German Spoken DotNetNuke User Group

Speed up your DNN Websites with TurboDNN
 
New Post
5/1/2012 7:44 AM
 

Hi Sebastian,

Thanks for your response. I ran the (slightly modified) sql you suggested but unfortunately it has not resolved my problem as some of the errors are not related to these two tables.

I think the problem may be slightly clearer if I post the whole SQL error log - DB Upgrade Error Log

If I manually add a primary key to the table before the update then the table creation errors seem to be resolved, but I still get the errors when trying to drop the constraints.

Any ideas would be appreciated.

Thanks,

Chris

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Upgrading DNN P...Upgrading DNN P...Upgrade from 4.9.5 - missing primary keyUpgrade from 4.9.5 - missing primary key


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out