使用Advantage Local Server .Net提供程序更新DBF文件是否安全,而FoxPro应用程序正在运行,也可能正在访问DBF文件?即Advantage是否负责行锁定?
我正在使用C#,我无法将大文件加载到二进制字段使用字节数组.
基本上,如果我加载的文件太大,我会遇到内存问题.
有没有办法在不使用大量ram的情况下将文件加载到二进制字段中,即避免先将文件加载到内存中?
如果它有帮助,我使用的是Advantage Database Server,这是使用winforms应用程序而不是Web应用程序.
问候
我正在使用 ADS v10 测试版。我正在尝试计算有序结果集。
1) ORDER BY 在嵌套查询中。我需要使用嵌套的 SELECT 进行一些计算:
SELECT Name, Value, ROWNUM() FROM (SELECT * FROM MainTable WHERE Value > 0 ORDER BY Value) a
Run Code Online (Sandbox Code Playgroud)
我得到
未找到预期的词法元素:) 解析表格时出现问题 在您的 FROM 关键字之后的名称 SELECT 语句。
删除 ORDER BY 后,一切正常。虽然,我在帮助中找到了示例,但它看起来像我的查询(确实更复杂):
SELECT * FROM (SELECT TOP 10 empid, fullname FROM branch1 ORDER BY empid) a UNION SELECT empid, fullname FROM branch2 ORDER BY empid
Run Code Online (Sandbox Code Playgroud)
2) ORDER BY+ ROWNUM()。我在上面的例子中使用了嵌套查询来计算有序的行。有没有机会避免嵌套查询?在 SQL Server 中,我可以执行以下操作:
SELECT Name, Value, ROW_NUMBER() OVER(ORDER BY Value) FROM MainTable …Run Code Online (Sandbox Code Playgroud) 我们正在尝试在使用Advantage表达式引擎的CDX和ADT表上创建索引.
到目前为止我们尝试的代码如下所示:
CREATE INDEX IDX1 ON TBL1 (STR(SOME_NUMBER_FIELD,6)+DTOS(SOME_DATE_FIELD));
Run Code Online (Sandbox Code Playgroud)
是否可以STR(SOME_NUMBER_FIELD,6)+DTOS(SOME_DATE_FIELD)使用SQL 创建带有表达式的索引?
我们尝试用双引号,单引号和括号引用表达式.
我现在正在搜索Advantage Database Server中的一种可能性,通过sql将字节流,所谓的blob文件放入表中.当我建立一个完整的数据库时,我这样做:
TBlobField(BaseTable.FieldByName('BlobData')).LoadFromStream(BinaryStream);
Run Code Online (Sandbox Code Playgroud)
现在我想在我的数据库中添加一个Entry,其中一个Field有'BlobData'.我开始是这样的:
FADSQuery.SQL.Add('Insert Into '+DBName'+'(BlobData)');
TBlobField(FADSQuery.ParamByName('BlobData')).LoadFromStream(BinaryStream);
Run Code Online (Sandbox Code Playgroud)
但是编译器告诉我它找不到该BlobData字段.:(这样做几乎是正确的吗?我不想把插入语句中的整个文件插入到语句中.
先感谢您
我已经搜索和搜索,但无法找到如何在Delphi中获取查询的进度.我已经找到了Advantage .NET数据提供程序的一些信息,但可以使用Delphi的一些帮助.
我有一个与优势数据库一起使用的Windows服务,偶尔会进行一些http调用.在极少数情况下,这些电话可能会很长.调整我的数据库连接超时.我没有使用数据模块或任何东西.只需手动创建连接.
我的主要问题是,如果我暂时没有使用它,通常会阻止连接超时?TAdsComponents是否会以某种方式发送在后台调用的保持活动消息?这是依赖于vcl所以我在服务中没有这个吗?不知何故,我觉得创建一个线程来进行我的http调用,并且在主线程中检查它每隔几秒钟完成一次会阻止连接死亡.这是真的吗?
我正在将Delphi程序从BDE转换为Advantage数据库.
在周末,我使用Delphi XE在Win 7机器上工作.在这一周,我使用Delphi 7在Win XP机器上工作.
优势表在Win 7机器上运行良好,但是当复制到XP机器时,它们无法访问 - Error 5175 the index was created with a different collation sequence
我搜索过网络,甚至进入了Advantage论坛,但找不到任何有用的东西.
XP和Win 7在位置等方面的设置相同.表属性将归类序列列为空白.
任何人都知道造成这种情况的原因以及如何解决.我试过删除并重新创建索引,但无济于事.
delphi indexing advantage-database-server collation codepages
我有一个关于子查询的问题.当我分析几个SQL查询时,我偶然发现了一个奇怪的情况.
当我执行以下SQL时,我得到了以下结果:
select *
from orderlyn
where OLWArtnr in (select OlwArtnr from prijs)
Run Code Online (Sandbox Code Playgroud)
但是表格Prijs中不存在OlwArtNr.
CREATE TABLE Prijs (
Nummer Char( 20 ),
Lijst Char( 15 ),
Verkprijs Double( 0 ),
Aankprijs Double( 0 ),
BTW Char( 2 ),
Naam1 Char( 30 ),
Naam2 Char( 30 ),
Naam3 Char( 30 ),
Naam4 Char( 30 ),
Vervangnr Char( 20 ),
Kortcode Char( 10 ),
Datum Date,
Vpeuro Double( 0 ),
A1 Char( 20 )) IN DATABASE;
Run Code Online (Sandbox Code Playgroud)
最让我担心的是,当我用作select nummer from prijs子查询时,它会给出不同的结果. …
我保留了一个Advantage TAdsConnection对象池并按要求将它们移出.偶尔我得到一个导致6610错误,我假设因为它处于空闲状态并且连接被重置.我可以运行任何旧查询并捕获6610,但这是一个漫长的等待特定错误.
在我将优惠连接传回原状之前,是否有一种检查优势连接健康状况的好方法?