📄 importdata.frm
字号:
VERSION 5.00
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Begin VB.Form ImportData
BorderStyle = 3 'Fixed Dialog
Caption = "数据库升级窗口"
ClientHeight = 4275
ClientLeft = 45
ClientTop = 330
ClientWidth = 6030
ControlBox = 0 'False
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 4275
ScaleWidth = 6030
ShowInTaskbar = 0 'False
StartUpPosition = 1 '所有者中心
Begin VB.Frame Frame1
Height = 2055
Left = 90
TabIndex = 7
Top = 1140
Width = 1275
Begin VB.OptionButton Option2
Caption = "选择导入"
Height = 255
Left = 90
TabIndex = 9
Top = 990
Width = 1050
End
Begin VB.OptionButton Option1
Caption = "全部导入"
Height = 300
Left = 90
TabIndex = 8
Top = 435
Width = 1050
End
Begin VB.Label Label2
Caption = "按下Ctrl再单击可多项选择"
ForeColor = &H00C00000&
Height = 690
Left = 150
TabIndex = 10
Top = 1305
Width = 1020
End
End
Begin VB.ListBox List1
Height = 2040
Left = 1515
MultiSelect = 2 'Extended
TabIndex = 6
Top = 1110
Width = 2805
End
Begin MSComctlLib.ProgressBar Pr1
Height = 330
Left = 45
TabIndex = 5
Top = 3840
Width = 5940
_ExtentX = 10478
_ExtentY = 582
_Version = 393216
Appearance = 1
End
Begin VB.TextBox Text1
Height = 360
Left = 60
TabIndex = 3
Top = 570
Width = 4770
End
Begin VB.CommandButton Command3
Caption = "关闭(&C)"
Height = 435
Left = 4440
TabIndex = 2
Top = 2940
Width = 1365
End
Begin VB.CommandButton Command2
Caption = "开始(&I)"
Height = 435
Left = 4455
TabIndex = 1
Top = 2280
Width = 1350
End
Begin VB.CommandButton Command1
Caption = "选择(&S)"
Height = 345
Left = 4950
TabIndex = 0
Top = 585
Width = 870
End
Begin VB.Label Label5
Caption = "当系统操作大量数据时,进度条可能短时停止响应,这是正常现象,不是死机,不必理会!"
ForeColor = &H00C00000&
Height = 975
Left = 4410
TabIndex = 13
Top = 1065
Width = 1530
End
Begin VB.Label Label4
AutoSize = -1 'True
Height = 180
Left = 1425
TabIndex = 12
Top = 3570
Width = 90
End
Begin VB.Label Label3
AutoSize = -1 'True
Caption = "正在导入:"
Height = 180
Left = 270
TabIndex = 11
Top = 3570
Width = 900
End
Begin VB.Label Label1
Caption = " 注意:升级前请一定要备份原始数据文件!请指定要升级的备份文件!"
ForeColor = &H000000FF&
Height = 435
Left = 45
TabIndex = 4
Top = 120
Width = 5940
End
End
Attribute VB_Name = "ImportData"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim NdMd As Database, MdbR As Recordset
Dim Dbase As Database, YuanTable As TableDefs, MuTable As TableDefs
Private Sub Command1_Click()
Dim fPath As String, FileType As String
FileType = "*.mdb"
fPath = ShowOpen(Me, FileType)
If IsNull(fPath) Or fPath = "" Then
Text1 = ""
Else
Text1 = fPath
If Mid(Trim(fPath), Len(Trim(fPath)) - 3, 3) <> "Mdb" Then
MsgBox "你选择的不是mdb数据库,请重试!", vbCritical
Else
Option1.Enabled = True
Option2.Enabled = True
Call TableShu(fPath)
End If
End If
End Sub
Private Sub Command2_Click()
On Error Resume Next
Dim m As Integer, n As Integer
Dim Yuan As String, MuBiao As String, MuPath As String
Dim Sign As Boolean
Label3.Visible = True
Screen.MousePointer = 11
Command2.Enabled = False
Command3.Enabled = False
MuPath = App.Path & "\data\Eletricity.Mdb"
'MuPath = "e:\vb\daoru\Eletricity.Mdb"
Set NdMd = DBEngine.Workspaces(0).OpenDatabase(MuPath)
Set MuTable = NdMd.TableDefs
Pr1.Visible = True
If Option1.Value = True Then
Pr1.Min = 0
Pr1.Max = MuTable.Count
For m = 0 To Pr1.Max - 1
MuBiao = MuTable(m).Name
For n = 0 To YuanTable.Count - 1
If YuanTable(n).Name = MuBiao Then
Yuan = YuanTable(n).Name
Sign = True
Exit For
End If
Next
' If MuBiao = "电价档案" Then Sign = False
If Sign Then
Label4.Caption = Yuan
NdMd.Execute "delete from " & MuBiao & ""
Dbase.Execute "insert into " & MuBiao & " in '" & MuPath & "' select * from " & Yuan & ""
Sign = False
End If
Pr1.Value = Pr1.Value + 1
Next
End If
If Option2.Value = True Then
Pr1.Min = 0
Pr1.Max = List1.SelCount
For m = 0 To List1.ListCount - 1
If List1.Selected(m) = True Then
Yuan = YuanTable(m).Name
For n = 0 To MuTable.Count - 1
If MuTable(n).Name = Yuan Then
MuBiao = MuTable(n).Name
Sign = True
Exit For
End If
Next
' If MuBiao = "电价代码" Then Sign = False
If Sign Then
Label4.Caption = Yuan
NdMd.Execute "delete from " & MuBiao & ""
Dbase.Execute "insert into " & MuBiao & " in '" & MuPath & "' select * from " & Yuan & ""
Sign = False
End If
Pr1.Value = Pr1.Value + 1
End If
Next
End If
Label3.Visible = False
Label4.Caption = "导入表操作完成!"
Screen.MousePointer = 0
MsgBox "数据完整导入,若要正常运行系统,请先退出系统然后再重新!", vbInformation
Unload Me
End Sub
Private Sub Command3_Click()
Unload Me
End Sub
Private Sub Form_Load()
List1.Enabled = False
Command2.Enabled = False
Option1.Value = True
Option1.Enabled = False
Option2.Enabled = False
Label2.Enabled = False
Pr1.Visible = False
Label3.Visible = False
End Sub
Sub TableShu(LuJin As String)
Dim i As Integer
List1.Clear
Set Dbase = OpenDatabase(Text1)
Set YuanTable = Dbase.TableDefs
For i = 0 To YuanTable.Count - 1
List1.AddItem YuanTable(i).Name
Next
Command2.Enabled = True
End Sub
Private Sub Option1_Click()
If Option1.Value = True Then
List1.Enabled = False
Label2.Enabled = False
End If
End Sub
Private Sub Option2_Click()
If Option2.Value = True Then
List1.Enabled = True
Label2.Enabled = True
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -