1

を持つ既存のデータベースがありaccountnumberます。accountnumberその列を入力として受け取り、ユーザー名/パスワード/プロファイル エントリごとに生成するスクリプトを作成したいと考えています。

プロファイル エントリは、元のアカウント番号になります。

したがって、たとえば、user/pass にも accountnumber を使用するとします...

これは私が論理的にやりたいことです

insert into ASPNETDB Select accountnumber, accountnumber as UserName, accountnumber as Password, accountnumber as profileentry from table1

1 人のユーザーを作成するには、いくつかのストアド プロシージャを使用する必要があることを知っています。そのため、これを行う方法がわかりません。

4

2 に答える 2

1

さて、私はasp.net c#の観点からこれに答えることができます。CreateUser()aspxページを作成し、コードビハインドでループを使用して各レコード(アカウント番号)を読み取り、メンバーシップクラスのメソッドを使用してループ内にユーザーを作成します。

何かのようなもの:

loop start{

      // read account number from existing table
      CreateUser(acccountnumber,password);

}

CreateUserメソッドを使用してプログラムでユーザーを作成する方法については、次を確認してください。

プログラムでユーザーを作成する

于 2011-07-18T13:13:45.847 に答える
0

これが、私はMSのドキュメントを読み直して、それを求めました。これにより、ユーザー アカウントが設定され、各レコードのキー プロファイル値が生成されます。

declare @PPID NVARCHAR(20)
declare @salt NVARCHAR(500)
declare @stupid NVARCHAR(500)
declare @UserId uniqueidentifier
declare cur CURSOR LOCAL for 
select PPID from webData..table where PPID is not null

open cur 

fetch next from cur into @PPID

while @@FETCH_STATUS = 0 BEGIN 
set @salt = @PPID + @PPID 
set @stupid = 'TangiblePropertyId:S: 0:'  + CONVERT(VARCHAR(10),LEN(@PPID))
    --execute your sproc on each row 
   exec [aspnetdb].[dbo].[aspnet_Membership_CreateUser] '/',
  @PPID
  ,@PPID
  ,@PPID
  ,@salt
  ,null
  ,null
  ,1
  ,'01/01/2011'
  ,DEFAULT
  ,DEFAULT
  ,DEFAULT
  ,@UserID

    exec dbo.aspnet_UsersInRoles_AddUsersToRoles '/',@PPID,'TaxPayer','01/01/2011'
EXECUTE  [aspnetdb].[dbo].[aspnet_Profile_SetProperties]  '/' , @stupid ,@PPID  ,''  ,@PPID  ,false  ,'01/01/2011'

PRINT @stupid

    fetch next from cur into @PPID 
END 

close cur 
deallocate cur 
于 2011-07-20T12:52:03.363 に答える