当前位置: 首页 > wzjs >正文

成都网站制作公司定制企业关键词排名优化网址

成都网站制作公司定制,企业关键词排名优化网址,可视方便建站微网站,wordpress首页加广告位目的,判断是否主键重复,不重复则登录新数据,重复则不登录。 定义类型: DataRecord   tableName 表名   rowNumber 行号   columnName 列名   data 数据 想要实现的代码逻辑如下: 模拟数据库的登录过程。 第1…

目的,判断是否主键重复,不重复则登录新数据,重复则不登录。

定义类型:
DataRecord
  tableName 表名
  rowNumber 行号
  columnName 列名
  data 数据

想要实现的代码逻辑如下:
模拟数据库的登录过程。
第1步,现在初始化数据,dataCollection里面一条数据没有。
第2步,现在插入了第1行数据。
第3步,然后插入第2行数据。
第4步,插入后,第2行数据和第1行数据比较。
第5步,如果不重复,则继续插入第3行数据。
第6步,如果重复了则重新生成第2行第1列的数据,并更新数据。
第7步,然后判断新的第2行的数据是否和第1行的数据重复,如果不重复,则继续第5步插入第3行的数据。
第8步,如果重复则继续重新生成第2行第1列的数据,直到不重复为止。
第9步,如果第8步尝试了100次后仍然重复,则继续第6步,生成第2行第2列的数据并更新数据。
第10步,如果第6步到第9步都进行完了,判断第2行的所有列,在重复100次后都是重复的,则停止生成数据,删除第2列的数据。程序终止。
第11步,如果经过第6步到第9步,获得了新的第2行的数据,进行第5步直到插入了所有行的数据。或某一行的任何数据都是重复的,则程序终止。

代码结构如下:
私有DataRecordType类
模块1
在这里插入图片描述

DataRecordType类代码

' DataRecordType 类模块
Private pTableName As String
Private pRowNumber As Long
Private pColumnName As String
Private pData As String' 定义公共属性以访问私有变量
Public Property Get tableName() As StringtableName = pTableName
End Property
Public Property Let tableName(value As String)pTableName = value
End PropertyPublic Property Get rowNumber() As LongrowNumber = pRowNumber
End Property
Public Property Let rowNumber(value As Long)pRowNumber = value
End PropertyPublic Property Get columnName() As StringcolumnName = pColumnName
End Property
Public Property Let columnName(value As String)pColumnName = value
End PropertyPublic Property Get data() As Stringdata = pData
End Property
Public Property Let data(value As String)pData = value
End Property

模块1代码

'主程序入口
Sub MainTest()Dim dataCollection As CollectionSet dataCollection = New CollectionDim dataStr As StringDim hasDiffData As BooleanDim record As DataRecordTypeDim rowNum As Long, columnIndex As Long, tryCount As LongDim rowNumMax As Long, columnIndexMax As Long, tryCountMax As LongrowNumMax = 30 '最大行columnIndexMax = 5 '最大列tryCountMax = 100  '最大尝试次数For rowNum = 1 To rowNumMaxhasDiffData = False'先登录一行数据(所有列,主键+非主键)For columnIndex = 1 To columnIndexMax'插入当前列数据dataStr = GetNewData()Call AddData(dataCollection, "Table1", CLng(rowNum), CStr(columnIndex), CStr(dataStr))Next columnIndex'遍历一行的数据(只有主键的列)For columnIndex = 1 To columnIndexMax'是否重复Do While tryCount < tryCountMax And IsExistsData(dataCollection, "Table1", CLng(rowNum))'取得新数据dataStr = GetNewData()'更新第2行第1列数据Call UpdateData(dataCollection, "Table1", CLng(rowNum), CStr(columnIndex), CStr(dataStr))'尝试次数+1tryCount = tryCount + 1Loop'所有列的数据登录的过程中,有某一列插入更新的时候,不重复了If Not IsExistsData(dataCollection, "Table1", CLng(rowNum)) ThenhasDiffData = TrueExit ForEnd IfNext columnIndexIf hasDiffData = False Then'如果当前行一定是重复数据,则终止Call DeleteData(dataCollection, "Table1", CLng(rowNum))Exit ForEnd IfNext rowNum'输出最后的结果For rowNum = 1 To 30For i = 1 To dataCollection.CountSet record = dataCollection(i)If record.rowNumber = rowNum ThenDebug.Print record.tableName & "," & CLng(record.rowNumber) & "," & record.columnName & "," & record.dataEnd IfNext iNext rowNumEnd SubFunction GetNewData()GetNewData = "AAA" & CInt(10 * Rnd)
End Function'插入数据
Sub AddData(dataCollection As Collection, tableName As String, rowNumber As Long, columnName As String, data As String)Dim record As DataRecordTypeSet record = New DataRecordType  ' 关键:实例化对象record.tableName = tableNamerecord.rowNumber = rowNumberrecord.columnName = columnNamerecord.data = datadataCollection.Add record
End Sub'更新数据
Sub UpdateData(dataCollection As Collection, tableName As String, rowNumber As Long, columnName As String, newData As String)Dim record As DataRecordTypeDim i As Integer' 遍历集合中的每个记录For i = 1 To dataCollection.CountSet record = dataCollection(i)' 检查是否匹配 tableName、rowNumber 和 columnNameIf record.tableName = tableName And record.rowNumber = rowNumber And record.columnName = columnName Then' 更新数据record.data = newDataExit Sub  ' 找到并更新后退出End IfNext i' 如果没有找到匹配的记录,可以选择抛出错误或添加新记录MsgBox "未找到匹配的记录", vbExclamation
End Sub'删除数据
Sub DeleteData(dataCollection As Collection, tableName As String, rowNumber As Long)Dim record As DataRecordTypeDim i As Integer' 遍历集合中的每个记录For i = dataCollection.Count To 1 Step -1Set record = dataCollection(i)' 检查是否匹配 tableName、rowNumber 和 columnNameIf record.tableName = tableName And record.rowNumber = rowNumber Then' 删除记录dataCollection.Remove iEnd IfNext i' 如果没有找到匹配的记录,可以选择抛出错误MsgBox "未找到匹配的记录", vbExclamation
End SubFunction IsExistsData(dataCollection As Collection, ptableName As String, prowNumber As Long) As BooleanDim i As Long, k As Long, j As LongDim record1 As DataRecordTypeDim record2 As DataRecordTypeDim maxRowNum As LongDim sameTableRowData As StringDim otherTableRowData As String'取得最大行数maxRowNum = GetMaxRowNum(dataCollection)sameTableRowData = ""'取得最后一行,所有列的数据拼接后的结果For i = 1 To dataCollection.CountSet record1 = dataCollection(i)If record1.tableName = ptableName And record1.rowNumber = prowNumber ThensameTableRowData = sameTableRowData & record1.dataEnd IfNext i'保证同一行For k = 1 To maxRowNum'保证各个列的数据连接的时候,按照相同的列的顺序For i = 1 To dataCollection.CountSet record1 = dataCollection(i)'找到当前行,依次与其他行进行比较If record1.rowNumber = prowNumber ThenotherTableRowData = ""'其他行的数据For j = 1 To dataCollection.CountSet record2 = dataCollection(j)'同一行 不同列,按照顺序拼接If record2.tableName = record1.tableName And record2.rowNumber <> record1.rowNumber And record2.columnName = record1.columnName And record2.rowNumber = k ThenotherTableRowData = otherTableRowData & record2.dataEnd IfNext j'如果有重复的数据,则返回TrueIf otherTableRowData = sameTableRowData ThenIsExistsData = TrueExit FunctionEnd IfExit ForEnd IfNext iNext k'不存在重复的数据IsExistsData = FalseEnd Function'取得最大行
Function GetMaxRowNum(dataCollection As Collection)Dim maxRowNum As LongmaxRowNum = 0For i = 1 To dataCollection.CountIf dataCollection(i).rowNumber > maxRowNum ThenmaxRowNum = dataCollection(i).rowNumberEnd IfNext iGetMaxRowNum = maxRowNum
End Function

输入内容如下:

运行MainTest()

运行结果如下:

Table1,1,1,AAA4
Table1,1,2,AAA3
Table1,1,3,AAA9
Table1,1,4,AAA8
Table1,1,5,AAA3
Table1,2,1,AAA7
Table1,2,2,AAA3
Table1,2,3,AAA1
Table1,2,4,AAA0
Table1,2,5,AAA3
Table1,3,1,AAA8
Table1,3,2,AAA3
Table1,3,3,AAA2
Table1,3,4,AAA5
Table1,3,5,AAA3
Table1,4,1,AAA3
Table1,4,2,AAA0
Table1,4,3,AAA5
Table1,4,4,AAA2
Table1,4,5,AAA9
Table1,5,1,AAA6
Table1,5,2,AAA8
Table1,5,3,AAA9
Table1,5,4,AAA3
Table1,5,5,AAA5
Table1,6,1,AAA1
Table1,6,2,AAA6
Table1,6,3,AAA4
Table1,6,4,AAA10
Table1,6,5,AAA1
Table1,7,1,AAA9
Table1,7,2,AAA6
Table1,7,3,AAA3
Table1,7,4,AAA1
Table1,7,5,AAA5
Table1,8,1,AAA2
Table1,8,2,AAA10
Table1,8,3,AAA1
Table1,8,4,AAA0
Table1,8,5,AAA3
Table1,9,1,AAA5
Table1,9,2,AAA9
Table1,9,3,AAA5
Table1,9,4,AAA4
Table1,9,5,AAA8
Table1,10,1,AAA8
Table1,10,2,AAA7
Table1,10,3,AAA7
Table1,10,4,AAA10
Table1,10,5,AAA3
Table1,11,1,AAA5
Table1,11,2,AAA4
Table1,11,3,AAA7
Table1,11,4,AAA2
Table1,11,5,AAA4
Table1,12,1,AAA5
Table1,12,2,AAA8
Table1,12,3,AAA5
Table1,12,4,AAA4
Table1,12,5,AAA5
Table1,13,1,AAA2
Table1,13,2,AAA6
Table1,13,3,AAA5
Table1,13,4,AAA7
Table1,13,5,AAA9
Table1,14,1,AAA4
Table1,14,2,AAA3
Table1,14,3,AAA3
Table1,14,4,AAA2
Table1,14,5,AAA5
Table1,15,1,AAA2
Table1,15,2,AAA6
Table1,15,3,AAA4
Table1,15,4,AAA9
Table1,15,5,AAA5
Table1,16,1,AAA2
Table1,16,2,AAA7
Table1,16,3,AAA7
Table1,16,4,AAA6
Table1,16,5,AAA8
Table1,17,1,AAA2
Table1,17,2,AAA8
Table1,17,3,AAA2
Table1,17,4,AAA10
Table1,17,5,AAA1
Table1,18,1,AAA1
Table1,18,2,AAA8
Table1,18,3,AAA4
Table1,18,4,AAA5
Table1,18,5,AAA1
Table1,19,1,AAA1
Table1,19,2,AAA2
Table1,19,3,AAA0
Table1,19,4,AAA7
Table1,19,5,AAA5
Table1,20,1,AAA6
Table1,20,2,AAA2
Table1,20,3,AAA5
Table1,20,4,AAA7
Table1,20,5,AAA8
Table1,21,1,AAA4
Table1,21,2,AAA9
Table1,21,3,AAA7
Table1,21,4,AAA1
Table1,21,5,AAA6
Table1,22,1,AAA7
Table1,22,2,AAA0
Table1,22,3,AAA4
Table1,22,4,AAA4
Table1,22,5,AAA3
Table1,23,1,AAA10
Table1,23,2,AAA8
Table1,23,3,AAA7
Table1,23,4,AAA4
Table1,23,5,AAA7
Table1,24,1,AAA3
Table1,24,2,AAA4
Table1,24,3,AAA4
Table1,24,4,AAA9
Table1,24,5,AAA1
Table1,25,1,AAA6
Table1,25,2,AAA3
Table1,25,3,AAA1
Table1,25,4,AAA2
Table1,25,5,AAA1
Table1,26,1,AAA4
Table1,26,2,AAA10
Table1,26,3,AAA5
Table1,26,4,AAA5
Table1,26,5,AAA10
Table1,27,1,AAA2
Table1,27,2,AAA4
Table1,27,3,AAA4
Table1,27,4,AAA3
Table1,27,5,AAA5
Table1,28,1,AAA1
Table1,28,2,AAA5
Table1,28,3,AAA10
Table1,28,4,AAA6
Table1,28,5,AAA9
Table1,29,1,AAA7
Table1,29,2,AAA4
Table1,29,3,AAA7
Table1,29,4,AAA1
Table1,29,5,AAA8
Table1,30,1,AAA7
Table1,30,2,AAA5
Table1,30,3,AAA2
Table1,30,4,AAA2
Table1,30,5,AAA3
http://www.dtcms.com/wzjs/170921.html

相关文章:

  • 武汉做营销型网站建设seo优化专家
  • 惠州网站建设制作价格百度合伙人答题兼职赚钱
  • 宁波做公司网站公司最厉害的搜索引擎
  • html 网站建设中模板黑龙江seo关键词优化工具
  • 企业网站推广的渠道无屏蔽搜索引擎
  • 廊坊怎么做网站网络营销乐云seo
  • 网站图标psd百度集团官网
  • 綦江网站建设百度网页版入口链接
  • 扬州城乡建设局网站广告联盟平台哪个好
  • 龙岗 网站建设哪竞价推广平台
  • 电子商务网站建设的步骤一般分为seo外链工具下载
  • 网站开发策略都有啥百度上做优化一年多少钱
  • 不用源码做网站在广州做seo找哪家公司
  • 免费的网站域名查询方法有哪些营销案例100例小故事
  • wordpress免费网站模板seo主要做什么工作
  • 怎么做网站在线客服上海最新政策
  • 网站优化解决方案百度allin 人工智能
  • 兰州市做网站的公司湖南有实力seo优化哪家好
  • 桐城做淘宝店铺网站公司网络营销的六大功能
  • 网站设计论文3000字全网优化哪家好
  • 网站专题怎么做营销战略有哪些内容
  • 做网站的时候用的什么框架怎么创建网页
  • 个人可以做购物网站吗短视频营销案例
  • 用户界面设计模板seo课程心得体会
  • 电商开放平台大同优化推广
  • 网站做的支付宝接口吗企业管理培训课程网课免费
  • 骏驰网站开发网站百度关键词seo排名优化
  • wordpress 2013处理器优化软件
  • 构建网站系统网站建设情况
  • 想做一个网站怎么做网络营销的方式有几种