C# 错误之 Error: 找不到可安装的 ISAM。

来源:互联网 发布:国泰安数据库使用视频 编辑:程序博客网 时间:2024/05/16 17:11

1)  下载和 安装MDAC_27.EXE 实一下。 一般都是不行。 顺便杀下毒 和 重新安装一下access。

 

2) 绝大部分情况是 sql语句写错了, 请检查每个字符,包括空格。 

 

下面错误 在于"Data   Source" 中间多了几个空格,这是严重错误。 只能有一个空格,而且必须是一个空格隔开:  "Data Source" 

 

using System;
using System.Data.OleDb;

class OleDbTest
{

    public static void Main()
    {
        //创建数据库连接    
        OleDbConnection aConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data   Source=c://db1.mdb");

        //创建command对象并保存sql查询语句    
        OleDbCommand aCommand = new OleDbCommand("select   *   from   emp_test", aConnection);
        try
        {
            aConnection.Open();

            //创建datareader   对象来连接到表单    
            OleDbDataReader aReader = aCommand.ExecuteReader();
            Console.WriteLine("This   is   the   returned   data   from   emp_test   table");

            //循环遍历数据库    
            while (aReader.Read())
            {
                Console.WriteLine(aReader.GetInt32(0).ToString());
            }

            //关闭reader对象    
            aReader.Close();

            //关闭连接,这很重要    
            aConnection.Close();
        }

        //一些通常的异常处理    
        catch (OleDbException e)
        {
            Console.WriteLine("Error:   {0}", e.Errors[0].Message);
        }


        while (true) ;
    }
}

 

 

修改之后的结果如下:

using System;
using System.Data.OleDb;

class OleDbTest
{

    public static void Main()
    {
        //创建数据库连接    
        OleDbConnection aConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://db1.mdb");

        //创建command对象并保存sql查询语句    
        OleDbCommand aCommand = new OleDbCommand("select   *   from   emp_test", aConnection);
        try
        {
            aConnection.Open();

            //创建datareader   对象来连接到表单    
            OleDbDataReader aReader = aCommand.ExecuteReader();
            Console.WriteLine("This   is   the   returned   data   from   emp_test   table");

            //循环遍历数据库    
            while (aReader.Read())
            {
                // Console.WriteLine(aReader.GetInt32(0).ToString());
                Console.WriteLine(aReader[0].ToString()); //上面语句可以写成这样

                //Console.WriteLine(aReader[1].ToString());
            }

            //关闭reader对象    
            aReader.Close();

            //关闭连接,这很重要    
            aConnection.Close();
        }

        //一些通常的异常处理    
        catch (OleDbException e)
        {
            Console.WriteLine("Error:   {0}", e.Errors[0].Message);
        }


        while (true) ;
    }
}

 

 

 

 

 

using System;
using System.Data.OleDb;

class OleDbTest
{

    public static void Main()
    {
        //创建数据库连接    
        OleDbConnection aConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://db1.mdb");

        //创建command对象并保存sql查询语句    
        OleDbCommand aCommand = new OleDbCommand("select   *   from   emp_test", aConnection);
        try
        {
            aConnection.Open();

            //创建datareader   对象来连接到表单    
            OleDbDataReader aReader = aCommand.ExecuteReader();
            Console.WriteLine("This   is   the   returned   data   from   emp_test   table");

            //循环遍历数据库    
            while (aReader.Read())
            {
                // Console.WriteLine(aReader.GetInt32(0).ToString());
                Console.WriteLine(aReader[0].ToString()); //上面语句可以写成这样

                //Console.WriteLine(aReader[1].ToString());
            }

            Console.WriteLine("Connection   Properties: ");
            Console.WriteLine("Connection   String   :{0} ", aConnection.ConnectionString);
            Console.WriteLine("Datbase   :{0} ", aConnection.Database);
            Console.WriteLine("DataSource:{0} ", aConnection.DataSource);// 数据库文件路径

            //关闭reader对象    
            aReader.Close();

            //关闭连接,这很重要    
            aConnection.Close();
        }

        //一些通常的异常处理    
        catch (OleDbException e)
        {
            Console.WriteLine("Error:   {0}", e.Errors[0].Message);
        }


        while (true) ;
    }
}

 

 

 

using System;
using System.Data.OleDb;

class OleDbTest
{
   

    public static void Main()
    {
        UInt32 startIndex = 0;
        long rLen;
        char[] tmp;
        tmp = new char[100];

        //创建数据库连接    
        OleDbConnection aConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://db1.mdb");

        //创建command对象并保存sql查询语句    
        OleDbCommand aCommand = new OleDbCommand("select   *   from   emp_test", aConnection);
        try
        {
            aConnection.Open();

            //创建datareader   对象来连接到表单    
            OleDbDataReader aReader = aCommand.ExecuteReader();
            Console.WriteLine("This   is   the   returned   data   from   emp_test   table");

            //循环遍历数据库    
            while (aReader.Read())
            {
                // Console.WriteLine(aReader.GetInt32(0).ToString());
                //Console.WriteLine(aReader[0].ToString()); //上面语句可以写成这样

                //Console.WriteLine(aReader[1].ToString());
                //Console.WriteLine(aReader.GetString(1));

                rLen = aReader.GetChars(1, startIndex, tmp, 0, 100);               
                Console.WriteLine(tmp[0]);               
            }

            Console.WriteLine("Connection   Properties: ");
            Console.WriteLine("Connection   String   :{0} ", aConnection.ConnectionString);
            Console.WriteLine("Datbase   :{0} ", aConnection.Database);
            Console.WriteLine("DataSource:{0} ", aConnection.DataSource);// 数据库文件路径

            //关闭reader对象    
            aReader.Close();

            //关闭连接,这很重要    
            aConnection.Close();
        }

        //一些通常的异常处理    
        catch (OleDbException e)
        {
            Console.WriteLine("Error:   {0}", e.Errors[0].Message);
        }


        while (true) ;
    }
}

 

 

带密钥的数据库读写:

using System;

using System.Text;
using System.Data;
using System.Data.OleDb;


namespace Console090507
{
    class Program
    {
        static void Main(string[] args)
        {
            OleDbConnection conn = new OleDbConnection();
            conn.ConnectionString = "provider=microsoft.jet.oledb.4.0;data Source=c://db2.mdb;Persist Security Info=False;Jet OLEDB:Database Password=080507;";

            try
            {
                conn.Open();
                Console.WriteLine("Connection   opened ");
                //Display   connection   properties

                Console.WriteLine("Connection   Properties: ");
                Console.WriteLine("Connection   String   :{0} ", conn.ConnectionString);
                Console.WriteLine("Datbase   :{0} ", conn.Database);
                Console.WriteLine("DataSource:{0} ", conn.DataSource);
            }
            catch (OleDbException e)
            {
                Console.WriteLine("Error " + e.Message);
            }
            finally
            {
                conn.Close();
            }

            while (true) ;

        }

    }
}

 

原创粉丝点击