问题标签 [dbexpress]
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.
sql - 使用 Delphi (Dbexpress) 获取列名
我正在使用这个 sql 命令来获取列名:
但我不知道如何使用执行的 SQL 命令结果!
例如,这种方式无法将列名提取为字符串值,并且我收到此错误 = 不支持操作:
delphi - 传输到 ClientDataset 时的字符串截断
我正在使用 Firebird 2.1、DevArt 和 Delphi 2010 的 DBExpress 驱动程序。我以前使用 Delphi 2006 的一些报告停止工作并产生一条错误消息,指示“算术异常、数字溢出或字符串截断”已经发生。错误发生在我的代码中:
我在我的 SQL 语句中找到了导致错误的地方:
T.sCode 是 Varchar(10) 字段。我的结论是查询将数据返回给 dsProvider,并且当 dsProvider.Data 传递给 cds.Data 时,cds 组件根据它接收到的第一个值设置字段宽度。如果我将“iif”更改为 CASE 语句,我会收到相同的错误消息。我设法通过这样做解决了这个问题:
由于这曾经在没有 CAST 的情况下在 Delphi 2006 中工作,因此我认为新行为是由于对 TClientDataset 的更新。拥有旧的,更宽容的行为会很好。有没有办法将 ClientDataset 配置为无怨无悔地接受这一点,还是我需要告诉我的用户根据 iif 和 CASE 语句对字符串结果进行 CAST?
delphi - delphi 2010 和 dbexpress firebird 驱动程序
我从 Chau Chee-Yang ( http://sites.google.com/site/dbxfirebird/ )开始了解 dbexpress firebird 驱动程序
由于信息很少,我发现很难安装,我成功建立了连接,但出现了几个问题: 使用数据浏览器时,我想连接到数据库给我发送以下错误:
当我想在 sqldataset 的命令文本中生成查询时,delphi 向我发送以下错误:
我真的不知道如果我在安装驱动程序时做错了什么,也许我必须实时给出像 SelectSql.add ('select *....数据。我认为无法直接从 sqldataset 的 CommandText 编写 sql instrcciones 是有问题的 任何帮助都将不胜感激
谢谢并恭祝安康
delphi - 使用 TSQLConnection.SetTraceEvent 时堆栈损坏?
我有一个多线程应用程序,其中为每个线程创建了新的 TSQLConnection。如果我尝试使用跟踪(TSQLConnection.SetTraceEvent 或 TSQLMonitoring),我会按预期获得跟踪结果,但之后当我尝试使用任何数据库功能时,主线程似乎变得狂暴。应用程序抛出异常“在 0x004dffcf 处的访问冲突:写入地址 0xfffffff2”,IDE 中的调用堆栈显示重复行“7c90327a ntdll.RlConvertUlongToLargerInteger + 0x3c”和“7c90e48a ntdll.KiUserExceptionDispatcher + 0xe”,最上面一行是“Controls.读取控制名称(???)”。
那么,跟踪功能是否存在错误并且不适用于多线程应用程序,或者我的应用程序中是否存在隐藏错误?如何发现?
我正在使用德尔福 2007。
编辑看起来即使在主线程中有两个单独的连接也会引发异常。我将尝试创建测试应用程序。
delphi - 在主/详细客户端数据集中复制记录 delphi dbexpress
如何将记录信息从主/详细客户端数据集复制到新记录或现有记录。
例如我想将100号发票的数据复制到150号发票或100号发票的信息到一个新的发票
使用 IBX,我使用存储过程做到了这一点,但是当我应用更新时,客户端数据集遇到了“无等待事务上的锁定冲突”的问题,我认为这是因为信息已经在服务器端。
提前致谢
mysql - MySQL 5 中的 utf8 数据需要哪个 dbExpress ServerCharSet?
根据新闻组中的信息,我们尝试了ServerCharSet=utf8
和ServerCharSet=UTF8
——但是,特殊字符/元音变音符号仍然无法正确显示在客户端数据中。
我们使用 Delphi 2009 和内置的 dbExpress 驱动程序。使用 AsWideString 检索字段数据。
delphi - Delphi/DBExpress 的内存泄漏
我的应用程序有一个奇怪的问题,它的内存使用量不时增加几百兆字节,最终应用程序冻结。该应用程序是用 Delphi 编写的,它使用数据库、COM(用于 OPC)和 TCP/IP。
使用 FastMM,我可以跟踪内存使用情况的屏幕截图。我不完全确定如何读取该表,但看起来某些东西已经分配了 296463552 个字节(0x100fb000,是那个“幻数”吗?)三次。
有任何想法吗?有没有办法跟踪非 Delphi-MM 内存分配?
我正在使用带有 FastMM 4.96 的 Delphi 2007。
编辑:
我使用 IMallocSpy 编写了一个小助手类来跟踪 COM 内存分配。这是我得到的摘录:
所以,问题似乎出在数据库连接上。我正在为 Upscene 的 Firebird 驱动程序使用 Firebird 2.1、DBExpress 和 InterXpress。
Edit2: 这似乎分析了类似的问题,至少重点与这里相同:http ://www.yac.com.pl/mt.texts.sqlexpr-2.en.html
delphi - dbexpress 的主/详细问题
我有一个使用 firebird 2.3 用 Delphi 2010 / dbExpress 编写的主/详细应用程序我发现了一个问题
如果我在详细信息中有两个或三个或更多相同的数据行,更改其中一个中的任何数据也会更改其他行上的数据,我猜这是因为更新仅使用 invoice_id 和 serial 作为键和数据在两种情况下都相等,则更新在两种情况下完成。
主数据 Invoice_id, serial, customer_id, date 1, A, 1.12 / 12 / 2010
详细数据 Invoice_id,序列号,数量,描述,价格 1,A,10,一些东西的盒子,52.52 1,A,10,一些东西的盒子,52.52
我想我可以通过使用字段 ltes 名称 ir line_no 来解决这个问题,其中每一行都有不同的数字,因此可以区分数据以进行如下更新:
Line_no,Invoice_id,序列号,数量,描述,价格 1.1,A,10,一些东西的盒子,52.52 2.1,A,10,一些东西的盒子,52.52
所以信息是一样的,但它也有 line_no 来区分更新中的信息
任何人都知道在客户端,在客户端数据集中执行此操作的任何方法,
非常感谢和问候
oracle - BCB:从 BDE 到 dbexpress,BCD 异常
我对 TSQLStoredProcedure 有一些问题。这是代码:
参数“A”以形式声明为整数(在程序中为 29)。存储过程也没有错误。我敢肯定。数据库是Oracle 11g。顺便说一句,执行存储过程时发生了异常:
使用 BDE 一切正常,但现在使用 dbexpress,出现了这个问题。我在互联网上搜索了几天,但没有找到答案。
我提前谢谢你,请原谅我的英语。
弗朗切斯科
更新
我在网上搜索。我在以下位置发现了一些有趣的东西:
https://forums.codegear.com/thread.jspa?messageID=43223&tstart=0 http://www.delphigroups.info/2/8/750511.html
我决定做一些测试:
有用。不一样的
或使用 TSQLStoredProc。所以现在我通过 TSQLQuery 调用我的 pl/sql 存储过程。我使用“AsString”将值传递给参数。诡异的。dbexpress 如何映射类型?提前致谢。
c++builder - 如何检查 tsqlconnection 是否打开?
登录失败后:
“如果”返回真。如何检查连接是否真的打开?我是否必须执行查询并捕获异常?提前致谢。
弗朗切斯科