用ASP.NET访问Firebird嵌入版的问题

2024-04-11 10:32

本文主要是介绍用ASP.NET访问Firebird嵌入版的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当初对Access不满意,总在想找别的可替代的数据库。SQLite也太Lite了,后来发现Firebird的嵌入版,于是想着能否把嵌入版用到Firebird中。

查了相关资料,其实Firebird嵌入版与服务器版在应用中,其所建立的数据库在两都中是通用的,也就是说在服务器版中建的数据库,可以不加修改直接在嵌入版中使用。对于Firebird的.net开发接口,其实嵌入版与服务器版也只有比较少的区别,就是连接字符串。

以前写对服务器版的访问,其链接字符串示例如下:

User=SYSDBA;Password=masterkey;Database=c://data/db1.fb;DataSource=localhost;Port=3050;Dialect=3;Charset=UTF8;Role=;Connection lifetime=150;Pooling=true;MinPoolSize=0;MaxPoolSize=500;Packet Size=8192;ServerType=0;

查找相关文章得知,这里ServerType为0指服务器版,为1表示嵌入版。

开始实际操作。根据以往经验,把Firebird嵌入版文件复制到asp.net程序的bin目录,把数据提供程序的几个文件也复制到其中,并在项目中添加引用。

修改连接字符串ServerType参数,但并不能连接成功。去掉其中Pooling等Server才有的特征项,还是不行。

查了网上文章,用其中的连接字符串Builder来构建连接字符串,代码如下:

FbConnectionStringBuilder cs = new FbConnectionStringBuilder();
cs.Database = strData;
cs.UserID = “SYSDBA”;
cs.Password = “masterkey”;
cs.Charset = “UTF8″;
cs.Dialect = 1;
cs.ServerType = FbServerType.Embedded;

还是不行。其实我也隐约感觉到没有明确指明Firebird嵌入版程序的位置,但还不知道如何指明。

继续查找,终于有了结果。在用FbConnectionStringBuilder进行构建时,设置ClientLibrary就是设置其嵌入版程序的路径,示例如下:

cs.ClientLibrary = Server.MapPath(@”./bin/fbembed.dll”);

注意,这里不能用相对路径。

但这样页面还是出错,提示普不能对firebird文件进行写入,于是在NTFS上修改权限,对IIS_WPG和Internet来宾帐户设置写入权限,为保险,把Everyone的写入权限也设置了。当然,这样降低了安全性

至此,在ASP.NET中连接Firebird嵌入版成功。

 

 

转自:http://www.whodm.com/?p=100

这篇关于用ASP.NET访问Firebird嵌入版的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/893825

相关文章

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

Redis出现中文乱码的问题及解决

《Redis出现中文乱码的问题及解决》:本文主要介绍Redis出现中文乱码的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 问题的产生2China编程. 问题的解决redihttp://www.chinasem.cns数据进制问题的解决中文乱码问题解决总结

MySQL中的InnoDB单表访问过程

《MySQL中的InnoDB单表访问过程》:本文主要介绍MySQL中的InnoDB单表访问过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、访问类型【1】const【2】ref【3】ref_or_null【4】range【5】index【6】

全面解析MySQL索引长度限制问题与解决方案

《全面解析MySQL索引长度限制问题与解决方案》MySQL对索引长度设限是为了保持高效的数据检索性能,这个限制不是MySQL的缺陷,而是数据库设计中的权衡结果,下面我们就来看看如何解决这一问题吧... 目录引言:为什么会有索引键长度问题?一、问题根源深度解析mysql索引长度限制原理实际场景示例二、五大解决

Springboot如何正确使用AOP问题

《Springboot如何正确使用AOP问题》:本文主要介绍Springboot如何正确使用AOP问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录​一、AOP概念二、切点表达式​execution表达式案例三、AOP通知四、springboot中使用AOP导出

Python中Tensorflow无法调用GPU问题的解决方法

《Python中Tensorflow无法调用GPU问题的解决方法》文章详解如何解决TensorFlow在Windows无法识别GPU的问题,需降级至2.10版本,安装匹配CUDA11.2和cuDNN... 当用以下代码查看GPU数量时,gpuspython返回的是一个空列表,说明tensorflow没有找到

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

IDEA Maven提示:未解析的依赖项的问题及解决

《IDEAMaven提示:未解析的依赖项的问题及解决》:本文主要介绍IDEAMaven提示:未解析的依赖项的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录IDEA Maven提示:未解析的依编程赖项例如总结IDEA Maven提示:未解析的依赖项例如

前端如何通过nginx访问本地端口

《前端如何通过nginx访问本地端口》:本文主要介绍前端如何通过nginx访问本地端口的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、nginx安装1、下载(1)下载地址(2)系统选择(3)版本选择2、安装部署(1)解压(2)配置文件修改(3)启动(4)