Set rp = Conn.Execute(coom)
cool = \* from 排课表 where [上课时间]='\+ rt(\上课时间\+ \[教师姓名]='\教师姓名\
Set rq = Conn.Execute(cool)
If rp.EOF = True And rq.EOF = True Then sqlll = \教室信息表\ Set rm = Conn.Execute(sqlll) Do Until rm.EOF = True
coon = \排课表 where [上课时间]='\上课时间\上课教室]='\教室名称\
Set rn = Conn.Execute(coon) If rn.EOF = True Then
SQL = \into 排课表 ([课程名称],[教师姓名],[上课教室],[班级编号],[上课时间]) values ('\课程名称\教师姓名\教室名称\Rs(\班级编号\上课时间\ Set rq = Conn.Execute(SQL) Exit Do Else
rm.MoveNext End If Loop Exit Do Else
rt.MoveNext End If Loop i = i - 1 Loop Rs.MoveNext Loop
ProgressBar1.Value = ProgressBar1.Value + 1 DoEvents Loop
MsgBox \自动排课已完成\提示\End Sub
Private Sub Timer1_Timer() If dlaytime >= 100 Then 'Timer1.Enabled = False Load frmLogin frmLogin.Show Else
dlaytime = dlaytime + 1
P1.Value = dlaytime End If End Sub
5、查看手动调课窗口及代码
Dim Conn As New ADODB.Connection '连接变量 Dim SqlString As String '查询字符串 Dim Connstring As String
Private Sub Command2_Click() Form11.Hide Form3.Show End Sub
Private Sub Command5_Click()
Dim Conn As New ADODB.Connection '连接变量 Dim SqlString As String '查询字符串 Dim Connstring As String '连接字符串 Dim RS1 As New ADODB.Recordset '记录集变量 Dim Cmd As New ADODB.Command
Connstring = \
& \ 'SQL Server普通安全模式建立到Pubs数据库的连接的连接字符串
'设置连接字符串 With Conn
.ConnectionString = Connstring '给ConnectionString属性赋值 .ConnectionTimeout = 10
.Open '给连接的ConnectionString属性赋值,然后使用求带参数的Open方法打开连接 End With
Set Cmd.ActiveConnection = Conn '设置Command对象的ActiveConnection为某个打开
的连接
SqlString = \课程名称,教师姓名,上课教室,班级编号,上课时间 from 排课表 \ '形成查询字符串1
Cmd.CommandText = SqlString '设置Command对象执行的命令字符串
Cmd.CommandType = adCmdText '设置命令类型,表示CommandText中为一命令文本 ,童P188
Set RS1 = Cmd.Execute '执行命令得到一个结果记录集 Call ShowData(RS1, MSFlexGrid1) '调用过程显示记录集中的数据 End Sub
Private Sub Form_Load()
constr = \
& \ 'SQL Server普通安全模式建立到Pubs数据库的连接的连接字符串 '定义数据库连接 With Conn
.ConnectionString = constr '给ConnectionString属性赋值 .ConnectionTimeout = 10
.Open '给连接的ConnectionString属性赋值,然后使用求带参数的Open方法打开连接 End With
MsgBox (\连接成功\End Sub
Private Sub Command1_Click() '调整教室 Dim rt As New ADODB.Recordset
If (Text1.Text = \Then
MsgBox (\请输入完整信息\Else
Set Rs = New ADODB.Recordset SQL = \排课表\Set Rs = Conn.Execute(SQL)
If Rs(\上课教室\
MsgBox (\该时间段该教室已被占用,请重新选择\ Text4.Text = \ Text5.Text = \Else
Set Rs = New ADODB.Recordset
SQL = \排课表 set [上课教室]='\课程名称]='\\教师姓名]='\上课时间]='\Set Rs = Conn.Execute(SQL) MsgBox (\教室调整成功\ Text1.Text = \ Text2.Text = \ Text3.Text = \ Text4.Text = \ Text5.Text = \
End If End If End Sub
Private Sub Command3_Click() '调整时间 Dim rt As New ADODB.Recordset
If (Text1.Text = \Then
MsgBox (\请输入完整信息\Else
Set Rs = New ADODB.Recordset SQL = \排课表\Set Rs = Conn.Execute(SQL)
If Rs(\上课时间\
MsgBox (\该教室该时间段已被占用,请重新选择\ Text4.Text = \ Text5.Text = \ Else
Set Rs = New ADODB.Recordset
SQL = \排课表 set [上课时间]='\课程名称]='\+ \教师姓名]='\教室名称]='\ Set Rs = Conn.Execute(SQL) MsgBox (\时间调整成功\ 'Adodc1.Refresh Text1.Text = \ Text2.Text = \ Text3.Text = \ Text4.Text = \ Text5.Text = \End If End If End Sub
Private Sub ShowData(Rs As ADODB.Recordset, Dgrid As MSFlexGrid) '该过程用来在Dgrid网格中显示记录集RS中的内容 Dim RowNum As Integer
RowNum = 1 '代表MsFlexGrid控件的行数 Dgrid.Rows = RowNum '设置MsFlexGrid控件的行数 Dgrid.Cols = Rs.Fields.Count '设置MsFlexGrid控件的列数 For j = 0 To Rs.Fields.Count - 1 '遍列所有列
Dgrid.TextMatrix(0, j) = Rs.Fields(j).Name '把列名显示在设置MsFlexGrid控件的首行
Next j
Do While Not Rs.EOF '如果不是记录集的结尾 RowNum = RowNum + 1 '行数加1
Dgrid.Rows = RowNum '设置MsFlexGrid控件的行数
For j = 0 To Rs.Fields.Count - 1 '遍列所有列
If Not IsNull(Rs.Fields(j).Value) Then '如果列中的数据不为空,切记不能用如 if Var1=Null来判断变量Var1的值是否为Null
Dgrid.TextMatrix(RowNum - 1, j) = Rs.Fields(j).Value '把列的数据显示在MsFlexGrid的相应网格中 End If Next j
Rs.MoveNext '记录指针下移 Loop End Sub