问题标签 [zeos]

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 投票
1 回答
994 浏览

delphi - 带有 zeos / sqlite 的 Unicode 文件名

我需要使用用户选择的文件名将数据保存在 sqlite 数据库中。这包括 unicode 文件名。有没有办法在 Delphi 的 Zeos 组件中指定这一点?

0 投票
1 回答
1505 浏览

delphi - BDS2006和Zeos安装

我最近在 BDS2006 上为 Delphi 和 C++ 特性安装了 Zeos 6.6 stable。

为了做到这一点,并且由于 Zeos 是用 Delphi 编写的,我在构建包时检查了“生成所有 C++ Builder 文件”。

我发现的问题是,不知何故,并非所有必要的 .DCU都是在构建不同包的过程中生成的。我最终解决了这个问题,首先只为 Delphi 构建(完美运行),然后为 Delphi 和 C++ 重新构建。

现在,我不确定这是否是一个错误(在Quality Central或 Google 中没有找到任何类似的东西)或者它也只影响 BDS2006 或其他 IDE。所以,问题是:任何人都可以告诉我,当“生成所有 C++ 生成器文件”被选中时,什么可能导致编译器构建所有的 .DCU,但在没有的时候这样做?

提前致谢并致以最诚挚的问候

0 投票
8 回答
4362 浏览

database - 数据库连接 Delphi

我使用 delphi 多年,但从未用于数据库,但最近开始研究和测试。

我必须说,我印象深刻,大多数事情都是自动发生的,我习惯于用 php 和 python 手动编写。

我要为朋友开发一个商业系统,(2 层)5 台用户计算机,1 台数据库服务器。

数据库服务器将是一台不错的机器,运行 (raid-1) 2 个硬盘驱动器(MySql5.1 或 Postgre 或 Firebird,欢迎提出建议)。

ADO

  • 便于使用
  • 易于部署(仅 mysqlconnector 安装程序)
  • 越慢?

数据库快递

  • 需要运送 4 个文件 [dbxconnections.ini, dbxdrivers.ini, mysqldll, driverdll]
  • 更复杂(更难使用)
  • ClientDataSet 增加了复杂性,但看起来真的很有用
  • 没有免费的 Postgre 驱动程序?

宙斯

  • 易于部署 (1 dll)
  • 便于使用

如您所见,所需的功能是:

  • 快速地
  • 便于使用
  • 易于部署

我无法在真实场景(客户端,服务器)中测试所有内容,所以我希望有经验的你们可以帮助我选择哪一个以及为什么。

编辑:谢谢大家,我想我会选择 ADO(可能)或 Zeos

提前感谢
亚瑟

0 投票
1 回答
5099 浏览

database - Delphi:如何以编程方式创建 Firebird 数据库

我正在使用 D2K9、Zeos 7Alpha 和 Firebird 2.1

在添加 autoinc 字段之前,我已经完成了这项工作。虽然我不确定我做的是否 100% 正确。我不知道使用触发器、生成器等执行 SQL 代码的顺序。我尝试了几种组合,我猜我做错了什么,而不仅仅是因为这不起作用。

当前演示:http: //uploading.com/files/bd64d8m9/createdb.zip/

当前错误:

将 GENERATOR GEN_EMAIL_ACCOUNTS_ID 设置为 1;

来自 IBExpert 的 SQL 文件:

触发器:

发电机:

我的代码:在下面的评论中演示。

0 投票
1 回答
1520 浏览

delphi - Firebird 使用 ZeosLib 和 Delphi 插入不同的数据

我正在使用 Zeos 7 和 Delphi 2009,并且想在将数据发布到数据库之前检查数据库中是否已经存在特定字段下的值。

示例:
Cheese、Mouse、Trap 的字段关键字值

以下有什么问题?还有更好的方法吗?

我尝试在 IBExpert 中使用唯一约束,但它给出了以下错误:

无效的插入或更新值:对象列受到限制 - 没有 2 个表行可以有重复的列值。尝试在唯一索引“UNQ1_KEYWORDLIST”中存储重复值(对活动事务可见)。

0 投票
2 回答
1215 浏览

oracle - 如何使用 OCI 和 Lob 定位器写入 LONG RAW 数据?

我想在编写长原始数据错误描述时修复zeoslib错误:

问题是只有前 2000 个字节加载到表中

在 OCI zeos 代码中这样做:

是否可以使用 lob 定位器写入长原始数据?如何?

PS。如果表有 BLOB 字段而不是 LONG RAW,则此代码可以正常工作。

0 投票
5 回答
2817 浏览

mysql - 在 delphi 查询中使用 @variables:= 不起作用

我有以下问题。

当我运行此代码时,我Incorrect token followed by ":"在 ZQuery1 中遇到异常。
我该如何解决?我需要使用 Delphi,因为我不能将此选择放在 MySQL 过程中。
Zeos 6 不支持返回结果集的 MySQL 过程。

PS
我正在使用 Delphi 2007 和 MySQL 5.1 和 ZEOS 6.6.6。
虽然我很确定版本无关紧要。
我不愿意切换版本,因为我对项目太远了。

0 投票
2 回答
1628 浏览

mysql - 可以 select ... into outfile 不将其保存到文件中,而是将其保存在 blob 中

我想做一个select * from x into outfile 'c:/test.csv'.
但是,我不想将其保存到 outfile test.csv 中,而是将其保存到 blob 字段中。

我从Windows上的客户端开始查询。
MySQL 服务器位于 Windows 或 Linux 上的服务器上(两者都可以)。
但我想拥有文件客户端,而不是服务器上的某个地方。

BTW
用 Delphi 2007 编写的客户端软件,使用 ZEOS 连接到远程服务器上的 MySQL 数据库。

如何获取 outfile 客户端,而不是服务器端?

0 投票
1 回答
4256 浏览

delphi - 将 RichEdit 格式保留为字符串?

我将一个字符串分配给我声明的自定义类型,我使用 TTreeViews Node.Data 属性读取/写入。我从节点读取和写入,如下所示:

读:RichEdit1.Lines.Text := TMyData(TreeView1.Selected.Data).MyString;

写:TMyData(TreeView1.Selected.Data).MyString := RichEdit1.Lines.Text;

这非常适合纯字符串,我希望允许将富格式文本存储在字符串中,而不会丢失格式。我设法通过在 RichEdit 上使用 Streams 来做到这一点,因为我正在使用免费软件 Zeos Lib (SQL) 保存我的数据库,我收到未知令牌错误(可能来自 RTF 标签)。我怎样才能保存没有错误?

更新

我现在已经设法正确保存它而不会出错,使用 Sylverdrag 建议的 Base64 编码/解码。这对我的字符串进行了编码,删除了坏字符。

0 投票
6 回答
1507 浏览

delphi - 如果操作系统认为 SQLite DLL 仍在使用中,我如何在完成后删除它?

如何解锁或删除正在使用的文件,以便删除它?有问题的文件由我自己的应用程序使用。

更具体地说,我的应用程序使用的是免费软件 Zeos Lib。打开和保存我的数据库时,sqlite3.dll 文件必须与我的应用程序位于同一目录中才能正常工作。

我希望我的应用程序是 100% 独立的,所以我将 sqlite3.dll 作为 RC_DATA 添加到我的项目中,并且每当我需要使用它(即打开或保存数据库)时,我将它提取到与我的应用程序相同的文件夹中. 一旦打开或保存操作完成,我想删除 sqlite3.dll 文件,甚至没有人知道它在那里或者不必担心缺少库等。(虽然我可以理解你们中的一些人可能不喜欢将库存储在应用程序中的想法,我有这样做的理由:我不希望我的最终用户知道我的应用程序 (SQL) 的功能背后是什么,他们也不需要担心缺少动态链接库。)

问题是,我可以成功提取 sqlite3.dll 并将其用于我的操作,但该文件被我的应用程序锁定(直到我关闭我的应用程序),这让我:

  1. 强制解锁 sqlite3.dll 文件,而不关闭我的应用程序

  2. 强制删除 sqlite3.dll 文件

除非当然有其他建议?

这是提取和使用它的示例。我不需要直接调用诸如 LoadLibrary 等;Zeos Lib 单元必须注意这一点,只要 sqlite3.dll 与应用程序位于同一目录中。

编辑

我认为我试图做的不是很实用,这不是一个好主意,正如 STATUS_ACCESS_DENIED 之前评论的那样。我已经决定最好不要继续我打算做的事情。