vb.net-study-06 VB中执行数据库的操作方法

版权声明:本文为博主原创文章,经博主允许,可自由共享,尽量不要用于商业用途。 https://blog.csdn.net/matrixbbs/article/details/91497605

1 方法名和实现

    ''' <summary>
    ''' 执行SQL语句
    ''' </summary>
    ''' <param name="strSQL">SQL语句</param>
    ''' <returns>select语句的执行影响的行数</returns>
    ''' <remarks></remarks>
    Private Function ExecuteSQL(ByVal strSQL As String) As Double
        Dim dblRet As Double
        Dim cn = New OleDbConnection(strConnection)
        cn.Open()
        Dim cmd As New OleDbCommand(strSQL, cn)
        If strSQL.Substring(0, 6) = "select" Then
            dblRet = cmd.ExecuteScalar          ' 查询语句只返回首行首列
        Else
            dblRet = cmd.ExecuteNonQuery()      ' 更新语句返回受影响行数
        End If
        cn.Close()
        Return dblRet
    End Function

2 具体步骤

  1. 连接数据库
  2. 打开连接
  3. 执行SQL语句
  4. 返回结果
    这里的执行分成了 查询 和 更新 来处理
    如果只是查询SQL,则返回的是首行首列值,是一个标量
    如果是更新SQL,则返回的是受影响的行数,方便程序员判断库操作执行是否成功【特别是有大量的DCL,DDL和DML时】

3 在VB下连接数据库,可以直接调用组件已经封装好了的对象方法

只需要给入连接字符串参数即可

Dim strConnection As String '定义数据库连接字串
strConnection = "Provider=SQLOLEDB;Server=10.254.238.42,1433;Database=学生评教20181;UID=sa;pwd=sa;"	‘给值
Dim cn = New OleDbConnection(strConnection)	’连接数据库

4 操作后写磁盘日志文件的方法

    ''' <summary>
    ''' 写磁盘文件,一般就是写日志用
    ''' </summary>
    ''' <param name="strData">日志数据</param>
    ''' <param name="strFileName">目标文件名</param>
    ''' <remarks></remarks>
    Private Sub WriteReturn(ByVal strData As String, ByVal strFileName As String)
        Dim swWriter As StreamWriter = New StreamWriter(strFileName, True)
        swWriter.WriteLine(strData)
        swWriter.Close()
    End Sub

读解如下:
在这里插入图片描述
调用时
在这里插入图片描述写入结果查看

1.生成教师授课课程评价总视图 - V课程评价_汇总信息
A.该视图存在,删除V课程评价_汇总信息视图
利用学生评教_分项统计分析、学生评教_课程评教相对分、学生成绩_成绩分析生成V课程评价_汇总信息视图:-1
A.该视图存在,删除全校课程主管单位
A.该视图存在,V课程评价_学生评价分分布
A.该视图存在,V课程评价_教学单位评价分分布
A.该表存在,删除课程评价_课程详细评价信息
生成课程评价_课程详细评价信息0

5 程序员要做到的是

每一步执行,都知晓结果在哪里可以查看
每一步执行,都知晓系统的瓶颈在哪里,如果数据和工作量大了,应可以知道在哪里可以调整去提高
每一步执行,日志输出,比插旗调试更有效

猜你喜欢

转载自blog.csdn.net/matrixbbs/article/details/91497605