0

ユーザーをいくつかの役割に追加しようとしていますが、「ユーザーは既に役割に含まれています。」というメッセージが表示されます。ユーザーは実際にはどの役割にも属していません。

SELECT COUNT(*) FROM my_aspnet_usersinroles uir 
JOIN my_aspnet_users u ON uir.userId=u.id
JOIN my_aspnet_roles r ON uir.roleId=r.id
WHERE u.applicationId=1 AND 
u.name LIKE 'user_name' AND r.name LIKE 'rolename'

問題は、別のユーザー (user.name) とこのユーザーが既にそのロールにいることですが、(_) のようなパターンが原因でこの結果が得られていることです。私はMySqlメンバーシッププロバイダーを使用していることに注意してください。何かアイデアはありますか?

ありがとう

4

2 に答える 2

1

[] または ESCAPE 句を使用してアンダースコア文字をエスケープできるはずです (場合によってはより適切です)。

http://web.archive.org/web/20150519072547/http://sqlserver2000.databases.aspfaq.com:80/how-do-i-search-for-special-characters-eg-in-sql-server. html

SQL2000の参照を許してください...

于 2012-04-30T14:57:34.663 に答える