PHPWind论坛用户数据导入至BBSMax过程全解析
此篇文章,原本早就该发表出来,一直推迟至现在。文章为我对PW、BBSMax数据库的研究,而做的将PHPWind用户数据导入至BBSMax项目思路方案,全部手写原创,特整理分享出来,并将 数据转换 项目程序源码提供给大家,若觉得有用,可收藏、下载或转载。
数据导入思路:(一个个用户数据导出导入)
1、获取PW所有用户数据到数据集中,然后单条数据循环导入。(确保PW里有数据)
2、循环导入方法:通过有的参数+默认需传递参数,参考bx5 程序目录中\bbamax\MaxLabs.bbsMax.DataAccess.SqlServer\UserDao.cs 中Register方法。调用 bx_Register 存储过程,并返回用户ID提示成功,并视情况将bx5用户ID保存至PW数据库用户表中(以备日后其它用户相关数据的导入)。
3、一个新用户注册完后,用户数据还未导入,再写一个方法,将此用户信息一次导入更新,提示成功,至此导入过程全部完成。
导入过程关键点:
1、mysql数据的获取,并以数据集保存,然后循环单个输出;(分析出有用数据字段,并做与bbsmax字段相应的对照)
2、密码的加密方法,分析表:bx_UserVars 及程序目录中 \bbamax\MaxLabs.bbsMax\Features\User 中 Register 方法。密码加密方式见:\bbamax\MaxLabs.bbsMax\Common\Utils 中 Encrypt 方法。
3、调用并执行 bx_Register 存储过程,完成用户信息注册。
4、紧接着,通过SQL语句操作,更新数据库用户表 bx_Users 各字段信息,如:个性签名、生日、邮箱、性别等。
5、循环操作,最后完成用户信息的导入操作并提示。
导入过程需了解表及存储过程:
PHPWind: pw_member 用户主信息表、pw_memberdata 用户基本信息表
BBSMAX: bx_Users用户表、bx_UserVars用户信息变量表、bx_Register 存储过程.
数据库交互过程中SQL执行语句相关表参数:
过程表数据映射思路:
1、提取PW库中pw_member、pw_memberdata表信息,详细如下:
pw_member表:uid,username,email,signature,introduce,oicq,msn,yahoo,site,location ,regdate
字段含义分别为:用户ID、用户名、邮箱、个性签名、自我介绍、QQ、msn、雅虎、站点、创建时间、来自、生日、性别
pw_memberdata表:postnum,money,rvrc,onlinetime,lastvisit,lastpost
字段含义分别为:发帖总数、金钱、威望、总在线时长、最后访问时间、最后发帖时间
2、映射至bbsmax 数据库中bx_Users、bx_UserVars表信息,详细如下:
bx_Users表:
调用存储过程传参数主要为:
Username,Password, Email, PasswordFormat, Points,Point_1,Point_2(总积分、金币、威望)
更新用户信息为:
Doing DoingDate Gender Signature SignatureFormat TotalTopics TotalPosts TotalOnlineTime MobilePhone UserInfo LastVisitDate LastPoatDate
字段含义:心情签名、记录时间(当前时间)、性别(男为1,女为2)、帖子签名、签名格式(默认为0,前者有则为1)、总主题、总帖子、总在线时长、手机号码、用户信息、最后访问日期、最后回复日期
bx_UserVars表:
调用存储过程传参数:Password,PasswordFormat
参数含义:用户密码(加密后密码)、用户密码格式(bbsmax = 3)
bx_Users、bx_UserVars表结构详见:BBSMax5源码程序数据库表结构解读[终结篇]
以上是数据导入思路及过程全解析,内容不多、层次分明,更能一目了然,下面将项目源码分享出来,供大家学习、下载,并做相应说明。
源码分享:点击下载
程序使用说明:
1、程序是通过VS2008(Visual studio 2008)工具开发,所以需vs2008以上版本工具打开、运行;(将vs2008项目转换为vs2005方法:点击进入)
2、程序为控制台应用程序项目,打开sln方案,修改相应的sql server、mysql数据库连接,即可F5运行;
3、若您具备代码修改的能力,结合此文,可自行修改程序中的数据字段,进行调整,将有用的数据信息转换至BBSMax;
4、运行环境:VS2008以上、SQL Server 2005、Mysql 5.0以上;
5、程序声明:此项目程序为博主开发,拥有版权,请保留项目的博主相关信息,不得修改并进行有商业目的的行为。
对于此文思路及数据导入分析、还有项目程序,有任何问题、好的建议或意见,欢迎下面留言提出,共同学习交流,感谢各位的支持!(PS:项目程序主要供开发者学习使用,若使用的人数较多,或有需要,可以做成那种傻瓜式安装、便于程序菜鸟们使用的软件)
本博文章基本上属于原创或收集整理,都是心血结晶。
欢迎转载分享,转载请注明出处,谢谢!
本文地址:PHPWind论坛用户数据导入至BBSMax过程全解析
一条评论
调整好来没事儿了
由 cyheng 于 2012-09-10 00:47:45 最后编辑