FK errors on import
Last Post 03-31-2010 11:12 AM by Angus Beare. 2 Replies.
AddThis - Bookmarking and Sharing Button
Author Messages
Angus BeareUser is Offline
going with the flow
going with the flow
Posts:42
Avatar

--
03-31-2010 05:48 AM

    I'm having a real nightmare with my import now and will miss the deadline due to these issues:

    1> job was not appearing in the schedule - fixed now after running in some SQL posted on this forum.

    2> the emails are not sent despite a message saying: email has been posted.

    2> I get this error if I delete the users and then run the import again.  I have found that DNN is leaving the user names in the system after I try to delete them in admin-users!!   Apparently this is something to do with 'soft' deletes being introcuded. Anyone know anything about this?  I've tried deleting the users from the table in SQL but i still get the error below:

    **** Error attempting to add record:1 The INSERT statement conflicted with the FOREIGN KEY constraint "FK_UserProfile_Users". The conflict occurred in database "Eurometaux", table "dbo.Users", column 'UserID'. The statement has been terminated. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.SqlInternalConnection.OnError(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.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(SqlConnection connection, CommandType commandType, String commandText, SqlParameter[] commandParameters) at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, SqlParameter[] commandParameters) at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, String spName, Object[] parameterValues) at DotNetNuke.Security.Membership.Data.SqlDataProvider.UpdateProfileProperty(Int32 ProfileId, Int32 UserId, Int32 PropertyDefinitionID, String PropertyValue, Int32 Visibility, DateTime LastUpdatedDate) at DotNetNuke.Security.Profile.DNNProfileProvider.UpdateUserProfile(UserInfo user) at DotNetNuke.Entities.Profile.ProfileController.UpdateUserProfile(UserInfo objUser) at DotNetNuke.Security.Membership.AspNetMembershipProvider.UpdateUser(UserInfo user) at DotNetNuke.Entities.Users.UserController.UpdateUser(Int32 portalId, UserInfo objUser) at DataSprings.DNN.Modules.UserImport.UserImportProcess.DoUserImport()

    I've posted this to Candace and am hoping for some help.

    thanks

    Gus

     

    David ToUser is Offline
    river guide
    river guide
    Posts:2719
    Avatar

    --
    03-31-2010 08:04 AM
    HI, can you tell us what version of IUI and DNN you are using? Also, you cannot delete the users by just going to Admin / User Accounts because it's a soft delete and the username will still be there and cannot be duplicated on a new user. However, during the IUI import you can choose the option to overwrite based on username field and it will update that user as opposed to trying to create a new one.

    But if you want to use SQL to actually delete a user permanently from the SQL tables, here's the SQL code. MAKE SURE TO SUPPLY THE CORRECT USERID.

    =======================
    -- WAIT WAIT WAIT WAIT - remember to put in the right userid

    declare


    @rUser table (UserId int)

    insert

    into @rUser (UserId) values (enter userid here)


    -- clear login info

    DELETE

    (

    from aspnet_Membership where UserId in SELECT au.UserId from aspnet_Users au join users u on au.username = u.username where u.userid in (select * from @rUser) )
    DELETE

    (

    from aspnet_Users where UserId in SELECT au.UserId from aspnet_Users au join users u on au.username = u.username where u.userid in (select * from @rUser) )
    -- clear profile properties

    DELETE

    (

    FROM UserProfile where UserID in SELECT UserId from users where userid in (select * from @rUser) )


    -- clear portal relationships with users

    DELETE

    (

    FROM UserPortals where UserID in SELECT UserId from users where userid in (select * from @rUser) )


    -- clear role relationships with users

    DELETE

    (

    FROM UserRoles where UserID in SELECT UserId from users where userid in (select * from @rUser) )


    ------------------------------

    -- CLEAR OUT CLIENT SPECIFIC INFO

    ------------------------------



    ------------------------------

    -- END CLEAR OUT CLIENT SPECIFIC INFO

    ------------------------------



    -- finally remove core user profile info

    DELETE

    FROM users where userid in (select * from @rUser)


    -- David
    Angus BeareUser is Offline
    going with the flow
    going with the flow
    Posts:42
    Avatar

    --
    03-31-2010 11:12 AM
    thanks David

    yes, I worked it out in the end.

    I feel it's terrible that DNN has done this. I had no idea that a deleted user was not even deleted!
    I found a load of scripts and used them to purge the users and got there in the end.

    But I gave up with the email function as I just couldn't get this to work.

    Now I have another problem. Installed opt-in email which has crashed my server.. better get over to the forums for that!

    Gus


    ---
  • film izle
  • 720 izle
  • film
  • sinema izle
  • film makinesi
  • T�rk�e dublaj film
  • film izle
  • film izle
  • baglan film izle
  • sinema izle
  • 1080 film izle
  • film mercegi