1

我是 VB.net 的新手并创建了一个应用程序,以便用户需要登录用户名和密码。

我正在使用 SQL Server Compact Edition 数据库。

这是我的完美代码:-

Imports System.Data.SqlClient
Imports System.Data.SqlServerCe

Public Class frm_edit_patient
    Dim con As New SqlCeConnection
    Try
        Dim SQLquery As String
        Dim da As SqlCeDataAdapter
        Dim ds As New DataSet
        Dim myConString As String = My.Settings.Database1ConnectionString
        con.ConnectionString = myConString
        MsgBox("Database is now open")
        MessageBox.Show("connected")
    Catch ex As Exception
        MessageBox.Show(ex.ToString)
    End Try
End Sub

上面的代码工作正常并向我展示connected

但是,当我添加这段代码时

        SQLquery = "SELECT id FROM user where username=John Doe"
        da = New SqlCeDataAdapter(SQLquery, con)
        da = New SqlCeDataAdapter(SQLquery, con)
        da.Fill(ds, "db1")

它给了我这个异常错误:- 在此处输入图像描述

这是什么意思?如何获取该特定人的用户标识?

另外,如果我只是将插入查询放入SQLquery,它会起作用吗?正如我一直在通过观看一些视频教程来做到这一点,但进一步他们没有关于这方面的教程,我的书也没有解释任何关于紧凑型数据库的内容,而且到目前为止我使用这个应用程序不想切换......

4

3 回答 3

5

将您的用户名放在单引号之间,用户Sql Compact 中的保留字
您需要将其括在方括号中

SQLquery = "SELECT id FROM [user] where username='John Doe'" 
于 2012-09-26T15:15:33.810 回答
3

在您的查询周围添加单引号。

SQLquery = "SELECT id FROM user where username='John Doe'"
于 2012-09-26T15:14:30.237 回答
1

您的 SQL 语句中有错误。字符串必须使用单引号分隔,例如

SELECT id FROM user WHERE username = 'John Doe'
于 2012-09-26T15:15:18.420 回答