VB连接数据库其实很简单,看完这篇就够了!

吉云

大家我是你们的老朋友,今天跟大家唠唠嗑,说说我最近折腾的VB连接数据库那点事儿。

话说这年头,啥都离不开数据库,我这小项目也得安排上。之前一直用C#比较多,这回想着换换口味,用VB来试试水,结果嘛一上来就给我来个下马威。

第一步,当然是先新建个VB项目。 这个简单,打开Visual Studio,新建一个Windows窗体应用,语言选VB,一路下一步就OK。

VB连接数据库其实很简单,看完这篇就够了!

就是最关键的:连接数据库! 我这回用的是SQL Server,寻思着用*应该没啥问题,结果就掉坑里。

得引用相关的库。 在“解决方案资源管理器”里,找到“引用”,右键,点“添加引用”,然后在“.NET”选项卡里找到“*”和“*”,勾上,确定。

然后,写连接代码。 我一开始是这么写的:

  • *

    Imports *

    VB连接数据库其实很简单,看完这篇就够了!

    Public Class Form1

    Dim connString As String = "Data Source=你的服务器地址;Initial Catalog=你的数据库名;Integrated Security=True"

    Dim conn As SqlConnection

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles *

    Try

    conn = New SqlConnection(connString)

    VB连接数据库其实很简单,看完这篇就够了!

    *("数据库连接成功!")

    Catch ex As Exception

    *("数据库连接失败:" & *)

    End Try

    VB连接数据库其实很简单,看完这篇就够了!

    End Sub

    End Class

结果,一运行,直接报错! 说啥“未将对象引用设置到对象的实例”。 我靠,啥玩意儿? 仔细一看,原来是`SqlConnection`没实例化。 赶紧改成这样:

    VB连接数据库其实很简单,看完这篇就够了!

  • *

    conn = New SqlConnection(connString)

这下总算不报错,但是又报另一个错,说啥“无法打开与 SQL Server 的连接”。 晕死,难道是连接字符串有问题? 赶紧检查连接字符串,服务器地址、数据库名啥的都对。

后来我Google半天,才发现原来是权限问题。 我用的`Integrated Security=True`,也就是Windows身份验证,但是我的程序运行的时候,用的不是我的Windows账户的权限,而是其他的。

VB连接数据库其实很简单,看完这篇就够了!

解决办法是:要么修改SQL Server的身份验证模式,改成SQL Server身份验证,然后用用户名密码连接;要么给我的Windows账户在SQL Server里添加相应的权限。

我选择第二种方法,在SQL Server Management Studio里,找到“安全性”-“登录名”,右键,新建登录名,然后输入我的Windows用户名,再在“用户映射”里,勾上我要连接的数据库,并且赋予`db_datareader`和`db_datawriter`权限。

改完权限,再运行程序, 这回总算成功! 弹出“数据库连接成功!”的提示框。 真是折腾死我。

连接成功,接下来就是查询数据。 我写个简单的查询代码:

  • *

    VB连接数据库其实很简单,看完这篇就够了!

    Dim sql As String = "SELECT FROM 你的表名"

    Dim cmd As New SqlCommand(sql, conn)

    Dim reader As SqlDataReader

    Try

    reader = *()

    VB连接数据库其实很简单,看完这篇就够了!

    While *()

    *(reader("你的字段名").ToString())

    End While

    Catch ex As Exception

    VB连接数据库其实很简单,看完这篇就够了!

    *("查询失败:" & *)

    End Try

这段代码很简单,就是创建一个`SqlCommand`对象,然后执行`ExecuteReader`方法,获取`SqlDataReader`对象,遍历`SqlDataReader`对象,读取每一行的数据。

查询结果也顺利出来! 终于搞定VB连接数据库的整个流程。 虽然过程有点曲折,但是也学到不少东西。 以后再遇到类似的问题,就心里有数。

VB连接数据库其实很简单,看完这篇就够了!

VB连接SQL Server数据库,关键是要搞清楚连接字符串的配置和权限问题。 特别是使用Windows身份验证的时候,一定要确保程序运行的用户有访问数据库的权限。 还有,*的各种对象,比如`SqlConnection`、`SqlCommand`、`SqlDataReader`,一定要实例化之后才能使用,否则会报错。

跟大家分享一个小技巧:

如果觉得手写连接字符串太麻烦,可以用Visual Studio自带的“数据源”窗口来自动生成。 步骤是:

  • 打开“视图”-“其他窗口”-“数据源”
  • 点击“添加新数据源”
  • VB连接数据库其实很简单,看完这篇就够了!

  • 选择“数据库”
  • 选择“Microsoft SQL Server”
  • 输入服务器名和登录信息
  • 选择数据库
  • 点击“测试连接”
  • 如果连接成功,点击“确定”
  • VB连接数据库其实很简单,看完这篇就够了!

这样,Visual Studio就会自动生成一个连接字符串,并且添加到你的项目配置文件里。 你只需要在代码里读取这个连接字符串就可以,非常方便。

好,今天的分享就到这里。 希望能帮到大家,也欢迎大家在评论区交流讨论。 咱们下次再见!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]