0

私はこのコードを持っています:

public void FillData()
    {
        // 1 step. Open connection
        string conection = @"Data Source=|DataDirectory|db.sdf;Persist Security Info=False;";
        try
        {
            SqlCeConnection c = new SqlCeConnection(conection);
            c.Open();

            // 2 step. Create new DataAdapter
            using (SqlCeDataAdapter a = new SqlCeDataAdapter("SELECT * FROM USER", c))
            {
                // 3 step. Use DataAdapter to fill table
                DataTable t = new DataTable();
                a.Fill(t);
                // 4 step. Render data on the DataGridView
                dataGridViewUsers.DataSource = t;
            }
        }
        catch (SqlException e)
        {
            MessageBox.Show(e.Message);
        }

    }

データベースに接続できますが、次のSqlCeDataAdapterエラーが発生します。

There was an error parsing the query. [Token line number = 1, Token line offset = 15, Token in error = USER]

私のデータベースには という名前のテーブルがありますが、USERこのコードの何が問題なのですか??

4

1 に答える 1

2

USER は予約語です。クエリのよう[USER]に渡します。クエリは次のようになります。

new SqlCeDataAdapter("SELECT * FROM [USER]", c))
于 2013-01-11T11:04:30.733 に答える