无法打开SQL Compact数据库

时间:2011-12-31 00:44:10

标签: vb.net sql-server-ce database-connection

我正在使用SQL压缩数据库,我可以在导入它时测试连接并将确切的文件路径复制到我的代码,但它仍然说它尚未打开。我究竟做错了什么?如果我已经将数据库添加到我的项目中,是否有任何快捷方式可用?

谢谢!

Imports System.Data.SqlServerCe 

Module Module1

Sub Main()

    Dim constring As String = "Data Source=C:\Users\test\Desktop\MyDatabase1.sdf"

    Dim conn As New SqlCeConnection(constring)

    Dim cmd As New SqlCeCommand("SELECT * FROM ACCOUNT")

    conn.Open()

    Dim reader As SqlCeDataReader = cmd.ExecuteReader()

    While reader.Read()
        Console.WriteLine(reader)
    End While


End Sub

End Module

2 个答案:

答案 0 :(得分:2)

您需要为该命令分配连接:

紧接在这一行之后:

conn.Open()

添加:

cmd.Connection = conn

或者,您可以将连接添加到命令的构造函数:

Dim cmd As New SqlCeCommand("SELECT * FROM ACCOUNT", conn)

答案 1 :(得分:1)

使用SQL Server CE(3.5)的一个主要优点是将Linq转换为SQL。您应该使用强类型数据库和DataContext。如果你这样做,那么创建一个新的DataContext是一行代码,而不是8.如果你的DataBase文件不存在,你的DataContext的CreateDataTable方法将为你创建它们。稍微深入一点,因为使用SQL Server CE就像一个老式的OLEDB数据提供者......好吧......不是最优的: - )