単純な "select * from tablename" SQLクエリは 'mode'という名前のテーブルでは動作しますが、 'user'という名前のテーブルでは動作しません。どうして?C# - データベースへのアクセス:なぜSELECT * FROMテーブルが機能しないのですか?
両方のテーブルには2つの列があります。 "mySQL"変数を "SELECT * FROM mode"として実行すると、正常に動作します。代わりにuserテーブルを置くと、mySQLは "SELECT * FROM user"だったはずですが、 "FROM句の構文エラー"という例外が発生します。どうすればいいの?ここで
はコードです:
static void Main(string[] args)
{
String connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=Accounts.mdb";
OleDbConnection conn;
conn = new OleDbConnection(connectionstring);
try
{
conn.Open();
}
catch (Exception)
{
Console.Write("Could not connect to database");
}
String mySQL = "SELECT * FROM user";
OleDbCommand cmd = new OleDbCommand(mySQL, conn);
OleDbDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
Console.Write(String.Format("{0}\n,{1}\n", rdr.GetValue(0).ToString(), rdr.GetValue(1).ToString()));
}
Console.Read();
}
コンソールの例外はありますか? – SMA