D:\work\Talent\TalentSolution\bbsSolution\Components\Posts.cs    行: 338

SqlDataProvider  行: 4414

数据还原时使用的用户编号为原数据库的编号,所以需要暂时修改anf插入用户的sp,将编号改为固定,完成后再改回来

删除了ix_forumgroup约束
删除了约束 forumuser_profile

修改forums_User_CreateUpdateDelete,放弃对用户名和email的要求

版本号的问题

倒数据的时候要先修改postdate为原始数据,完成后再改回来@PostDate datetime = null,
用户注册日期也要添加,在sp添加新的参数datecreate
........总体的修改过程:

1.从服务器端复制一个论坛程序到相应的位置
2.在本地对一个新的论坛程序进行改造
3.从本地上传覆盖掉服务器端相应位置论坛的需要自定义的部分
4.将服务器端的原数据库备份
5.将备份下载,在本地还原
6.使用最新数据的原论坛数据库将数据导入到新论坛的数据库
7.备份本地的新论坛的数据库
8.将备份上传到服务器端,将需要使用的新论坛数据库还原

........论坛程序的更换

0.连接字符串的修改
1.数据的导入
2.注册用户时主站和论坛的联系
3.主站首页论坛最新帖子显示的修改

.........注册用户时主站和论坛的联系

1.在新论坛数据库添加forums_User_InsertForMain和forums_User_RemoveforMain
2.修改注册用户时使用的方法,先添加用户到论坛,然后添加用户到主站
3.主站添加用户时,用户编号为使用论坛添加用户后产生的自动编号。因此需要修改主站数据库,将用户表的编号的标识属性去掉。然后将添加用户的sp的编号的output去掉。
4.测试。

..........主站首页论坛最新帖子显示的修改

1.修改提供最新帖子的那个方法。

...........要注意的问题

1.各个dll的替换。


建立新的anf数据库,删除两个约束
到服务器端备份目标数据库,下载到本地
将新备份还原旧的bbs数据库
使用写好的程序将旧bbs的数据导入到新的anf数据库
修改定制新的anf的web项目。

注意倒数据时数据库和正常运行的数据库不一样


 1[草稿]定制anfALTER    proc forums_User_RemoveforMain
 2[草稿]定制anf@UserID int
 3[草稿]定制anfas
 4[草稿]定制anfBEGIN
 5[草稿]定制anf    -- 删除用户
 6[草稿]定制anf    BEGIN TRAN
 7[草稿]定制anf    
 8[草稿]定制anf    UPDATE forums_Posts set UserID = 0 where UserID = @UserID
 9[草稿]定制anf    
10[草稿]定制anf    if@@ERROR != 0 )
11[草稿]定制anf    begin
12[草稿]定制anf        rollback tran
13[草稿]定制anf        select -1
14[草稿]定制anf    end
15[草稿]定制anf    
16[草稿]定制anf    delete forums_UserProfile where UserID = @UserID
17[草稿]定制anf    
18[草稿]定制anf    if@@ERROR != 0 )
19[草稿]定制anf    begin
20[草稿]定制anf        rollback tran
21[草稿]定制anf        select -1
22[草稿]定制anf    end
23[草稿]定制anf    
24[草稿]定制anf    delete forums_Users where UserID = @UserID
25[草稿]定制anf    
26[草稿]定制anf    if@@ERROR != 0 )
27[草稿]定制anf    begin
28[草稿]定制anf        rollback tran
29[草稿]定制anf        select -1
30[草稿]定制anf    end
31[草稿]定制anf    else
32[草稿]定制anf    begin
33[草稿]定制anf        commit tran
34[草稿]定制anf        select 1
35[草稿]定制anf    end
36[草稿]定制anf
37[草稿]定制anfEND

 1[草稿]定制anfALTER              procedure forums_User_InsertForMain
 2[草稿]定制anf(
 3[草稿]定制anf    @UserID int out,
 4[草稿]定制anf    @UserName   nvarchar (64) ,        
 5[草稿]定制anf    @Password   nvarchar (64),
 6[草稿]定制anf    @Email    nvarchar (128
 7[草稿]定制anf    
 8[草稿]定制anf)
 9[草稿]定制anfAS
10[草稿]定制anf
11[草稿]定制anfSET NOCOUNT ON
12[草稿]定制anf
13[草稿]定制anf-- 创建新用户
14[草稿]定制anf
15[草稿]定制anfBEGIN
16[草稿]定制anf    
17[草稿]定制anf    -- 检查用户名是否存在
18[草稿]定制anf    IF EXISTS(SELECT UserName FROM forums_Users (nolock) WHERE UserName = @UserName )
19[草稿]定制anf        select 2
20[草稿]定制anf    ELSE
21[草稿]定制anf        -- 进一步检查Email地址是否存在
22[草稿]定制anf        IF EXISTS(SELECT Email FROM forums_Users (nolock) WHERE Email = @Email )
23[草稿]定制anf            select 3
24[草稿]定制anf        ELSE
25[草稿]定制anf        BEGIN
26[草稿]定制anf            -- 进一步检查昵称是否存在
27[草稿]定制anf            IF EXISTS(SELECT NickName FROM forums_Users (nolock) WHERE NickName = @UserName AND IsAnonymous = 0)
28[草稿]定制anf                SELECT 6
29[草稿]定制anf            ELSE
30[草稿]定制anf            BEGIN
31[草稿]定制anf                -- 追加新用户
32[草稿]定制anf                INSERT INTO forums_Users 
33[草稿]定制anf                    ( UserName, 
34[草稿]定制anf                    NickName,
35[草稿]定制anf                    Email, 
36[草稿]定制anf                    Password
37[草稿]定制anf                     )
38[草稿]定制anf                VALUES 
39[草稿]定制anf                    ( @UserName
40[草稿]定制anf                    @UserName
41[草稿]定制anf                    @Email
42[草稿]定制anf                    @Password
43[草稿]定制anf                     )
44[草稿]定制anf                
45[草稿]定制anf                IF@@ERROR != 0 )
46[草稿]定制anf                    select -1
47[草稿]定制anf                    
48[草稿]定制anf                -- 获取创建新用户的ID
49[草稿]定制anf                SET @UserID = @@IDENTITY
50[草稿]定制anf                -- 追加用户配置信息
51[草稿]定制anf                INSERT INTO forums_UserProfile 
52[草稿]定制anf                    (
53[草稿]定制anf                    [UserID] ,
54[草稿]定制anf                                                      [timezone]
55[草稿]定制anf                    
56[草稿]定制anf                    )
57[草稿]定制anf                    VALUES
58[草稿]定制anf                    ( @UserID,    
59[草稿]定制anf                                                         0            
60[草稿]定制anf                    )
61[草稿]定制anf
62[草稿]定制anf                IF@@ERROR != 0 )
63[草稿]定制anf                    select -1
64[草稿]定制anf                --增加默认用户角色
65[草稿]定制anf                exec forums_Roles_AddUser @UserID7
66[草稿]定制anf                exec forums_Roles_AddUser @UserID8
67[草稿]定制anf
68[草稿]定制anf                select 1        -- 返回成功代码
69[草稿]定制anf            END
70[草稿]定制anf        END
71[草稿]定制anf    -- 即出存储过程
72[草稿]定制anf    RETURN
73[草稿]定制anfEND


相关文章:

  • 2021-05-10
  • 2021-09-03
  • 2021-07-14
  • 2021-09-20
  • 2022-01-23
  • 2022-02-17
  • 2021-07-15
猜你喜欢
  • 2021-12-27
  • 2021-05-20
相关资源
相似解决方案