求助:VB中如何删除SQL临时报表?
vb吧
全部回复
仅看楼主
level 1
tydnzby 楼主
2016年05月13日 03点05分 1
level 1
tydnzby 楼主
代码:
Dim con As New ADODB.Connection
Dim rs1, rs2 As New ADODB.Recordset
Dim Sql, Sql1 As String
Private Sub Command1_Click()
con.ConnectionString = "DRIVER=SQL Server;SERVER=A-201603021730;UID=sa;PWD= ;DATABASE=AIS20160331192354"
If con.State = 1 Then con.Close
con.Open
fdate = DTPicker1
Sql = "SELECT identity(int,1,1) as id,t1.FBillNo as '单据编号', t3.fname as '客户' , t1.FDate as '日期'," _
& " t4.fname as '商品', t2.FQty as '数量',T2.FAMOUNT AS '总金额' " _
& "into #tmp " _
& "FROM SEOrder AS t1 " _
& "INNER JOIN SEOrderEntry AS t2 ON t1.FInterID = t2.FInterID " _
& " left join t_Organization as t3 on t1.FCustID = t3.FItemID " _
& " left join t_ICItem as t4 on t2.FItemID = t4.FItemID " _
& "where t1.fdate= ' " & fdate & " '"
Sql1 = "select * from #tmp"
con.CursorLocation = adUseClient
Set rs1 = New ADODB.Recordset
Set rs2 = New ADODB.Recordset
rs1.Open Sql, con, 1
rs2.Open Sql1, con, 1
If rs2.BOF Then
MsgBox "没有符合条件的订单!"
Else
Set DataGrid1.DataSource = rs2
DataGrid1.Columns(0).Width = 1200
DataGrid1.Columns(1).Width = 700
DataGrid1.Columns(2).Width = 1000
DataGrid1.Columns(3).Width = 600
DataGrid1.Columns(4).Width = 800
DataGrid1.Columns(5).Width = 900
Text3.SetFocus
End If
Command1.Enabled = False
Command2.Enabled = True
End Sub
Private Sub Command2_Click()
Command1.Enabled = True
Command2.Enabled = False
rs2.Close
con.Close
End Sub
2016年05月13日 03点05分 2
level 13
ConnSQL.Execute "drop table Tmp"
CBM666 VB编程示例教材 小部份的截图样品访问链接 QQ:138449666 微信: cbm666-sam
http://xiangce.baidu.com/picture/album/list/47a5fb2903bdcedd76f9915fc59608d858e99a0a
2016年05月13日 04点05分 3
非常感谢,那有办法判断临时表是否存在吗?
2016年05月14日 08点05分
吧务
level 13
cWJ = 绝对路径和文件名
If Dir(cWJ, vbhidden) <> "" Then
' …… ' cWJ 文件存在
Else
' …… ' cWJ 文件不存在
End If
2016年05月14日 08点05分 4
如果你的临时表是一个磁盘文件,就可以这样判断。
2016年05月14日 08点05分
非常感谢,但不是文件,只是一个临时表
2016年05月14日 08点05分
一般来说,临时表都是用磁盘文件的方式建立在数据库的外面,并不建立在数据库中。建立在数据库中的表,估计不是什么临时表。
2016年05月14日 13点05分
1