Dim dt1 As DataTable = DataTables("表A")
Dim dt2 As DataTable = DataTables("表B")
Dim sql As String = ""
Dim s1,s2 As String
For Each dc As DataCol In dt1.datacols
If dc.Expression = "" Then
s1 &= "{" & dt1.name & "}.[" & dc.name & "],"
s2 &= "'' as {" & dt1.name & "}.[" & dc.name & "],"
End If
Next
For Each dc As DataCol In dt2.datacols
If dc.Expression = "" Then
s1 &= "'' as {" & dt2.name & "}.[" & dc.name & "],"
s2 &= "{" & dt2.name & "}.[" & dc.name & "],"
End If
Next
sql &= "select " & s1.trim(",") & " fr om {" & dt1.name & "}"
sql &= " unio n all Select " & s2.trim(",") & " fr om {" & dt2.name & "}"
output.show(sql)
select {表A}.[第一列],{表A}.[第二列],{表A}.[第三列],{表A}.[第四列],{表A}.[第五列],{表A}.[第六列],{表A}.[第七列],{表A}.[第八列],{表A}.[第九列],'' as {表B}.[第一列],'' as {表B}.[第二列],'' as {表B}.[第三列],'' as {表B}.[第四列],'' as {表B}.[第五列],'' as {表B}.[第六列],'' as {表B}.[第七列],'' as {表B}.[第八列],'' as {表B}.[第九列],'' as {表B}.[第十列] fr om {表A} unio n all Select '' as {表A}.[第一列],'' as {表A}.[第二列],'' as {表A}.[第三列],'' as {表A}.[第四列],'' as {表A}.[第五列],'' as {表A}.[第六列],'' as {表A}.[第七列],'' as {表A}.[第八列],'' as {表A}.[第九列],{表B}.[第一列],{表B}.[第二列],{表B}.[第三列],{表B}.[第四列],{表B}.[第五列],{表B}.[第六列],{表B}.[第七列],{表B}.[第八列],{表B}.[第九列],{表B}.[第十列] fr om {表B}
.NET Framework 版本:2.0.50727.3655
Foxtable 版本:2017.10.16.1
错误所在事件:
详细错误信息:
SELECT 子句中包含一个保留字、拼写错误或丢失的参数,或标点符号不正确。
还是没搞清楚 用法
老师和再给指点下
故意在表A 删除第十列 列类型也有不一致的情况
[此贴子已经被作者于2017/10/22 22:37:40编辑过]