问题标签 [dbf]

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 回答
4897 浏览

.net - 使用 oleDB (.NET) 创建时 DBF 文件中的数字字段宽度不一致

当我们创建 DBF 数字字段时,OleDB 总是向它们添加一个数字。像这样的命令: CREATE TABLE [file1.DBF] ( [MY_FIELD] NUMERIC(1,0) NULL) 将创建一个可以包含 2 个数字(或一个数字和一个减号)的字段。有趣的是,我可以像这样要求长度为零NUMERIC(0,0),它会创建一个长度为 1 的字段。

我找不到有关此行为的任何文档。

是特定于使用 oleDB 创建 DBF 还是其他 DB 也会发生同样的情况?

oleDB添加的额外数字是否仅用于处理减号?

这种行为是否一致?我的意思是,我可以在创建表格时将宽度减一吗?

编辑:这个问题已经在这里得到了很好的回答: http ://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/af245580-8897-4608-8fa0-f00286d37324?prof=required

0 投票
3 回答
6534 浏览

c# - 在 C# 代码中创建可从 Excel 读取的 .DBF(VFP 或非 VFP)

语言:C#,系统:Windows7,Excel 2007

我想从一些数据创建一个 .DBF,我想从 Excel 2007 打开它。它可以是 dBase 或 foxpro。我目前在 FoxPro9 中做(顺便说一句,这段代码来自互联网):

这会生成文件,我可以在 DbfViewer 中打开它,但是,我无法在 Excel 2007 中打开它,也无法在我拥有的某些应用程序中使用。我可以使用 DbfViwer 手动将 FoxPro .dbf 转换为 dbaseIII dbf,但我希望它是自动的。

有任何想法吗?

提前致谢

0 投票
1 回答
2841 浏览

c# - 如何使用 c# 操作 .dbf 文件?

我正在尝试这样的事情:

我得到了这个例外

问题是相同的代码在windiws XP、visual studio 2010、office 2007 上运行正常,但在windows 7 64bit、visual studio 2008、office 2010 上运行不正常。我真的不知道有什么区别,我是新手赢得 7. 一些提示会很棒。谢谢。

0 投票
2 回答
15559 浏览

c# - 如何使用 C# 创建 .dbf 文件?

我正在尝试进行选择,并且效果很好

我正在尝试创建一个 .dbf 并得到这个 OdbcException :

错误 [42000] [Microsoft][ODBC dBase 驱动程序] 字段定义中的语法错误。

0 投票
2 回答
740 浏览

c# - 如何在 .dbf 中的列上使用标识?

我正在使用此代码创建一个 .dbf 文件,它工作正常(我使用 OdbcConnection )

插入效果很好:

如何使 Id 列自动递增?

0 投票
1 回答
1832 浏览

c# - 如何使用 Odbc 对 .DBF 文件使用事务?

我在这里使用 .dbf 文件时遇到问题。我可以进行 CRUD 操作,但是当我尝试使用事务时出现异常。我正在这样做:

当它到达 connection.BeginTransaction() 我得到这个异常

这是我的连接字符串

我再说一遍,我可以让 CRUD 操作正常。

0 投票
3 回答
1389 浏览

c# - 当更多用户可以写入 .dbf 数据库文件时使用锁定?

可悲的是,如果你愿意,我必须在服务器端处理一个 .dbf 文件或数据库,我有一个问题。由于 .dbf 在服务器端,更多用户可以访问它(读写,我使用 C# 和 OdbcConnection)。每当我进行插入/更新时,我应该使用锁吗?


我将回答我自己的问题,因为我想粘贴一段代码。我有一个简单操作的基类

我不知道这是否是最好的解决方案,但我只需要这些操作。我有点困惑如何在这里使用锁。

0 投票
6 回答
18674 浏览

delphi - 如何以本机方式读写 dbf?

在 Delphi for Win32 中,如何在没有 BDE 的情况下以本机方式读写 dbf 文件?我知道网络上有一些可用的组件,但我从未使用过其中任何一个,所以我不知道该选择哪个(如果有的话)。

0 投票
3 回答
1616 浏览

c# - 在 C# 3.5 中生成 dBase II DBF 文件

我正在生成 dbf 文件以导入仅接受 dBase II OR III 的遗留系统。我的应用是.Net 3.5。我最初开始使用这个组件 VFPOLEDB.1,但它只生成不向后兼容的 dBase V 格式的 dbf 文件。

任何人都知道在 dBase II 或 III 中生成 de dbf 文件的组件或驱动程序

谢谢

0 投票
4 回答
11217 浏览

c# - dBase III .dbf 文件在不同机器上的编码问题

我正在使用 C# 和 .NET 3.5,尝试使用带有 Microsoft dBase 驱动程序的 ODBC 从旧 dbf 文件中导入一些数据。

dbf 采用 dBase III 格式,对字符串使用 ibm850 编码。

现在,当我在我的机器上运行我的程序时,从 OdbcDataReader 读取的所有字符串数据都转换为 UTF-16 或 UTF-8 之类的,idk 我将它保存为 UTF-8 并且一切正常,但是当我尝试在 XP 机器上使用此程序,某些字符无法正确转换为 UTF-8。'Õ' 例如。可能还有其他一些。'Ä'、'Ö' 和 'Ü' 等字符都可以。这就是问题。也许 ODBC 或驱动程序使用了一些机器文化信息或其他东西来搞砸一切。

是否可以从数据库中以二进制形式读取字符串?也许一些函数,如 CONVERT 或 CAST?或者我在哪里可以找到一些适用于这个 dBase 驱动程序或其他驱动程序的 SQL 函数和语法的参考资料?我四处寻找,找不到任何东西。使用 ODBC 和 SQL 时,我感到很盲目。

现在我正在使用一个临时的技巧,用 Õ 替换所有 σ。

谢谢!

示例代码:

结果:

E5 in dbf (Õ in 850)

pc1 上的 Test.txt:C3 95(UTF-8 中的Õ)

pc2 上的 Test.txt:CF 83(UTF-8 中的 σ)