问题标签 [interbase]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1526 浏览

delphi - dbExpress 不读取时间戳字段的毫秒部分

最近一些 Delphi / InterBase 应用程序展示

“其他用户未找到或更改记录”

它们使用 dbExpress 的默认 TSQLQuery/TClientDataSet(或 TSimpleDataSet)组件。

我们发现,在数据库表中,非 dbExpress 应用程序以毫秒为单位存储了一个字段。

看起来 dbExpress 没有从 DB 读取毫秒数,并在更新表 SQL 语句的“where”条件中使用该截断值,因此没有匹配的记录要更新。

更新:我们在 Delphi 应用程序中使用 TSQLTimeStamp 字段。没有 OnBeforePost 处理程序正在修改字段值。

更新 2

从 IBExternals.pas 中可以看出,PCTimeStructure 没有毫秒部分。所以'按设计'不支持 Delphi (2009) 中的 InterBase 毫秒。

有谁知道在更高版本的 Delphi 中是否添加了 ms 支持?

0 投票
1 回答
6873 浏览

string - 如何在delphi / interbase中使用字符串作为blob进行插入查询

我想做一个查询插入:

插入 A_TABLE (BLOB_FIELD) 值(MY_BLOB_VAL)

但我在delphi中只有字符串值,例如:

出现的问题是字符串到 blob 的转换。

那么如何在 interbase blob 字段中插入字符串???

0 投票
1 回答
898 浏览

php - 更改了 php-interbase 默认事务行为

我有一些运行很长时间(超过 24 小时)的 PHP CLI 脚本,尽管它们会定期“提交”,但我在孤立事务方面遇到了一些问题——可能是由于脚本崩溃造成的。

我的解决方案是按如下方式创建事务 - 一年前我对此进行了研究,不太记得这些设置的确切原因,但它似乎解决了数据库的一些问题。

$dbh = ibase_connect($dbhost, $dbuser, $dbpass); $trans = ibase_trans(IBASE_WRITE+IBASE_COMMITTED+IBASE_REC_VERSION+IBASE_WAIT,$dbh);

现在已经升级到php 5.3.5,发现ibase_trans这一行导致了segmentation fault。在 php ibase_trans 页面上有一条注释:

“此函数的行为在 PHP 5.0.0 中已更改。第一次调用 ibase_trans() 将不会返回连接的默认事务。”

所以我的问题是我是否可以为默认交易设置交易参数......第二个问题,我是否完全错过了尝试这样做的重点!

谢谢

0 投票
1 回答
1433 浏览

apache - Apache Chroot - ibase_connect 失败

Apache 2,运行 mod_chroot。可以正常访问基本的html和php脚本。

这个测试脚本使用 cli php 可以正常工作,所以我知道连接字符串很好。

但是,当我在 Chrooted Apache 下运行它时,它会返回一条错误消息:

Warning: ibase_connect(): Can't access lock files' directory /tmp/firebird in /html/app/webroot/test2.php

这似乎真的很奇怪。/tmp/firebird 存在并在 CLI 编写脚本时被 firebird 使用。

当我编译 PHP 时,我使用了 --with-interbase=/opt/firebird/

希望这是有道理的,有人有想法!

0 投票
1 回答
1407 浏览

php - 如何在 PHP 中使用 Interbase 事务?

我有一个连接到 Interbase DB 的 PHP 站点。数据库包含用户可以加载并显示在屏幕上的订单。用户可以更改订单并保存。这可行,但如果 2 个用户加载并保存相同的记录,则订单包含最后保存的用户所做的更改。

当第二个用户尝试保存时,我希望弹出一条消息,说明订单已更改并停止保存订单。

我知道 interbase 具有执行此操作的事务,因为我有一个实现事务和上述场景的桌面应用程序。但是,我不知道如何在 Web 环境中使用 PHP 做同样的事情。

桌面应用程序始终保持数据库打开,并且事务从读取到提交时一直保持活动状态。使用 PHP,只有在运行每个查询时才会打开/创建数据库和事务。从我阅读的内容来看,如果未提交,事务将在脚本末尾回滚。

代码加载订单

PHP代码:

代码保存顺序

PHP代码:

如果有人能告诉我哪里出错了,那就太好了。或者,如果没有人使用 Interbase,你将如何使用 MySQL?我不想走表锁定,时间戳路线。

谢谢雷

0 投票
1 回答
363 浏览

sql-server - 将 SQL Server 与 Interbase 数据库同步的最佳方法是什么?

我需要将 SQL 服务器数据库与 Interbase DB 同步。Interbase 是实时数据库,主要应用程序在此工作。现在客户想要创建一个 SQL Server 数据库,并每天将其与实时的 interbase 数据库同步一次。所有历史报告都将从 SQL Server 数据库生成。

Interbase DB 没有时间戳或任何包含时间的列。因此,我找不到任何方法来识别新的(和修改过的)记录。任何想法?

0 投票
2 回答
1109 浏览

database - 如何更新 Interbase 数据库中的一行?

我在 Interbase 表中有两行具有相同数据。该表没有主键。如何更新该表中的单行?

0 投票
1 回答
411 浏览

c# - 使用 .Net 将 interbase 数据库表同步到 SQL Server 数据库

我需要将 SQL 服务器数据库与 Interbase DB 同步。Interbase 是实时数据库,主要应用程序在此工作。现在客户想要创建一个 SQL Server 数据库,并每天将其与实时的 interbase 数据库同步一次。我想创建一个应用程序,可以安排它来比较 Interbase 和 SQL Server 数据库,并将 SQL Server 与来自 Interbase Server 的所有更改合并。有没有办法使用 c# .Net 做到这一点?

0 投票
2 回答
3490 浏览

count - 如何在 Interbase/Firebird 中加速 Count(*)

Interbase 是一个世代数据库。

这很好,因为回滚几乎是瞬时的,但count(*)需要永远。
MySQL 中 count 可以使用索引不同。

直到我看到这个我才知道为什么:

即使在 COUNT 中包含的一个或多个列上有可用的索引,也必须访问所有记录以查看它们在当前事务隔离下是否可见。

在维基百科上:http ://en.wikipedia.org/wiki/InterBase

关于如何在 Interbase/Firebird 中进行快速计数的任何提示

0 投票
2 回答
27547 浏览

firebird - 使用 ISQL 执行脚本

我正在创建一个简单的 isql 脚本,但它不起作用,我需要一些帮助来找出它有什么问题。
我需要连接到数据库并执行 SQL 文件。这是我的脚本 script.sql:

当我尝试使用以下方式连接到我的数据库时:

我收到以下消息: