📄 movedata.asp
字号:
RelateInfoSourceField = TempSaveToFlushSourceField(1)
RelateInfoObjectTable = TempSaveToFlushObjectField(0)
RelateInfoObjectField = TempSaveToFlushObjectField(1)
if LCase(RelateInfoSourceTable) = LCase(STable) And RelateInfoSourceTable = RelateInfoObjectTable then
if LCase(RelateInfoSourceField) = LCase(TempOField) then
if ValueOfSaveToFlushStr = "" then
ValueOfSaveToFlushStr = RelateInfoSourceField & ":" & SourceRS(RelateInfoSourceField) & "," & RelateInfoObjectField & ":" & CStr(TempUserData) & ":" & ObjectFieldType
else
ValueOfSaveToFlushStr = ValueOfSaveToFlushStr & "$$$" & RelateInfoSourceField & ":" & SourceRS(RelateInfoSourceField) & "," & RelateInfoObjectField & ":" & CStr(TempUserData) & ":" & ObjectFieldType
end if
end if
elseif LCase(RelateInfoSourceTable) = LCase(STable) And RelateInfoSourceTable <> RelateInfoObjectTable then
Dim NotSameTableRelateStr
if LCase(RelateInfoSourceField) = LCase(TempOField) then
if NotSameTableRelateStr = "" then
NotSameTableRelateStr = SourceRS(RelateInfoSourceField) & ":" & RelateInfoObjectTable & ":" & RelateInfoObjectField & ":" & TempUserData & ":" & ObjectFieldType
else
NotSameTableRelateStr = NotSameTableRelateStr & "$$$" & SourceRS(RelateInfoSourceField) & ":" & RelateInfoObjectTable & ":" & RelateInfoObjectField & ":" & TempUserData & ":" & ObjectFieldType
end if
end if
end if
Next
Next
'Response.End
SourceRS.MoveNext
ObjectRS.UpDate
if Err.Number <> 0 then
ResponseErrorInfo = Replace(Replace(Err.Description,"'",""),"""","")
Set SourceRS = Nothing
Set ObjectRS = Nothing
Exit Function
else
MoveDataNum = MoveDataNum + 1
end if
Loop
if DelSource = "1" then
SourceConn.Execute("Delete from " & STable & "")
end if
if NotSameTableRelateStr <> "" then '处理不同表之间的关联
UpdateConn.Execute("Insert into FlushTable(DBSOID,OldValue,NewValue) values('" & MainID & "','" & NotSameTableRelateStr & "','')")
end if
if ValueOfSaveToFlushStr <> "" then '处理相同表之间的关联
Dim ValueOfSaveToFlushStrArray,FlushArray,FlushSourceArray,FlushObjectArray
ValueOfSaveToFlushStrArray = Split(ValueOfSaveToFlushStr,"$$$")
for SaveToFlushLoopVar = LBound(ValueOfSaveToFlushStrArray) to UBound(ValueOfSaveToFlushStrArray)
FlushArray = Split(ValueOfSaveToFlushStrArray(SaveToFlushLoopVar),",")
FlushSourceArray = Split(FlushArray(0),":")
FlushObjectArray = Split(FlushArray(1),":")
if InStr(LCase(FlushObjectArray(2)),"int") <> 0 then
ExecuteSql = "Update " & OTable & " Set " & FlushObjectArray(0) & "=" & FlushObjectArray(1) & " where " & FlushObjectArray(0) & "=" & FlushSourceArray(1) & ""
else
ExecuteSql = "Update " & OTable & " Set " & FlushObjectArray(0) & "='" & FlushObjectArray(1) & "' where " & FlushObjectArray(0) & "='" & FlushSourceArray(1) & "'"
end if
ObjectConn.Execute(ExecuteSql)
Next
end if
end if
End Function
Function GetFieldInfo()
Dim RsFieldObj,TempSFieldStr,TempOFieldStr
TempSFieldStr = ""
TempOFieldStr = ""
Set RsFieldObj = UpdateConn.Execute("Select * from FieldSO where TableSOID=" & TableSOID & "")
do while Not RsFieldObj.Eof
if TempSFieldStr = "" then
TempSFieldStr = RsFieldObj("SField")
else
TempSFieldStr = TempSFieldStr & "$$$" & RsFieldObj("SField")
end if
if TempOFieldStr = "" then
TempOFieldStr = RsFieldObj("OField")
else
TempOFieldStr = TempOFieldStr & "$$$" & RsFieldObj("OField")
end if
RsFieldObj.MoveNext
Loop
Set RsFieldObj = Nothing
if Not (TempSFieldStr = "" OR TempOFieldStr = "") then
SFieldArray = Split(TempSFieldStr,"$$$")
OFieldArray = Split(TempOFieldStr,"$$$")
else
SFieldArray = Array()
OFieldArray = Array()
end if
Dim RSRelateInfoObj
Set RSRelateInfoObj = UpdateConn.Execute("Select * from RelateInfo where DBSOID='" & MainID & "'")
do while Not RSRelateInfoObj.Eof
if RelateInfoArray = "" then
RelateInfoArray = RSRelateInfoObj("SRelate") & "---" & RSRelateInfoObj("ORelate")
else
RelateInfoArray = RelateInfoArray & "$$$" & RSRelateInfoObj("SRelate") & "---" & RSRelateInfoObj("ORelate")
end if
RSRelateInfoObj.MoveNext
Loop
Set RSRelateInfoObj = Nothing
if RelateInfoArray <> "" then
RelateInfoArray = Split(RelateInfoArray,"$$$")
else
RelateInfoArray = Array()
end if
End Function
Function GetTableInfo()
Dim RsTableObj
Set RsTableObj = Server.CreateObject("ADODB.RecordSet")
RsTableObj.Open "Select * from TableSO where DBSOID='" & MainID & "'",UpdateConn,1,1
if Not RsTableObj.Eof then
RsTableObj.Move TableNo - 1
if RsTableObj.Eof then
GetTableInfo = False
Exit Function
end if
STable = RsTableObj("STable")
OTable = RsTableObj("OTable")
TableSOID = RsTableObj("ID")
GetTableInfo = True
else
GetTableInfo = False
end if
Set RsTableObj = Nothing
End Function
Function GetDBInfo()
Dim RsUpdateObj
if MainID = "" then
GetDBInfo = False
Exit Function
end if
Set RsUpdateObj = UpdateConn.Execute("Select * from DBSO where MainID='" & MainID & "'")
if Not RsUpdateObj.Eof then
SourceDBType = RsUpdateObj("SourceDBType")
SServer = RsUpdateObj("SServer")
SourceDB = RsUpdateObj("SourceDB")
SUser = RsUpdateObj("SUser")
SPassWord = RsUpdateObj("SPassWord")
ObjectDBType = RsUpdateObj("ObjectDBType")
OServer = RsUpdateObj("OServer")
ObjectDB = RsUpdateObj("ObjectDB")
OUser = RsUpdateObj("OUser")
OPassWord = RsUpdateObj("OPassWord")
GetDBInfo = True
else
GetDBInfo = False
end if
Set RsUpdateObj = Nothing
End Function
Function GetConnStr(DBType,DBServer,DBName,DBUser,DBPassWord)
if DBType = 1 then
GetConnStr = "Provider=SQLOLEDB.1;Persist Security Info=False;Server=" & DBServer & ";User ID=" & DBUser & ";Password=" & DBPassWord & ";Database=" & DBName & ";"
else
if DBName = "1" then
GetConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBServer & ";Jet OLEDB:Database Password=" & DBPassWord & ";Persist Security Info=False"
else
GetConnStr = "DBQ=" + server.mappath(DBServer) + ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
end if
end if
End Function
Function GetRS(ConnObj,Table,Flag)
Dim TempRS
On Error Resume Next
Set TempRS = Server.CreateObject("ADODB.RecordSet")
if Flag then
TempRS.Open "Select * from " & Table,ConnObj,3,3
else
TempRS.Open "Select * from " & Table & " where 1=0",ConnObj,3,3
end if
Set GetRS = TempRS
Set TempRS = Nothing
if Err.Number <> 0 then
ObjectFlag = False
Set GetRS = Nothing
else
ObjectFlag = True
end if
End Function
Function GetConn(ConnStr)
Dim TempConn
On Error Resume Next
Set TempConn = Server.CreateObject("ADODB.Connection")
TempConn.Open ConnStr
Set GetConn = TempConn
Set TempConn = Nothing
if Err.Number <> 0 then
ObjectFlag = False
Set GetConn = Nothing
else
ObjectFlag = True
end if
End Function
Sub ShowInfo(InfoStr)
Response.Write(InfoStr)
End Sub
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -