'
' 开始事务回滚
' 准备不同的SQL语句
' 执行SQL
' 提交事务
' 出错则回滚
' 客户端传递的是JSON对象,则服务器端使用e.PlainText接收
' 且客户端ajax传递时必须有method:'post' 及 contentType: 'application/json' 配置
' var dataLs =
' {
' dataSource : 'foxData' , ' 数据源
' tablename : ['tb1','tb2','tb3'], ' 操作的表名
' content : [{字段1:值1,字段2:值2,字段3:值3},{字段1:值1,字段2:值2},{字段1:值1,字段2:值2}] '增加,更新的内容
' fieldType : [{字段1:'expression',字段2:'expression'},{字段3:'expression'}], ' 新增/更新内容的类型是否为表达式 (与字符串的区别,在拼接sql时字符串有单引号,表达式无单引号)
' 名必须包含在content的名中, 可以不全部写
' logicDelete: [0,0,1] ' 是否逻辑删除
' reqType : ['append','update','delete'] ' 操作方式
' tj : ['可用 = 0', 'ID IN (1,2,3)',''] ' 筛选条件
' }
' 客户端准备的数据必须是字典字符串,不能是各种字典,数组的组合, 此方法传递过来,则服务器使用e.Values(key)来处理
'var dataLs = {
'
dataSource : ajaxData.dataSource,
'
tablename : JSON.stringify(ajaxData.tablename),
'
reqType : JSON.stringify(ajaxData.reqType),
'
logicDelete: JSON.stringify(ajaxData.logicDelete),
'
content : JSON.stringify(ajaxData.content),
' fieldType : JSON.stringify(ajaxData.fieldType),
'
tj : JSON.stringify(ajaxData.tj),
'
};
Dim e As RequestEventArgs = Args(0)
' 获取e参数中的所有值
Dim strE As String
Dim eValue As new jarray
Dim eObj As new Jobject
eValue.Add(eObj)
eObj("e参数:") = "e"
eObj("Host") = e.Host
eObj("Port") = e.Port
eObj("Path") = e.Path
Dim nRecord As Integer = 0 ' 记录错误发生在第几行.
' 读取各字典内容
Dim arr As New JArray
'Dim eeObj As JObject = JObject.Parse(strJSON)
Dim strDBS As String ' 数据源
If (e.Values.ContainsKey("dataSource") ) Then
strDBS = e.Values("dataSource")
End If
Dim strReqType As String '表操作方式
Dim arrReqType As JArray
If (e.Values.ContainsKey("reqType") ) Then
strReqType = e.Values("reqType")
arrReqType = JArray.Parse(strReqType)
arr.add(arrReqType)
End If
Dim strTableName As String '操作表名称
Dim arrTableName As JArray
If e.Values.ContainsKey("tablename") Then
strTableName = e.Values("tablename")
arrTableName = JArray.Parse(strTableName )
arr.add(arrTableName)
End If
Dim strLogic As String '是否逻辑删除
Dim arrLogic As JArray
If e.Values.ContainsKey("logicDelete") Then
strLogic = e.Values("logicDelete")
arrLogic = JArray.Parse(strLogic)
arr.add(arrLogic)
End If
Dim strContent As String 'append,update的内容
Dim arrContent As JArray
If e.Values.ContainsKey("content") Then
strContent = e.Values("content")
arrContent = JArray.Parse(strContent)
arr.add(arrContent)
End If
Dim strTJ As String 'update ,delete的条件
Dim arrTJ As JArray
If e.Values.ContainsKey("tj") Then
strTJ = e.Values("tj")
arrTJ = JArray.Parse(strTJ)
arr.add(arrTJ)
End If
Dim strFieldType As String ' update ,append 的 字段值是否表达式
Dim arrFieldType As JArray
If e.Values.ContainsKey("fieldType") Then
strFieldType = e.Values("fieldType")
arrFieldType = JArray.Parse(strFieldType)
arr.add(arrFieldType)
End If
eObj("Values") = arr