在 vb.net 中创建一个 ConnectionString

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/17468725/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-17 14:09:23  来源:igfitidea点击:

creating a ConnectionString in vb.net

vb.net

提问by user2550171

i want to create a connection to my database in my application on vb.net i stored a procedure called "CTable" that will create tables if they don't exist

我想在 vb.net 上的应用程序中创建到我的数据库的连接我存储了一个名为“CTable”的过程,如果它们不存在,它将创建表

im using this code:

我正在使用此代码:

    Dim strConnection As String
    strConnection = "Data Source=Localhost; Initial Calalog=Northwind; Integrated Security=True"
    Dim MyConn As SqlConnection
    Dim cmd As SqlCommand

    MyConn = New SqlConnection(strConnection)
    Dim query As String = "EXEC CTable"

    cmd = New SqlCommand(query, MyConn)

    MyConn.Open()
    cmd.ExecuteNonQuery()
    MyConn.Close()

but he is giving this error: " An unhandled exception of type 'System.ArgumentException' occurred in System.Data.dll Additional information: Keyword not supported: 'initial calalog'"

但他给出了这个错误:“System.Data.dll 中发生了类型为‘System.ArgumentException’的未处理异常附加信息:不支持关键字:‘initialcalalog’”

my question is : what should i put in my 'strConnection' variable to be able to execute my CTable Procedure????

我的问题是:我应该在“strConnection”变量中放入什么才能执行我的 CTable 过程????

回答by Jan Dobkowski

You have a typo in the connection string. Try "Catalog" instead of "Calalog" ;)

您在连接字符串中有一个错字。尝试“目录”而不是“目录”;)

回答by Tim Schmelter

The word is Catalognot Calalog.

这个词Catalog不是Calalog

So this should work:

所以这应该有效:

strConnection = "Data Source=Localhost; Initial Catalog=Northwind; Integrated Security=True"

Note that you also have to set the CommandTypeto CommandType.StoredProcedure.

请注意,您还必须将 设置CommandTypeCommandType.StoredProcedure

But always use the Usingstatement to ensure that unmanaged resources are disposed even on error:

但始终使用该Using语句来确保即使出现错误也会处理非托管资源:

Dim strConnection = "Data Source=Localhost; Initial Catalog=Northwind; Integrated Security=True"
Using MyConn = New sqlclient.SqlConnection()
    Using cmd = New SqlClient.SqlCommand("EXEC CTable")
        cmd.CommandType = CommandType.StoredProcedure
        MyConn.Open()
        cmd.ExecuteNonQuery()
    End Using
End Using ' also closes the conection

回答by VB.NET LEARNER

Standard Security

标准安全

Data Source=serverName\instanceName;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

数据源=serverName\instanceName;初始目录=myDataBase;User Id=myUsername;Password=myPassword;

Trusted Connection

可信连接

Data Source=serverName\instanceName;Initial Catalog=myDataBase;Integrated Security=SSPI;

数据源=serverName\instanceName;初始目录=myDataBase;集成安全=SSPI;