在vb.net中为通过visual studio 2010创建的本地数据库设置SqlConnection字符串

时间:2014-01-27 20:14:57

标签: sql vb.net visual-studio-2010

我一直在寻找几个小时,并发现了几个问题,但他们都没有以我能理解的方式解释这一点。

我正在编写类似于Rock Paper Sissors的游戏,除了有更多的选择,以及领带的可能性。我最初硬编码了所有可能的结果,然后决定尝试一个数据库,这样我也可以学习和练习sql。

问题是,我无法弄清楚我的生活如何连接到我的本地数据库,现在我已经设置并通过Visual Studio 2010填充它。我可以通过Server Explorer连接到它就好了,我可以在解决方案资源管理器中看到它。我尝试了几件事,按照以下方式:

Private sqlConn As New SqlConnection("Data Source=(local)|DataDirectory|\Outcomes.sdf;database=Outcomes;Integrated Security=true")

Private sqlConn As New SqlConnection("Data Source=.\SQLEXPRESS; Integrated Security=true")

Dim sqlConn As SqlConnection
sqlConn = New SqlConnection("DataSource=..\..\Outcomes.sdf")

我对sql相对较新,但通过修改构建一个sql语句并获得我想要的结果就足够了解。但我以前从未连接过数据库。我看过MSDN并尝试了我在那里看到的一些东西(一切看起来像我需要的东西,真的)但它仍然没有用。

如果我可以连接,我已经设置了语句,并通过数据库本身进行了测试。任何帮助都会很棒,特别是如果它以我能理解的方式解释并在以后使用它。

此外,如果通过我尝试的代码有帮助而没有注意到,我的数据库名称为Outcomes。我不知道这是否需要或将有所帮助,但以防万一。

2 个答案:

答案 0 :(得分:2)

请访问connection strings here...

了解您正在使用的DBMS类型也会有所帮助。我注意到你有一个.sdf数据库文件,而不是DBMS(例如:MySql,SQL或Oracle)。因此,您的连接字符串实际上取决于您想要的内容。

顺便问一下你的问题......

 Private sqlConn As New SqlConnection("Data Source=(local)|DataDirectory|\Outcomes.sdf;database=Outcomes;Integrated Security=true")

*您无法使用您使用的SqlConnection,因为它不支持使用.sdf文件。

相反,您必须使用: System.Data.SqlServerCe '这是针对紧凑版

如果您想了解更多相关信息,请参阅here.

答案 1 :(得分:1)

坎德拉,

以下是以编程方式访问数据库时需要遵循的逻辑步骤:

注意:我猜你有正确的SQLExpress | SQL Server数据库设置无论是本地还是远程,下面的方法都是相同的,除了连接字符串信息。

1)导入Sql AdoNet命名空间,以便您可以使用正确的SQL Server客户端对象&方法;

a)Imports System.Data.SqlClient

2)使用ADO连接对象建立与数据库的连接

'创建您的ADO连接对象:

 Private myConn As SqlConnection
    myConn = New SqlConnection("Initial Catalog=OutComes;" & _
                "Data Source=localhost;Integrated Security=SSPI;")

注意:此连接字符串使用Windows计算机的集成安全性。您还可以使用标准安全性,您需要输入用户名和密码凭据。这是你的选择。

3)设置您的ADO命令对象以定义您的数据检索查询:

'Create a Command object.
      Private myCmd As SqlCommand
       myCmd = myConn.CreateCommand
        myCmd.CommandText = "SELECT FirstName, LastName FROM Employees"

       'Open the connection.
        myConn.Open()

注意:根据您自己的数据库架构为您的实际查询替换CommandText字符串。

4)使用SQLDataReader对象读取,获取,显示数据

 Private results As String
   Private myReader As SqlDataReader
  myReader = myCmd.ExecuteReader()

  'Traverse the DataSet and Display in GUi for Example:
   Do While myReader.Read()
       results = results & myReader.GetString(0) & vbTab & _ 
                myReader.GetString(1) & vbLf
    Loop
    'Display results.
    MsgBox(results)

5)优雅地关闭所有对象使用:

' Close the reader and the database connection.
    myReader.Close()
    myConn.Close()

注意 - 您需要咨询microsoft以获取更多连接字符串格式,因为我没有足够的信息。但这应该为你澄清实际的大图片步骤。

此致 斯科特