ASP之操作间隔字符串对应位置字符加减,自定义SplitStrAM函数
来源:互联网 发布:金慧软件 编辑:程序博客网 时间:2024/06/06 18:50
以往存储用户状态数据的时候都是使用多个字段来分别记录,其实这种方法是很不方便的。一是需要在数据库中建立很多个字段,二是不方便于以后的扩展。对于那些不需要在查询的时候用来判断的字段的统计数据是没有必要单独建立字段的。
思路:
在数据库中的用户表,每条记录都需要去统计它的发帖总数,留言总数等。偶以前的做法是在用户登录自己的后台以后,使用此用户的ID号来查询相对应的表中记录数(使用语句[Select Count(ID) From 表名(0)])。这样又多做了一次查询,如果在用户发表帖子时候或有人对此用户留言的时候直接在用户表中的统计字段上加1,删除帖子的时候减1。
然而这些字段往往有很多,由此想到了使用一个间隔字符将这些统计的数据写入一个字段中,即使以后再有新的统计只需要在这个字段上加一个间隔符就OK了。使用这种方法是不错,但对统计数值加减的操作比较麻烦,需要找到对应位置进行加减操作。
在做上个站点的时候我曾有用过这种做法,因各类别下的字段数不一样,我使用了自定义表单项的做法,将多个字段使用间隔字符存储于一个备注字段中。但我也为此做了很多工作,当时为了索引各字段不乱使用了字段名等于值的做法,然后再使用间隔字符做的间隔(字段1=字段1值|字段2=字段2值)。
有的时候一些东东是要视情况而定的,对于存储用户统计的字段使用间隔字符串的做法还是可行的,只是需要一个操作函数来快速对相应位置的字段值进行操作,存储格式(发帖总计|留言总计|被删除主题总计|)
实现:
1、将多个不用于查询排序、条件判断的字段使用间隔字符串存储于一个字段中
2、当有发布新的信息时对字段符相应位置的数值进行加减操作
代码:
'函数名:SplitStrAM
'说 明:需要外部整数转换函数支持
'作 用:间隔字符串中某位置加减
'参 数:参数位置从零计
' NeedStr(需要处理的串)
' DistantStr(间隔字符串)
' PositionNum(第几个位置)
' TypeStr(类型串)
'返 回:完成加减后的字符串
'*************************
Public Function SplitStrAM(ByVal NeedStr,ByVal DistantStr,ByVal PositionNum,ByVal TypeStr)
Dim TempSplit
TempSplit=Split(NeedStr,DistantStr)
Select Case UCase(TypeStr)
Case "A" '执行增加操作
TempSplit(PositionNum)=ChkNumeric(TempSplit(PositionNum))+1 '这里的ChkNumeric为自定义数值转换函数
Case "M" '执行减少操作
TempSplit(PositionNum)=ChkNumeric(TempSplit(PositionNum))-1
End Select
SplitStrAM=Join(TempSplit,DistantStr)
End Function
- ASP之操作间隔字符串对应位置字符加减,自定义SplitStrAM函数
- JS 字符串操作函数 往指定位置插入字符 删除指定位置字符 替换指定位置字符
- JS 字符串操作函数 往指定位置插入字符 删除指定位置字符 替换指定位置字符
- JS 字符串操作函数 往指定位置插入字符 删除指定位置字符 替换指定位置字符
- java-字符串反转-自定义反转字符位置
- PHP字符串函数 查找字符位置函数
- 查找字符串中对应的字符并返回数组位置
- 记录字符操作函数(包括对应宽字符函数)
- 字符及字符串操作函数
- 字符/字符串操作函数(C)
- 字符及字符串操作函数
- SQL之得到一个字符串中某一个字符第n次出现的位置的函数
- asp字符串操作 asp字符串函数 asp字符串使用实例
- 自定义JS 字符串操作函数
- 字符串处理函数、字符操作函数
- C语言 编写字符串操作函数strrchr,在字符串中查找目标字符最后一次出现的位置,返回指向这次位置的指针。
- PHP截取字符串,获取长度,获取字符位置的函数
- reverse函数 倒置字符串各个字符位置 3.5
- 深入浅出C#2008从入门到提高Step By Step(六)Windows应用程序实例(2)
- 姑苏慕容与软件开发
- 深入浅出C#2008从入门到提高Step By Step(七)数据访问(1)-ADO.NET
- phpCMS转NET
- awk study(11)
- ASP之操作间隔字符串对应位置字符加减,自定义SplitStrAM函数
- 机器视觉中的摄像机定标方法简介(转)
- Ogre学习记录
- 深入浅出C#2008从入门到提高Step By Step(七)数据访问(2)-DataSet
- 无须登陆,任意更改Windows XP管理员帐号、密码的方法
- web页面里输出的文字在表格内自动换行
- GridView单元格不换行问题
- 都是分号惹的祸(ORA-00911: invalid character)
- 创建SvcHost.exe调用的服务原理与实践