使用SAF.Data.DbParam连接数据库

示例:
   
        msaccess:///?filename=c:\demo.mdb
       
        mssql://127.0.0.1/sql2005?database=northwind&username=sa&password=sa
       
        mysql://127.0.0.1:3306/?database=test&username=root&password=root&charset=utf-8
       
        firebird://127.0.0.1/?filename=c:\test.fdb&username=sysdba&password=masterkey&charset=utf8
       
        firebird:///?filename=c:\test.fdb&servertype=embedded


SAF.Data.DbParam:

        链接数据库参数类
       
          创建对象
            DbParam dbParam = new DbParam();
        可以对dbParam的各个参数赋值,如:
            dbParam.DbType = DbType.MSSql;
            ....
          也可以使用FromConnectionString()从链接字符创中解析各个参数
          string str = "dbtype://dbserver:dbport/dbInstance?param=value¶m2=value...."
          dbParam.FromConnectionString(str);
          (可以调用ToString()方法,从对象参数中生成链接参数字符串)
          调用dbParam.CreateDbProvider();取得数据库连接对象,或
            调用dbParam.CreateActiveDbProvider()取得一个打开的数据库连接对象。
        如果取得失败,这两个方法将返回null.
       
            dbParam对象没有任何数据库链接缓冲功能,如果想使用数据库连接池,请
          使用DbCache,DbControl或MultiDbControl类。
       
        数据库连接字符串格式:
       
        dbtype://server_uri:server_port/db_instance?poolmax=&
            servertype=&database=&username=&password=&charset=
            &timeout=&filename=   
       
        dbtype: 数据库类型
    系统可识别的数据库类型:
            db2 : DB2数据库
            oracle : oracle数据库
            mssql: Microsoft Sql Server数据库
            firebird : firebird数据库
            mysql: mysql数据库
            msaccess: Microsoft Access数据库
            sqlite: sqlite数据库
       
        server_uri:数据库服务器地址
        server_port:数据库服务器的端口号
        db_instance:如果数据库可以存在多个实例,在这里设置实例名
        poolmax:数据库缓存的最大个数(默认为15个)
        servertype:数据库服务器类型,只是一个附加参数,如在FireBird中用
                    servertype=embedded来使用嵌入式版的数据库
        database:要连接的数据库
        username:数据库(服务器)的用户名
        password:数据库(服务器)的密码
        charset:数据库的字符集,根据数据库的字符集来设定,根据数据库
                    服务器的字符集格式书写,如utf8,在有些数据库服务器中
                    是utf8,在有些数据库服务器中是utf-8;
        timeout:连接的超时时间
        filename:数据库文件的文件名,在文件型数据库(如,access,sqlite)
                    或某些服务器型数据库(如,firebird)中使用
       
        以上的参数根据特定的数据库来选择,如果不需要的可以省略,但分隔符不能省。
          sqlite:///?filename=c:\test.db
最后编辑enjoyo 最后编辑于 2008-01-29 11:17:37