Tag: firebird

c#DataSet.Fill Firebird 2.5填补了可怕的性能问题

备注我完全重写了问题,因为在探索选项和获得见解时,我意识到我的问题的根源完全不是我想的。 我使用Firebird作为数据库引擎和标准.Net提供程序(v.5.11.0)使用以下代码获取数据: // myBlob1 is BLOB SUB_TYPE 1 (text field) with some empty, but some // VERY long stuff (xml-content) which exceeds VARCHAR(32765), but I removed // those before performing my tests!!! var tick = Stopwatch.StartNew(); DataTable dataTable = new DataTable(); DbLive.Open(); FbCommand command = new FbCommand(“SELECT myBlob FROM MY_TABLE”, DbLive); try { dataTable.BeginLoadData(); FbDataAdapter […]

插入Firebird数据库C#

FbCommand fbCmm = new FbCommand(“INSERT INTO PRODUTO (CODIGO,EAN,DESCRICAO,VAL_PRODUTO,VAL_CUSTO,CAT_PRECO)” + “Values (@txt_codigo.Text, @txt_ean, @txt_descricao, @txt_valPro, @txt_valCus, @txt_catPre)”, ConexaoFirebird.Conexao); 这句话有什么问题? 我在其他类中做了一个开放的连接ConexaoFirebird.Conexao();

entity framework代码First和Firebird – 外键名称问题

我正在尝试使用EF代码优先创建包含2个表( Districts和Databases )的新数据库,这个简单的代码: using (var db = new FirebirdDBContext(_connectionString)) { db.Database.CreateIfNotExists(); } 我的课程: public class District { [Key] public int District_id { get; set; } [Column(TypeName = “VARCHAR”)] [StringLength(50)] public string District_name { get; set; } [ForeignKey(“DataBase”)] public int DataBase_id { get; set; } public DataBase DataBase { get; set; } } public class DataBase […]

entity framework代码第一次迁移和Firebird

我正在尝试在Firebird 2.5数据库上启用迁移。 我正在使用VS2015并且ADO驱动程序和实体提供程序已安装并正常运行。 我对数据库进行了逆向工程,进行了必要的更改以使其工作。 我可以在程序包管理器控制台上执行启用迁移,并添加迁移。 当我做update-database时会发生这种情况: PM> update-database Specify the ‘-Verbose’ flag to view the SQL statements being applied to the target database. Applying explicit migrations: [201705301505265_Initial]. Applying explicit migration: 201705301505265_Initial. ScriptHalted 如果我做更新数据库-Verbose我得到这个: PM> update-database -Verbose Using StartUp project ‘Visao.Web’. Using NuGet project ‘Visao.Data’. Specify the ‘-Verbose’ flag to view the SQL statements being applied […]

SQlite / Firebird:它们中的任何一个都支持多个并发写访问吗?

问题:我目前将ASP.net应用程序数据存储在XML文件中。 现在问题是我有异步操作,这意味着我遇到了对XML文件进行同时写访问的问题…… 现在,我正在考虑转向嵌入式数据库来解决这个问题。 我正在考虑使用SQlite和嵌入式Firebird。 但是我不确定SQlite或Firebird是否可以处理多个并发写访问。 我当然不希望再次遇到同样的问题。 有人知道吗? SQlite当然更为人所知,但哪一个更好 – SQlite还是Firebird? 我倾向于说Firebird,但我真的不知道。 请不要MS-Access或MS-SQL-express建议,我是一个理智的人。

INSERT INTO Firebird如何自动增加主键?

INSERT INTO Firebird如何自动增加主键? 对于我有的表格字段: fstPriority VARCHAR(30), fstInfo VARCHAR(100), fstDateCreated VARCHAR(30), fstDateModified VARCHAR(30), fiKeyID INTEGER PRIMARY KEY INSERT INTO我有: FbConnection fbConn = new FbConnection(stOpenConn)) fbConn.Open(); … FbTransaction fbTransaction = fbConn.BeginTransaction(); FbCommand fbCmd = new FbCommand(“INSERT INTO ” + stTableName + “(” + stFieldNames + “) VALUES ( @p0, @p1, @p2, @p3, @p4 ) RETURNING fiKeyID “, […]

使用Firebird ado.net提供程序在客户端和服务器上请求的不兼容的线加密级别

我正在使用C#测试连接firebird 3。 我使用的版本是最新版本:Firebird ADO.NET Provider 5.0。 但是当您建立连接时,会出现“客户端和服务器上请求的不兼容的线程加密级别”错误。“ 在“ Firebird ADO.NET 4.10.0.0数据提供程序是否与Firebird 3.0配合使用? ”中,有一些建议可以在传统模型中启用身份validation或创建旧版用户。 但我的问题是,是否真的不支持5.0版Net Provider中的新SRP身份validation模型?

基于C#List过滤sql而不是过滤表

假设我有一个包含以下数据的表: 现在我想按主键部门和号码进行过滤。 我有一个必须在代码中过滤的部门和数字组合列表。 在我看来,我会创建一个导致以下结果的连接: select * from employee e inner join dynamicTable dyn on e.Department = dyn.Department and e.Number = dyn.Number; dynamicTable是我在C#代码中的List ,它有主要的过滤键,但我不知道如何将这个列表传递给数据库级别。 我不想从我的员工表中加载所有内容,并通过linq或其他方式在代码中过滤,因为我的数据库中有数百万名员工。 我已经考虑过组合primary_keys并where in (…)创建一个where in (…) ,但是firebird对其中的最多1500条记录有限制。 使用的数据库是Firebird 2.1版

如何使用Visual C#2010连接和使用Firebird数据库嵌入式服务器

我试图将Firebird嵌入式服务器与Microsoft Visual C#2010一起使用。所以这就是我现在所做的: 下载Firebird .Net数据提供程序 ( Firebird客户端v2.5.2 )。 下载的Firebird嵌入式服务器 ( Firebird Embedded Server v2.5.0 )。 在我的项目中添加了对FirebirdSql.Data.FirebirdClient.dll的引用 。 将fbembed.dll文件解压缩并复制到我的应用程序目录中。 将我的FDB文件“TEST.FDB”添加到我的应用程序目录中。 添加了“ 使用FirebirdSql.Data.FirebirdClient; ”语句。 到目前为止一切都那么好(我想)…… 现在,当我尝试使用以下代码连接到我的FDB文件时 : FbConnection con = new FbConnection(“User=SYSDBA;” + “Password=masterkey;” + “Database=TEST.FDB;” + “DataSource=127.0.0.1;” + “Port=3050;” + “Dialect=3;” + “Charset=UTF8;”); try { con.Open(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } 我总是得到消息框,这意味着代码没有正确连接到我的数据库文件。 难道我做错了什么? 我真的还是C#的noob,我不知道怎么做或修复它,我希望有人会帮助我。 […]

C#构造参数查询SQL – LIKE%

我正在尝试为C#中的参数查询构建SQL,以查询包含LIKE %%命令的查询。 这是我想要实现的(请注意数据库是Firebird) var SQL = string.format(“SELECT * FROM {0} WHERE {1} LIKE ‘%?%'”, TABLE, NAME); cmd.Parameters.AddWithValue(NAME, “JOHN”); 现在我尝试了每一个排列来使参数起作用,我试过了; 将%字符添加到参数中 cmd.Parameters.AddWithValue(NAME, “%” + “JOHN” + “%”); 要么 cmd.Parameters.AddWithValue(NAME, “‘%” + “JOHN” + “%'”); 我似乎无法使其工作,我如何使用LIKE查询的参数工作。 欢迎提出建议!