Configurando o provedor de Associação ASP.NET para um aplicativo

3

Eu recentemente baixei o DotWiki, que planejo usar em uma seção de suporte para o site de minhas empresas. O aplicativo em si tem dois modos de segurança diferentes, "simples" e "completo". Full usa um provedor de associação do asp.net para segurança. No entanto, quando eu executo o seguinte comando (obviamente substituindo [sql server] e com informações adequadas), recebo um erro muito grande.

aspnet_regsql -S [my computer name]\[sql server] -E -A all -d DotWiki

Eu recebo o seguinte erro quando executo isso.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql -S AGQAOFFICE\SQLSER
VER05 -E -A all -d DotWiki

Start adding the following features:
Membership
Profile
RoleManager
Personalization
SqlWebEventProvider

.
An error occurred during the execution of the SQL file 'InstallMembership.sql'.
The SQL error number is 290 and the SqlException message is: Invalid EXECUTE sta
tement using object "Relation", method "SetUseVarDecimal".
SQL Server: [my computer name]\[sql server]
Database: [DotWiki]
SQL file loaded:
InstallMembership.sql

Commands failed:

/*************************************************************/
/*************************************************************/
/*************************************************************/

DECLARE @ver int
DECLARE @version nchar(100)
DECLARE @dot int
DECLARE @hyphen int
DECLARE @SqlToExec nchar(400)

SELECT @ver = 8
SELECT @version = @@Version
SELECT @hyphen  = CHARINDEX(N' - ', @version)
IF (NOT(@hyphen IS NULL) AND @hyphen > 0)
BEGIN
    SELECT @hyphen = @hyphen + 3
    SELECT @dot    = CHARINDEX(N'.', @version, @hyphen)
    IF (NOT(@dot IS NULL) AND @dot > @hyphen)
    BEGIN
        SELECT @version = SUBSTRING(@version, @hyphen, @dot - @hyphen)
        SELECT @ver     = CONVERT(int, @version)
    END
END

/*************************************************************/

IF (@ver >= 8)
    EXEC sp_tableoption N'aspnet_Membership', 'text in row', 3000

/*************************************************************/
/*************************************************************/

IF (EXISTS (SELECT name
              FROM sysobjects
             WHERE (name = N'aspnet_Membership_CreateUser')
               AND (type = 'P')))
DROP PROCEDURE dbo.aspnet_Membership_CreateUser

SQL Exception:
System.Data.SqlClient.SqlException: Invalid EXECUTE statement using object "Rela
tion", method "SetUseVarDecimal".
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolea
n breakConnection)
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception
, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObj
ect stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cm
dHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, Tds
ParserStateObject stateObj)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName,
Boolean async)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult res
ult, String methodName, Boolean sendToPipe)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at System.Web.Management.SqlServices.ExecuteFile(String file, String server,
String database, String dbFileName, SqlConnection connection, Boolean sessionSta
te, Boolean isInstall, SessionStateType sessionStatetype)

Qualquer ajuda seria apreciada:)

    
por Kevin Wiskia 16.06.2009 / 17:37

4 respostas

1

Primeiro, instale o service swap mais recente, como sugerido pelo splattne, já que a versão @@ mencionada NÃO é sp2. Veja link

Em segundo lugar, você também pode instalar as tabelas, sprocs e visualizações necessárias diretamente. Você pode encontrar scripts para executar no SQL Server aqui:% WINDOWS% \ Microsoft.NET \ Framework \ v2.0.50727 \

Veja esta página para obter mais informações: link

    
por 07.08.2009 / 11:37
0

Qual Service Pack você instalou no SQL Server 2005? Parece que foi resolvido com o SP2 (o último é o Service Pack 3).

    
por 16.06.2009 / 17:57
0

Assim, a linha que realmente está recebendo o erro seria esta:

EXEC sp_tableoption N'aspnet_Membership', 'text in row', 3000

Invalid EXECUTE statement using object "Relation", method "SetUseVarDecimal"

Estou obtendo muitos resultados mistos, atualizando para o service pack 2 (que eu já tenho). Além disso, algumas pessoas estão dizendo que é um problema com as permissões. Nada parece funcionar.

    
por 16.06.2009 / 18:27
0

O banco de dados está sendo executado no modo de compatibilidade correto para o SQL2005? Isso seria 90. Verifique também se você tem permissões ALTER na tabela Relation.

    
por 22.06.2009 / 10:45