VB .NET中的数据库访问失败(没有任何错误消息)

时间:2018-06-22 14:18:54

标签: .net vb.net visual-studio-2012 database-connection

我正在用数据库创建VB .NET项目,我希望通过app.config的引用来配置连接字符串。 问题是我的项目运行良好-成功创建了数据库连接,成功关闭了连接,甚至假装插入也成功-但是最终没有任何反应,因为最终结果是没有任何内容输入数据库。.我使用Module.vb来使用全球代码。这是我的代码。

app.config

    <?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
    </configSections>
    <connectionStrings>
        <add name="dbstrc" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True"
            providerName="System.Data.SqlClient" />
    </connectionStrings>
    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
</configuration>

现在module.vb

    Imports System.Data.SqlClient
Imports System.Data
Imports System.Configuration

Module MyModule
    Public conn As New SqlConnection
    Public da As New SqlDataAdapter
    Public dt As New DataTable
    Public cmd As New SqlCommand

    Public Sub connect()
        conn = New SqlConnection
        conn.ConnectionString = ConfigurationManager.ConnectionStrings("dbstrc").ConnectionString
        Try
            conn.Open()
            MsgBox("connection success")

        Catch ex As Exception
            MsgBox(ex.Message)
        End Try



    End Sub
End Module

最后是form.vb

Imports System.Data.SqlClient
Imports System.Data

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        connect()
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim str As String
        str = "INSERT INTO tsttbl(Id,Name) VALUES('" & tb1.Text.Trim & "','" & tb2.Text.Trim & "')"
        cmd = New SqlCommand(str, conn)

        If cmd.ExecuteNonQuery() > 0 Then
            MsgBox("successfully entered")
            clrentry()
        Else
            MsgBox("errorrr!!")
        End If
        conn.Close()

    End Sub

    Public Sub clrentry()
        tb1.Text = ""
        tb2.Text = ""
        'connect()
    End Sub
End Class

在简短的项目中没有给出连接错误或执行错误,但我的数据库中未插入静态值(即使它显示成功消息"successfully entered",根据我的代码执行成功后也是如此)

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您的值确实插入到数据库中,该数据库是计算机上安装的软件的本地副本,并且该数据仅可用于已安装的应用程序的实例。因此,您可能会想到数据在哪里,但数据在哪里也将jmcilhinney插入数据库的本地实例中。由于该数据是本地数据库,因此数据也仅可用于该特定应用程序实例。