Knowlege base

Error at the updating database phase during the Imagicle UC suite upgrade

Article ID: 863
Last updated: 09 Dec, 2022

Applies to

Summer 2021 and later

Description

If coming from a very old Imagicle suite installation, even if kept up to date, it may occur that upgrading to the 2021.6.1 release, the operation fails at the database updating phase.

Logs contained in BillyBlues.Core.Wizard folder show the following error: 

Exception Type {System.Data.SqlClient.SqlException}
Message {Column 'dbo.Siti.sNome' is not the same data type as referencing column 'Users.user_SiteName' in foreign key 'FK_Users_Siti'.
Could not create constraint or index. See previous errors.}
StackTrace {
  in Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction action, Object execObject, DataSet fillDataSet, Boolean catchException)
  in Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType, Boolean retry)}
}

Cause

The “sNome” column type of table “Siti” is VARCHAR(50) instead of NVARCHAR(50)

With 2021.Summer.1 has been introduced into DB schema an FK that references the “sNome” Column on “Siti” table that could trigger the issue.

Solution

Manually change the type of the column “sNome” to NVARCHAR(50) by executing below query on the database with the SQL Management Studio (to be done on both nodes in case of cluster):


ALTER TABLE Siti ALTER COLUMN sNome NVARCHAR(50) NULL

If an error occurs

Follow this guide

  1. remove the FK_Users_Siti foreign key from Users table
    ALTER TABLE [dbo].[Users] DROP CONSTRAINT [FK_Users_Siti]

  2. remove the UQ_Siti_sName index from Siti table
    ALTER TABLE [dbo].[Siti] DROP CONSTRAINT [UQ_Siti_sNome]

  3. change the type of the column sNome
    ALTER TABLE Siti ALTER COLUMN sNome NVARCHAR(50) NULL

  4. add again the UQ_Siti_sName index to Siti table
    ALTER TABLE Siti ADD CONSTRAINT UQ_Siti_sNome UNIQUE (sNome)

  5. change the type of the column user_SiteName
    ALTER TABLE [dbo].[Users] ALTER COLUMN user_SiteName NVARCHAR(50) NULL

  6. add again the FK_Users_Siti foreign key to Userstable
    ALTER TABLE [dbo].[Users] WITH CHECK ADD CONSTRAINT [FK_Users_Siti] FOREIGN KEY([user_SiteName])REFERENCES [dbo].[Siti] ([sNome])ON UPDATE CASCADE

  7. re-run the IAS installer

Article ID: 863
Last updated: 09 Dec, 2022
Revision: 8
Views: 223
Print Export to PDF Subscribe Share
This article was:  
Prev   Next
How to Apply Transparent Data Encryption (TDE) in SQL Server     Prevent IIS Log files from using too much disk space on Windows...