📄 frminit.frm
字号:
VERSION 5.00
Begin VB.Form frmInit
BackColor = &H80000005&
Caption = "初始化数据库"
ClientHeight = 7380
ClientLeft = 60
ClientTop = 405
ClientWidth = 9780
ForeColor = &H80000008&
Icon = "frmInit.frx":0000
MDIChild = -1 'True
ScaleHeight = 7380
ScaleWidth = 9780
Begin VB.Frame Frame1
BackColor = &H80000005&
BorderStyle = 0 'None
Height = 6855
Left = 240
TabIndex = 0
Top = 240
Width = 9135
Begin VB.Frame FrameInit
BackColor = &H80000005&
Caption = "初始化数据库(&I)"
Height = 5175
Left = 960
TabIndex = 3
Top = 480
Width = 7935
Begin VB.TextBox TextSql
Appearance = 0 'Flat
Height = 4575
Left = 240
MultiLine = -1 'True
ScrollBars = 2 'Vertical
TabIndex = 4
ToolTipText = "程序运行所必需的数据表,您可以在服务器单独运行这些SQL语句"
Top = 360
Width = 7335
End
End
Begin VB.CommandButton cmdOk
BackColor = &H80000005&
Caption = "确 定(&O)"
Height = 375
Left = 2040
Style = 1 'Graphical
TabIndex = 2
Top = 6000
Width = 2775
End
Begin VB.CommandButton cmdBack
BackColor = &H80000005&
Caption = "< 返 回(&B)"
Height = 375
Left = 5640
Style = 1 'Graphical
TabIndex = 1
Top = 6000
Width = 1455
End
End
End
Attribute VB_Name = "frmInit"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim SQLdrop As String
Dim SQLcreate As String
Private Sub cmdBack_Click()
mdiFrm.stb.SimpleText = "就绪"
Unload Me
End Sub
Private Sub cmdOk_Click()
Dim isOk As Integer
Dim SQL As String
isOk = MsgBox("此操作将执行上面的SQL语句,初始化数据库.您以前所添加的数据将被删除." & vbCrLf & "您确定要初始化么?", vbOKCancel + vbQuestion, "确定?")
If isOk = vbOK Then
cmdOk.Enabled = False
cmdOk.Caption = "正在初始化..."
'On Error GoTo exeErr
'删除已经存在的表
SQLdrop = "drop table jc_c;"
On Error Resume Next
cnn.Execute (SQLdrop)
SQLdrop = "drop table jc_s;"
On Error Resume Next
cnn.Execute (SQLdrop)
SQLdrop = "drop table jc_sc;"
On Error Resume Next
cnn.Execute (SQLdrop)
'重新创建表
SQLcreate = "create table jc_c(" & _
"cno char(9) not null, " & _
"cname varchar(40) null, " & _
"tname varchar(10) null, " & _
"ccredit int null, " & _
"Primary Key(cno)); "
On Error GoTo exeErr
cnn.Execute (SQLcreate)
SQLcreate = "create table jc_s(" & _
"sno char(9) not null, " & _
" sname varchar(10) null, " & _
" sex char(2) null, " & _
" age int null, " & _
" dept varchar(50) null, " & _
" Primary Key(sno));"
On Error GoTo exeErr
cnn.Execute (SQLcreate)
SQLcreate = "create table jc_sc(" & _
"sno char(9) not null, " & _
" cno char(9) not null, " & _
" grade decimal(5,2), " & _
" Primary Key(sno, cno));"
On Error GoTo exeErr
cnn.Execute (SQLcreate)
'插入初始数据
SQLcreate = "insert into jc_s(sno,sname,sex,age,dept) values('402400001','李萍','女',22,'计算机'); " & _
"insert into jc_s(sno,sname,sex,age,dept) values('402400002','刘德华','男',22,'计算机'); " & _
"insert into jc_s(sno,sname,sex,age,dept) values('200213808','胡景','女',22,'计算机'); " & _
"insert into jc_s(sno,sname,sex,age,dept) values('200516800','韭菜','男',22,'计算机'); " & _
"insert into jc_s(sno,sname,sex,age,dept) values('200526801','一号美女','女',21,'服装学院'); " & _
"insert into jc_s(sno,sname,sex,age,dept) values('200526802','李雪','女',20,'服装学院'); " & _
"insert into jc_s(sno,sname,sex,age,dept) values('200236804','超级美女','女',24,'计算机'); " & _
"insert into jc_s(sno,sname,sex,age,dept) values('405400002','胡歌','男',21,'计算机'); "
On Error GoTo exeErr
cnn.Execute (SQLcreate)
SQLcreate = "insert into jc_c(cno,cname,tname,ccredit) values('2005TP001','数据库','张老师',3); " & _
"insert into jc_c(cno,cname,tname,ccredit) values('2005TP002','操作系统','王老师',5); " & _
"insert into jc_c(cno,cname,tname,ccredit) values('2005TP003','微机原理','田老师',4); " & _
"insert into jc_c(cno,cname,tname,ccredit) values('2005TP004','数据结构','田老师',7); " & _
"insert into jc_c(cno,cname,tname,ccredit) values('2005TP005','汇编语言','胡老师',8); " & _
"insert into jc_c(cno,cname,tname,ccredit) values('2005TP006','计算机图形学','胡老师',9); "
On Error GoTo exeErr
cnn.Execute (SQLcreate)
SQLcreate = "insert into jc_sc(sno,cno,grade) values('200213808','2005TP001',82.5); " & _
"insert into jc_sc(sno,cno,grade) values('200213808','2005TP002',94.62); " & _
"insert into jc_sc(sno,cno,grade) values('200516800','2005TP002',97); " & _
"insert into jc_sc(sno,cno,grade) values('402400002','2005TP003',59); " & _
"insert into jc_sc(sno,cno,grade) values('405400002','2005TP004',62); " & _
"insert into jc_sc(sno,cno,grade) values('200236804','2005TP006',83); " & _
"insert into jc_sc(sno,cno,grade) values('200526801','2005TP003',54); " & _
"insert into jc_sc(sno,cno,grade) values('200526802','2005TP003',72); "
On Error GoTo exeErr
cnn.Execute (SQLcreate)
Call showMsg("初 始 化 成 功 !", 1)
cmdOk.Caption = "初始化完成"
Exit Sub
exeErr:
Call showMsg("初 始 化 失 败 !请检查数据库 !", 0)
End If
End Sub
Private Sub Form_Activate()
Call openSqlFile
End Sub
Private Sub Form_Resize()
'使所有框架居中
With Me
Frame1.Left = (.ScaleWidth - Frame1.Width) / 2
Frame1.Top = (.ScaleHeight - Frame1.Height) / 2
End With
End Sub
Private Sub Form_Unload(Cancel As Integer)
mdiFrm.stb.SimpleText = "就绪"
Unload Me
End Sub
Private Sub openSqlFile()
Dim fileName As String
Dim strLine As String
fileName = App.Path & "\jc_tables.sql"
On Error GoTo showErr
Open fileName For Input As #1
While Not EOF(1)
Line Input #1, strLine
TextSql.Text = TextSql.Text & strLine & vbCrLf
Wend
Close 1
Exit Sub
showErr:
Call showMsg("无法打开SQL文件,请确保SQL文件 jc_tables.sql 和本应用程序在同一目录下。", 0)
Call cmdBack_Click
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -