2017-01-27 8 views
0

役割マネージャーで、役割にユーザーを追加しています。 sitecore\Sitecore Local Administrator。それに(メニュー; Member-は>追加)ユーザーを追加するとき、私はエラーを取得する:Sitecore Role Manager、役割にユーザーを追加するエラー:「照合の競合を解決できません」

Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation. 

スタックトレース:

[SqlException (0x80131904): Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation. 
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation. 
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation. 
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation. 
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation.] 
    System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +2442126 
    System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +5736904 
    System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +628 
    System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +3731 
    System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() +58 
    System.Data.SqlClient.SqlDataReader.get_MetaData() +89 
    System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +379 
    System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds, Boolean describeParameterEncryptionRequest) +2026 
    System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite) +375 
    System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) +53 
    System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) +240 
    System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior) +81 
    System.Web.Security.SqlRoleProvider.AddUsersToRolesCore(SqlConnection conn, String usernames, String roleNames) +384 
    System.Web.Security.SqlRoleProvider.AddUsersToRoles(String[] usernames, String[] roleNames) +724 
    Sitecore.Security.SwitchingRoleProvider.AddUsersToRoles(String[] userNames, String[] roleNames) +164 
    Sitecore.Security.<>c__DisplayClass1.<AddUsersToRoles>b__0() +32 
    Sitecore.Data.DataProviders.NullRetryer.ExecuteNoResult(Action action, Action recover) +161 
    Sitecore.Data.DataProviders.NullRetryer.ExecuteNoResult(Action action) +15 
    Sitecore.Security.SitecoreRoleProvider.AddUsersToRoles(String[] userNames, String[] roleNames) +91 
    System.Web.Security.Roles.AddUsersToRole(String[] usernames, String roleName) +140 
    Sitecore.Shell.Framework.Commands.RoleManager.AddMember.AddAccounts(ListString roles, ListString users, String roleName) +174 
    Sitecore.Shell.Framework.Commands.RoleManager.AddMember.Run(ClientPipelineArgs args) +505 

[TargetInvocationException: Exception has been thrown by the target of an invocation.] 
    System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) +0 
    System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) +92 
    System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +101 
    Sitecore.Reflection.ReflectionUtil.InvokeMethod(MethodInfo method, Object[] parameters, Object obj) +58 
    Sitecore.Pipelines.Processor.Invoke(PipelineArgs args) +243 
    Sitecore.Nexus.Pipelines.NexusPipelineApi.Resume(PipelineArgs args, Pipeline pipeline) +252 
    Sitecore.Pipelines.Pipeline.Resume() +38 
    Sitecore.Web.UI.WebControls.ContinuationManager.ResumePipeline(HttpContext httpContext) +461 
    Sitecore.Web.UI.WebControls.ContinuationManager.OnPreRender(EventArgs e) +299 
    System.Web.UI.Control.PreRenderRecursiveInternal() +88 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4775 

答えて

1

を移動するとき、私はサイトコアデータベースのデフォルトの照合レベルは「順序SQL_Latin1_General_CP1_CI_AS」であるこのに走りました。私はあなたがどこで "Latin1_General_CI_AS"を得たのか分かりません。

SELECT * FROM [model].[sys].[all_columns] 
WHERE collation_name = 'Latin1_General_CI_AS' 

「Latin1_General_CI_AS」の照合順序ですべての列を取得することができます。限り :議論からのコメントで

ALTER TABLE dbo.aspnet_XXX ALTER COLUMN YYY 
varchar(ZZZ) COLLATE SQL_Latin1_General_CP1_CI_AS 

を追加しました:あなたが列を知っているとき

(それはからのものでなければならない「ASPNET _ ****」テーブル)を競合が発生し、列の照合順序を変更することができますaspnet_UsersInRoles_AddUsersToRolesストアドプロシージャにエラーがスローされることを理解しています。コアデータベースから "aspnet _ ****"という名前のテーブルと一時テーブルだけがあります。問題が既存の列にない場合は、この場所で一時表が作成されるため、デフォルトのデータベース照合をチェックすることが理にかなっています。したがって、Sitecore_Coreデータベースのプロパティを確認し、その照合を確認してください。

+0

あなたは 'SELECT * FROM [model]。[sys] .all_columns'は 'SELECT * FROM sys.columns'であるとは思わないのですか? 'all_columns'を使用する理由 – Kamran

+0

はい、" columns "、" all_columns "には" columns "とシステム列を使用できます。しかし、アイデアは同じです - 矛盾の原因となる照合順序が異なる列を探します。 – Anton

+0

まあ、私は 'Latin1_General_CI_AS'照合を持つデータベース' Sitecore_Analytics'のテーブルをチェックしました。 'Sitecore_Core'の全ての列には' SQL_Latin1_General_CP1_CI_AS'の照合があります。それでもこれがエラーの原因になりますか? – Kamran

0

あなたは最近、8.2にアップグレードしましたか?

同じサイトコアップデートのDBを使用していることを確認してください。

8.2アップデートに8.2初期から2

0

私は 'Anton'のコメントから助けを得ました。問題は、一部の表の列の照合ではなく、データベースそのものです。何とかデータベースの照合順序が変更されました。私はSQL_Latin1_General_CP1_CI_ASSitecore_core DBの照合順序を設定し、問題を修正しました。

関連する問題