一个数据库操作类
1
<% Option Explicit %>
2
<%
3
'****************************************************************
4
' 类名:Cls_dbOperate
5
' 作用:数据库操作类
6
'****************************************************************
7
Class Cls_dbOperate
8
Private strConn
9
Private objConn
10
Private objRs
11![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
Private objRs1
13![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
Private objCmd
15
Private strTable
16
Private strField
17
Private strFieldValue '字段
18
Private strOrderBy
19
Private strCondition
20
Private strSql
21
Private dbFile '数据库文件路径名,此处最好是用到配置文件
22
Private ID
23
Private Status '====命令状态提示符号!0-成功;1-失败
24![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
25
Private Sub Class_Initialize()
26
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(SitePath & DbFilePath)
27
End Sub
28![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
29
'*** 临时设置连接字符串
30
Public Sub setConnString(ByRef sConn)
31
strConn = sConn
32
End Sub
33![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
34
'*** 关闭对象
35
Private Sub ClearObject(ByRef obj)
36
On Error Resume Next
37
If IsObject(obj) = True Then
38
obj.Close()
39
Set obj = Nothing
40
End If
41
If Err.Number <> 0 Then Err.Clear
42
End Sub
43
'*** 创建连接对象
44
Private Sub Connection()
45
Call ClearObject(objConn)
46
Set objConn = Server.CreateObject("ADODB.Connection")
47
objConn.Open strConn
48
End Sub
49
'*** 关闭连接
50
Private Sub ClearConnection()
51
ClearObject(objConn)
52
End Sub
53![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
54
'*** 创建记录集
55
Private Sub Recordset()
56
ClearObject(objRs)
57
Set objRs = Server.CreateObject("ADODB.Recordset")
58
End Sub
59![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
60
'*** 关闭记录集
61
Private Sub ClearRecordSet()
62
Call ClearObject(objRs)
63
End Sub
64![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
65
'*** 创建命令对象
66
Private Sub Command()
67
'Call ClearObject(objCmd)
68
Connection()
69
Set objCmd = Server.CreateObject("ADODB.Command")
70
objCmd.ActiveConnection = objConn
71
End Sub
72![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
73
Private Sub ClearCommand
74
Call ClearObject(objcmd)
75
End Sub
76![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
77
'*** 相关处理状态信息
78
'*** Msg:提示信息
79
'*** IsSucceed : 是否成功执行命令 选项:1-失败并且停止处理,0-成功
80
Private Sub Message(Msg,IsSucceed)
81
If IsSucceed = 1 Then
82
Status = 1
83
Response.Write(Msg)
84
Response.End()
85
Else
86
Status = 0
87
End If
88
End Sub
89![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
90
'*** 数组长度比较
91
Private Function Compare(ByRef CompA,ByRef CompB)
92
If Eval(CompA = CompB) = False Then
93
Compare = 1
94
Call ErrMsg("相关条件不匹配")
95
Else
96
Compare = 0
97
End If
98
End Function
99![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
100
'******* 检查记录是否存在,返回 0-存在;1-不存在
101
Private Function IsIDExists()
102
Dim strTemp
103
strTemp = "Select ID From "& strTable & " Where ID = " & ID
104
Connection()
105
Recordset()
106
objRs.Open strTemp,objConn,1,1
107
If objRs.EOF Then
108
IsIDExists = 1
109
Else
110
IsIDExists = 0
111
End If
112
ClearConnection()
113
ClearRecordSet()
114
End Function
115![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
116![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
117
Public Property Let SetID(ByRef intID)
118
ID = intID
119
End Property
120![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
121
'* 获得表名
122
Public Property Let TableName(ByVal strTableName)
123
strTable = strTableName
124
End Property
125![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
126
'* 获得表字段
127
Public Property Let Fields(ByVal strFieldName)
128
strField = strFieldName
129
End Property
130![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
131
'* 获取值
132
Public Property Let FieldsValue(ByVal Values)
133
strFieldValue = Values
134
End Property
135![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
136
'* 筛选条件
137
Public Property Let Condition(ByVal strWhere)
138
strCondition = strWhere
139
End Property
140![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
141
'* 排序,查询的时候需要用到
142
Public Property Let orderBy(ByRef orderByID)
143
strOrderBy = orderByID
144
End Property
145![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
146
'* 查询时候用的
147
Public Sub doQuery(ByRef PreArray)
148
strSql = ""
149
strSql = "Select "
150
Dim i,flag,ArrTemp
151
flag = 0
152
If strField = "" Then
153
strField = " * "
154
Else
155
strField = Replace(strField,Spliter,",")
156
End If
157
strSql = strSql & strField
158
strSql = strSql & " From " & strTable
159
If strCondition <> "" Then
160
strSql = strSql & " Where " & strCondition
161
Else
162
If ID <> "" Then strSql = strSql & " Where ID = " & ID
163
End If
164
If strOrderBy <> "" Then
165
strSql = strSql & strOrderBy
166
End If
167
Response.Write strSql
168![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
169
ExecuteQuery PreArray
170
End Sub
171![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
172
'* 修改
173
Public Sub doUpdate()
174
If IsIDExists()= 0 Then
175
Dim ArrField,ArrFieldValue
176
strSql = ""
177
ArrField = ""
178
ArrFieldValue = ""
179
ArrField = Split(strField,Spliter)
180
ArrFieldValue = Split(strFieldValue,Spliter)
181
If Compare(Ubound(ArrField),UBound(ArrFieldValue)) <> 0 Then Exit Sub
182
strSql = "Update " & strTable & " Set "
183
For i = 0 To Ubound(ArrField)
184
If IsNumeric(ArrFieldValue(i)) = False Then
185
strSql = strSql & ArrField(i) & " = '" & ArrFieldValue(i) & "'"
186
If i <> UBound(ArrField) Then strSql = strSql & " , "
187
Else
188
strSql = strSql & ArrField(i) & " = " & ArrFieldValue(i)
189
If i <> UBound(ArrField) Then strSql = strSql & " , "
190
End If
191
Next
192
If strCondition <> "" Then
193
strSql = strSql & " where " & strCondition
194
Else
195
strSql = strSql & " where ID = " & ID
196
End If
197![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
198
Response.Write strSql
199
ExecuteNoQuery()
200
Status = 0
201
Else
202
Message "请设置正确的ID",1
203
End If
204
End Sub
205![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
206
'* 添加
207
Public Sub doAdd()
208
Dim ArrFieldValue,ArrField,i
209
ArrField = ""
210
ArrFieldValue = ""
211
strSql = ""
212
ArrField = Split(strField,Spliter)
213
ArrFieldValue = Split(strFieldValue,Spliter)
214
If Compare(Ubound(ArrField),UBound(ArrFieldValue)) <> 0 Then Exit Sub
215
strField = Replace(strField,Spliter,",")
216
strSql = "Insert into " & strTable & "(" & strField & ") Values("
217
For i = 0 To Ubound(ArrFieldValue)
218
If IsNumeric(ArrFieldValue(i)) = False Then
219
strSql = strSql & "'" & ArrFieldValue(i) & "'"
220
If i <> Ubound(ArrFieldValue) Then strSql = strSql & ","
221
Else
222
strSql = strSql & ArrFieldValue(i)
223
If i <> Ubound(ArrFieldValue) Then strSql = strSql & ","
224
End If
225
Next
226
strSql = strSql & ")"
227![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
228
Response.Write strSql
229
ExecuteNoQuery()
230
End Sub
231![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
232
Public Sub doDelete()
233
If IsIDExists()= 0 Then
234
strSql = ""
235
If ID = "" or strCondition = "" Then strSql = ""
236
If ID <> "" Then strSql = "Delete * From " & strTable & " Where ID = " &ID
237
If strCondition <> "" Then strSql = "Delete * From " & strTable & " Where " & strCondition
238
Response.Write strSql
239
ExecuteNoQuery()
240
Status = 0
241
Else
242
Message "请设置正确的ID",1
243
End If
244
End Sub
245![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
246
'为自己写完整的 Sql 语句做准备
247
Public Property Let SetSql(ByRef Sql)
248
strSql = ""
249
strSql = Sql
250
End Property
251![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
252
'执行 Sql 语句。返回无集录集的语句
253
Public Sub ExecuteNoQuery()
254
If strSql <> "" Then
255
Command()
256
With objCmd
257
.CommandText = strSql
258
.Execute
259
End With
260
End If
261
End Sub
262![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
263
'执行 Sql 语句。返回有记录集的语句,这里的 objRecordset 应该为一个 Recordset 对象
264
Public Sub ExecuteQuery(ByRef PreArray)
265
Recordset()
266
Command()
267
objCmd.CommandText = strSql
268
Set objRs = objCmd.Execute
269
Response.Write strsql
270
'执行 Sql 语句
271
'为方便前台调用,在这里将在外部生成一个2维数组,故在调用前请在外部声明一个变量
272
' ExecuteQuery
273
If Not objRs.EOF Then PreArray = objRs.GetRows()
274
ClearRecordSet()
275
ClearConnection()
276
ClearCommand()
277
End Sub
278![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
279
Private Sub Class_Terminate()
280
If objConn.State = 1 Then
281
Call ClearConnection()
282
End If
283
On Error Resume Next
284
Call ClearRecord()
285
Call ClearCommand()
286
End Sub
287![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
288![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
289
End Class
290![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
291![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
292![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
293
'=========使用示例
294
Dim test,i
295
Dim t
296
Set test = New Cls_dbOperate
297![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
298
With test
299
.TableName = "NewsCategory"
300
.Fields = "ID|||NewsCateName|||BelongID"
301
' .SetID = 5
302
' .Condition = "ABC = 4"
303
'查询用的
304
.doQuery t
305![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
306
' ==========第二种方式
307
' .SetSql = "Select ID,NewsCateName,BelongID From NewsCategory"
308
' .ExecuteQuery t
309![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
310
'修改用的
311
.SetID = 1
312
.Fields = "BelongID"
313
.FieldsValue = 3
314
.doUpdate
315![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
316
'添加用的
317
.Fields = "NewsCateName|||BelongID"
318
.FieldsValue = "我的测试|||0"
319
.doAdd
320![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
321
'删除时使用
322
.SetID = 68
323
.TableName = "NewsCategory"
324
.doDelete
325![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
326
End With
327
%>
328![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
329
<% If IsArray(t) = True Then %>
330
<table border='1' width='300'>
331
<%
332
For i = 0 To UBound(t,2) %>
333
<tr>
334
<td><%=t(0,i)%></td>
335
<td><%=t(1,i)%></td>
336
<td><%=t(2,i)%></td>
337
</tr>
338
<% Next %>
339
</table>
340
<%
341
Else
342
Response.Write "错误,没有数据"
343
End If
344
%>
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
38
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
39
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
40
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
41
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
42
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
43
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
44
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
45
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
46
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
47
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
48
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
49
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
50
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
51
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
52
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
53
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
54
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
55
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
56
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
57
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
58
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
59
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
60
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
61
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
62
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
63
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
64
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
65
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
66
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
67
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
68
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
69
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
70
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
71
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
72
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
73
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
74
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
75
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
76
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
77
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
78
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
79
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
80
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
81
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
82
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
83
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
84
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
85
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
86
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
87
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
88
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
89
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
90
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
91
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
92
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
93
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
94
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
95
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
96
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
97
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
98
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
99
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
100
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
101
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
102
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
103
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
104
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
105
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
106
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
107
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
108
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
109
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
110
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
111
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
112
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
113
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
114
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
115
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
116
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
117
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
118
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
119
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
120
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
121
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
122
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
123
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
124
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
125
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
126
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
127
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
128
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
129
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
130
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
131
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
132
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
133
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
134
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
135
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
136
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
137
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
138
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
139
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
140
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
141
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
142
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
143
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
144
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
145
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
146
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
147
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
148
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
149
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
150
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
151
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
152
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
153
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
154
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
155
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
156
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
157
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
158
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
159
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
160
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
161
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
162
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
163
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
164
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
165
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
166
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
167
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
168
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
169
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
170
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
171
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
172
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
173
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
174
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
175
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
176
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
177
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
178
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
179
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
180
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
181
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
182
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
183
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
184
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
185
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
186
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
187
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
188
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
189
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
190
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
191
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
192
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
193
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
194
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
195
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
196
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
197
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
198
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
199
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
200
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
201
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
202
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
203
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
204
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
205
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
206
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
207
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
208
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
209
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
210
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
211
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
212
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
213
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
214
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
215
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
216
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
217
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
218
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
219
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
220
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
221
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
222
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
223
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
224
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
225
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
226
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
227
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
228
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
229
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
230
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
231
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
232
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
233
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
234
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
235
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
236
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
237
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
238
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
239
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
240
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
241
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
242
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
243
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
244
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
245
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
246
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
247
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
248
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
249
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
250
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
251
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
252
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
253
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
254
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
255
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
256
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
257
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
258
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
259
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
260
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
261
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
262
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
263
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
264
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
265
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
266
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
267
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
268
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
269
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
270
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
271
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
272
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
273
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
274
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
275
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
276
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
277
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
278
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
279
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
280
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
281
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
282
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
283
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
284
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
285
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
286
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
287
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
288
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
289
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
290
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
291
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
292
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
293
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
294
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
295
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
296
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
297
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
298
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
299
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
300
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
301
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
302
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
303
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
304
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
305
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
306
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
307
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
308
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
309
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
310
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
311
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
312
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
313
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
314
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
315
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
316
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
317
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
318
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
319
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
320
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
321
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
322
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
323
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
324
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
325
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
326
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
327
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
328
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
329
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
330
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
331
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
332
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
333
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
334
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
335
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
336
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
337
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
338
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
339
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
340
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
341
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
342
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
343
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
344
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)