标签: advantage-database-server

尝试使用where子句中的like语句删除记录时,Advantage数据库将引发异常

下面的代码显示当sql语句为:时,一条记录被删除:

select * from test where qty between 50 and 59  
Run Code Online (Sandbox Code Playgroud)

但是sql语句:

select * from test where partno like 'PART/005%'
Run Code Online (Sandbox Code Playgroud)

引发异常:

Advantage.Data.Provider.AdsException: Error 5072:  Action requires read-write access to the table
Run Code Online (Sandbox Code Playgroud)

如何应用where子句可靠地删除记录?
注意:我使用的是Advantage Database v9.10.1.9,VS2008,.Net Framework 3.5和WinXP 32位

using System.IO;
using Advantage.Data.Provider;
using AdvantageClientEngine;
using NUnit.Framework;

namespace NetworkEidetics.Core.Tests.Dbf
{
  [TestFixture]
  public class AdvantageDatabaseTests
  {
    private const string DefaultConnectionString = @"data source={0};ServerType=local;TableType=ADS_CDX;LockMode=COMPATIBLE;TrimTrailingSpaces=TRUE;ShowDeleted=FALSE";
    private const string TestFilesDirectory = "./TestFiles";

    [SetUp]
    public void Setup()
    {
      const string createSql = @"CREATE TABLE [{0}] (ITEM_NO …
Run Code Online (Sandbox Code Playgroud)

advantage-database-server

2
推荐指数
1
解决办法
669
查看次数

如何使用Advantage Database Server连接多个文件夹中的表

使用Advantage Database Server SQL,我需要能够连接位于不同文件夹中的空闲表.有没有办法做到这一点?

advantage-database-server

2
推荐指数
1
解决办法
708
查看次数

DataReader,按列检索数据

我想从DataReader按列检索数据.

现在我正在使用这样的,

AdsCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT a,b,c,d FROM testTable";
AdsDataReader reader = cmd.ExecuteReader();

reader.Read();
string columnA = reader.GetValue(0).ToString(); // I want to use column name instead of index number
Run Code Online (Sandbox Code Playgroud)

有没有办法按列名获取数据?喜欢

string columnB = reader["B"].getValue(); 
Run Code Online (Sandbox Code Playgroud)

谢谢!

asp.net datareader advantage-database-server

2
推荐指数
1
解决办法
5648
查看次数

1
推荐指数
1
解决办法
5211
查看次数

窃取我的信息

TL; DR: 我的POS使用Sybase Advantage数据库服务器存储我的销售数据,我想访问它,但我只有备份文件.


我拥有一家拥有"先进"POS软件的小型企业,该软件拥有我所有销售数据的唯一副本.他们有一些备份计划,但他们不愿透露任何细节.还有一个自动每日本地备份例程,但由于这是一个POS并且有关于删除数据的某些法律,我不允许(也不需要软件)从备份恢复甚至检查它是否有效.当他最后一次从备份恢复时,我问了支持人员,他说"别担心,我们不需要它".

当然,我很担心.

在这一点上我会注意到法律要求我保留这些数据,如果我因任何原因未能这样做,我个人可能面临数百万的巨额罚款.我想避免这种情况.

除了保存数据,并验证备份包含我需要保留的数据之外,我还想创建报告.POS供应商声称它可以创建我需要的任何报告,但是每次我向他们询问报告时,它都包含错误的数据,崩溃,导出不可读的文件(他们的回复是文件很好) ,我的[插入相关文件阅读器]已被破坏),或者根本就不存在(他们的回复通常类似于"你无论如何都不需要该报告").我问过自己访问数据库的副本,他们说他们不能允许这样做.我唯一的办法就是为开发和测试报告支付数万美元.你问我想要什么报告?

SELECT * FROM SALES
Run Code Online (Sandbox Code Playgroud)

要创建这个简单的报告,我需要将我的数据从Sybase Advantage数据库服务器备份文件迁移到我可以使用的格式,例如MySQL数据库,但我发现的所有迁移工具都需要访问工作的数据库服务器.

如何从这些备份中获取数据?

sybase advantage-database-server sqlanywhere database-restore database-backups

1
推荐指数
1
解决办法
294
查看次数

Advantage Database Server 空闲表和Advantage Database Server 普通表有什么区别

Advantage Database Server空闲表和Advantage Database Server 普通表有什么区别。

谢谢 !

advantage-database-server

1
推荐指数
1
解决办法
551
查看次数

使用2个不同字段的案例陈述

我有一个称为主题的字段,主题中的数据有时是NOA,我想做的是当主题为NOA时将字段Date更改为空,如果不是,则使用Date字段中的Date。我知道这是不正确的,但类似这样:请参阅代码

Case
 when subject not like 'NOA%' then date
  else ''
end as NOADATE
Run Code Online (Sandbox Code Playgroud)

sql advantage-database-server

1
推荐指数
1
解决办法
47
查看次数

SQL 2008链接服务器访问拒绝错误的优点

我试图在SQL 2008中创建一个链接服务器到Advantage v7数据库服务器.我已经使用下面的命令在SQL 2008中成功创建了链接服务器,并且连接测试正常.另外,我连接的Advantage DB没有数据字典.

SQL创建链接服务器

EXEC master.dbo.sp_addlinkedserver 
  @server = N'ADVANTAGE', @srvproduct=N'Advantage', 
  @provider=N'Advantage.OLEDB', 
  @datasrc=N'\\asc1\questtest$\spaulrun'
 /* For security reasons the linked server remote logins password is changed with ######## */

EXEC master.dbo.sp_addlinkedsrvlogin       
  @rmtsrvname=N'ADVANTAGE',
  @useself=N'False',
  @locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
Run Code Online (Sandbox Code Playgroud)

当我运行以下查询时:

select * from
openquery(ADVANTAGE,'select * from members')
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "Advantage.OLEDB" for linked server "ADVANTAGE" reported an error. Access denied.
Msg 7350, Level 16, State 2, Line 1
Cannot get the column information from OLE …
Run Code Online (Sandbox Code Playgroud)

advantage-database-server sql-server-2008

0
推荐指数
1
解决办法
5010
查看次数

Advantage 数据库服务器 10 - 错误 1500

我有一个使用 ADS 服务器(版本 10.10)的应用程序(用 Delphi 2009 编写)。我正在使用 TDataSet 组件来访问数据库。

在我的开发机器上一切正常。但在测试机器(也使用 ADS 10.10)上,当尝试打开从包含 unicode 字段的表中选择数据的 TAdsQuery 时,我收到错误 1500。

知识数据库表明文件 aicu.dll 和 icudt40l.dat 必须同时存在于客户端和服务器上。我已经在两台机器上检查过这一点,它们都存在于 Advantage 10.10\Server 目录中。

也许其他人经历过这个错误,可以给我提示哪里出了问题吗?谢谢!

database delphi advantage-database-server delphi-2009

0
推荐指数
1
解决办法
1822
查看次数

在Windows上使用PHP连接到Advantage数据库

我的客户有一个使用Advantage数据库的应用程序.我在尝试使用ODBC或PHP连接器尝试连接到它时遇到问题它得到了这个发现6420错误,这似乎很常见.

我认为大部分问题是我对Advantage数据库的理解不足.我在想问题可能是没有服务器正在运行?该应用程序可能有自己的服务器吗?我编写了一个小的C#程序,它连接到数据字典并且读得很好,但是它将它Advantage.data.provider用于C#.这就像服务器吗?

所以我想底线是:有没有办法连接到这个数据字典/ Advantage数据库,所以我可以用PHP访问?(最好不要买东西)

谢谢你的帮助.

php odbc advantage-database-server

0
推荐指数
1
解决办法
2822
查看次数