我这段从ACCESS数据库读一个值到控制台的程序哪里错了?求指导!!急!
[code=C#][/code]using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.OleDb;
namespace DBtest
{
class Program
{
static void Main(string[] args)
{
string strConnection = "Provider=Microsoft.Jet.OleDb.4.0;";
strConnection += @"Data Source=C:\Users\Dynames\Desktop\testDB\DBtest\DBtest.mdb";
OleDbConnection objConnection = new OleDbConnection(strConnection);
objConnection.Open();
OleDbCommand command = new OleDbCommand("SELECT [english] FROM [main] WHERE ID=01", objConnection);
OleDbDataReader reader = command.ExecuteReader();
reader.Read();
int k = (int) (reader["english"]);
Console.WriteLine("{0}", k);
reader.Close();
Console.ReadLine();
}
}
}
[解决办法]
你的错误错在哪里?错误提示是什么?
1、access数据库的路径对不对?能不能出来一个值
2、(int) (reader["english"]);转换的时候类型对不对,能不能转换
其实你只要单步调试一下就可以了,根据调试调出来的错误提示,一步一步走下去。
[解决办法]
SELECT [english] FROM [main] WHERE ID="01"
[解决办法]
1。SELECT [english] FROM [main] WHERE ID="01",要加也是加单引号!
怕路径错了,就丢到bin/debug下~
2。int k = (int) (reader["english"]);
这里可能有问题