学生信息管理系统的收获
2014-07-31 20:26
274 查看
一、防止SQL输入
所谓SQL输入就是在登陆时在用户名那输入一条sql语句,使数据库被进入,黑客可以通过这种方式查看或修改数据库。
再输入时会先输入“ ‘ ”,所以有了下面的防止方法!
If txtusername.Text = "'" Then
MsgBox "用户名非法!", vbOKOnly + vbExclamation, "警告"
txtusername.SetFocus
txtusername.Text = ""
Exit Sub
End If
二、当数据完全删除时提示添加数据
源码在执行修改信息的窗体时,当数据完全删除时会报错,其错误原因是游标指到了空的地方。所以加入了一下的限制。
If objrs.EOF Then
str = MsgBox("无数据了!是否需要添加?", vbOKCancel, "删除当前记录")
' MsgBox "", vbOKOnly + vbExclamation, "提示"
If str = vbOK Then
frmAddsinfo.Show
Else
Unload Me
End If
三、入学年龄要大于出生年龄
源码中对入学年龄和出生年龄的格式有限制,可是对出生年龄和入学年龄的大小没限制。
用下面简单的代码即可限制。
If txtRudate.Text < txtBorndate.Text Then
MsgBox "入校日期小于出生日期!", vbOKOnly + vbExclamation, "警告"
Exit Sub
End If
四、在设置课程的不重复
在设置课程的窗体中,课程可以重复添加,这是不合理的,加入下面代码即可限制
Dim i, j As Long
For i = 0 To listSelectcourse.ListCount - 1
For j = listSelectcourse.ListCount - 1 To i + 1 Step -1
If listSelectcourse.List(j) = listSelectcourse.List(i) Then
Dim m As Long
m = MsgBox("课程重复!是否继续添加!!", vbOKOnly + vbExclamation, "警告")
If m = vbYes Then
End
Else
listSelectcourse.RemoveItem j
End If
End If
Next j
Next i
If (listAllcourse.ListIndex <> -1) Then
listSelectcourse.AddItem listAllcourse.List(listAllcourse.ListIndex)
listAllcourse.RemoveItem listAllcourse.ListIndex
End If
五、用dsn和sql两种方法连接数据库
Dsn连接数据库
ConnectString ="FileDSN=studentinfo.dsn;UID=sa;PWD=TGB520;"
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Set cnn = New ADODB.Connection
cnn.Open ConnectString
cnn.Execute SQL
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, adOpenKeyset,adLockOptimistic
Set ExecuteSQL = rst
Sql连接数据库
Public Const strCn As String = "Provider=SQLOLEDB.1;Password=TGB520;PersistSecurity Info=True;User ID=sa;Initial Catalog=Student;DataSource=192.168.26.42"
Dim objcn As NewConnection
Dim objrs As NewRecordset
objcn.Open strCn
objrs.ActiveConnection =objcn
With objrs
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockOptimistic
End With
objrs.Open txtSQL
这就是我在敲学生信息管理系统里的收获,敬请斧正!
所谓SQL输入就是在登陆时在用户名那输入一条sql语句,使数据库被进入,黑客可以通过这种方式查看或修改数据库。
再输入时会先输入“ ‘ ”,所以有了下面的防止方法!
If txtusername.Text = "'" Then
MsgBox "用户名非法!", vbOKOnly + vbExclamation, "警告"
txtusername.SetFocus
txtusername.Text = ""
Exit Sub
End If
二、当数据完全删除时提示添加数据
源码在执行修改信息的窗体时,当数据完全删除时会报错,其错误原因是游标指到了空的地方。所以加入了一下的限制。
If objrs.EOF Then
str = MsgBox("无数据了!是否需要添加?", vbOKCancel, "删除当前记录")
' MsgBox "", vbOKOnly + vbExclamation, "提示"
If str = vbOK Then
frmAddsinfo.Show
Else
Unload Me
End If
三、入学年龄要大于出生年龄
源码中对入学年龄和出生年龄的格式有限制,可是对出生年龄和入学年龄的大小没限制。
用下面简单的代码即可限制。
If txtRudate.Text < txtBorndate.Text Then
MsgBox "入校日期小于出生日期!", vbOKOnly + vbExclamation, "警告"
Exit Sub
End If
四、在设置课程的不重复
在设置课程的窗体中,课程可以重复添加,这是不合理的,加入下面代码即可限制
Dim i, j As Long
For i = 0 To listSelectcourse.ListCount - 1
For j = listSelectcourse.ListCount - 1 To i + 1 Step -1
If listSelectcourse.List(j) = listSelectcourse.List(i) Then
Dim m As Long
m = MsgBox("课程重复!是否继续添加!!", vbOKOnly + vbExclamation, "警告")
If m = vbYes Then
End
Else
listSelectcourse.RemoveItem j
End If
End If
Next j
Next i
If (listAllcourse.ListIndex <> -1) Then
listSelectcourse.AddItem listAllcourse.List(listAllcourse.ListIndex)
listAllcourse.RemoveItem listAllcourse.ListIndex
End If
五、用dsn和sql两种方法连接数据库
Dsn连接数据库
ConnectString ="FileDSN=studentinfo.dsn;UID=sa;PWD=TGB520;"
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Set cnn = New ADODB.Connection
cnn.Open ConnectString
cnn.Execute SQL
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, adOpenKeyset,adLockOptimistic
Set ExecuteSQL = rst
Sql连接数据库
Public Const strCn As String = "Provider=SQLOLEDB.1;Password=TGB520;PersistSecurity Info=True;User ID=sa;Initial Catalog=Student;DataSource=192.168.26.42"
Dim objcn As NewConnection
Dim objrs As NewRecordset
objcn.Open strCn
objrs.ActiveConnection =objcn
With objrs
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockOptimistic
End With
objrs.Open txtSQL
这就是我在敲学生信息管理系统里的收获,敬请斧正!
相关文章推荐
- 【学生信息管理系统 5】:开始、过程、结束、收获
- 【学生信息管理系统 5】:开始、过程、结束、收获
- 学生信息管理系统
- 【原创视频教程】学生信息管理系统1--登陆
- 【原创视频教程】学生信息管理系统5--学员成绩管理
- 命名规范不只是增加可读性!(实例:asp.net C#学生信息管理系统)
- 【原创视频教程】学生信息管理系统6--学员信息管理(完结篇)
- 学生信息管理系统简单模拟(C语言实现)
- 【原创视频教程】学生信息管理系统3--学员添加
- 【原创视频教程】学生信息管理系统5--学员成绩管理
- 【原创视频教程】学生信息管理系统4--成绩添加
- [VB.NET源码]学生信息管理系统
- 【原创视频教程】学生信息管理系统1--登陆
- 【原创视频教程】学生信息管理系统6--学员信息管理(完结篇)
- 学生学籍信息管理系统
- 学生信息管理系统
- 【原创视频教程】学生信息管理系统2--主窗体
- 【原创视频教程】学生信息管理系统2--主窗体
- 学生信息管理系统-C#课程设计
- 【原创视频教程】学生信息管理系统6--学员信息管理(完结篇)