如何使用 .NET 从现有 VFP (OLEDB) 表创建新的 VFP (OLEDB) 表?

2023-12-01

我们有一个创建许多 Visual Foxpro (DBF) 表的应用程序。每个表都有不同的架构,但它们都包含一个已知的日期字段。

我被要求创建另一个应用程序(在 C# 中),它将上周的数据从每个表复制到一个新表(在与源表不同的文件夹中)。不同的表将保留(例如,如果有三个源表,则将有三个目标表)。

随着时间的推移,表可能会发生变化(例如添加新字段),因此我无法对表结构做出假设(除了上述日期字段的存在)。

从一个表中获取数据并创建具有相同结构的新表的最简单/最佳方法是什么?

我知道如何查询表以提取数据(例如,用上周的记录填充数据集)。但是,我认为必须有一种更好的方法来创建新表并用结果填充它,而不是手动解析架构中的所有字段信息并使用它来重新创建目标表。

使用 FoxPro 似乎与 SQL Server 不同,每次都让我头疼,所以我需要一些关于我的方法的指导。

生产机器上安装了 VFP 9 OLEDB 驱动程序。如果可能的话,我们不希望安装太多其他东西。


要获取数据、表和记录的精确副本,您可以通过单个 SQL-Select 来完成

OleDbConnection oConn = new OleDbConnection("Provider=VFPOLEDB.1;Data Source=C:\\SomePath");
OleDbCommand oCmd = new OleDbCommand();
oCmd.Connection = oConn;
oCmd.Connection.Open();
oCmd.CommandText = "select * from SomeTable where someCondition into table YourNewTable";
oCmd.ExecuteNonQuery();         
oConn.Close();

你的 where 子句几乎可以是任何东西,并且 Into TABLE 子句告诉 VFP 引擎将结果集创建为新表,因此无需显式声明类型、列等,从一个查询数据并将数据推入另一个表......

需要考虑的一个问题...验证用户访问权限,以便在您尝试创建新表的任何位置显然能够创建、读取、写入。如果需要,您甚至可以指定完全限定的路径,例如 C:\SomeOtherPath\Monthly\MyTable1...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 .NET 从现有 VFP (OLEDB) 表创建新的 VFP (OLEDB) 表? 的相关文章

随机推荐

  • 从描述符字符串恢复 .proto 文件。可能的?

    是否可以将包含 Protocol Buffers 描述符的字符串反编译回 proto 文件 假设我有一个长字符串 例如 n file proto u001a u000ccommon proto u00a3 u0001 n nMsg1Requ
  • 如何在没有 Web 请求或 Web 服务器的情况下解析 JSON 文件?

    寻求建立以下解决方法 getJSON myfile json function data showAll data 我想避免使用网络服务器 但只想直接访问文件 getJSON使用网络请求 出现错误 XMLHttpRequest cannot
  • PHP 中的 MySQL 与 MySQLi [重复]

    这个问题在这里已经有答案了 各自的区别 优点是什么 缺点 我不是在寻找编码偏好或主观答案 什么是实际的差异 存储 实现 代码的样子 环境要求 您可以使用准备好的陈述与 mysqli 还有一个存储大 blob 数据的函数 旧的 mysql 扩
  • 为什么IE8是IE7模式。变量“IE”== 7

    我的 HTML 页面中有如下标题 我在 IE8 中打开该网站 当我在 Web Developer 中查看它时 如果 IE 7 处于活动状态 WebBrowser 在 IE8 紧凑视图 上设置 BrowserMode 在 IE7 标准 上设置
  • Facebook FQL 获取 Facebook 页面的粉丝列表[重复]

    这个问题在这里已经有答案了 可能的重复 查询 喜欢 我的 Facebook 页面的用户 目前该网站上的所有解决方案都不起作用 我是 Facebook 页面的管理员 想导出所有粉丝的 ID 这可能吗 https api facebook co
  • Mysql - CAST 的唯一约束(TIMESTAMP as DATE)

    我有一个TIMESTAMP myDate我的 MYSQL 表中的字段 有没有办法可以定义一个唯一的字符串stringForTheDay对于每一个day in myDate 就像是 UNIQUE stringForTheDay day in
  • SVG 膨胀/侵蚀滤镜与 Illustrator 偏移路径

    下面是在 Chrome 22 0 1229 79 Mac 上呈现的 SVG 图像的屏幕截图 原始的 svg 位于 jsfiddle 上 http jsfiddle net LGBk5 左图是使用 SVG s 扩张和腐蚀滤镜制作的 右图是使用
  • Node.js Web 服务器中的并行请求

    如果我有一个运行 Node js 的 Web 服务器 那么我是否能够同时处理多个请求 从我的初步测试中我可以看出 Node 主要是单线程的 目前只能处理一个 HTTP 请求 但如果一个请求需要很长时间才能完成 例如上传大量数据 则所有其他请
  • 如果我不编辑代码,PHP Mail 就会停止工作

    我的 PHP 邮件有问题 它有时会停止工作 我什至没有接触代码 我有一个脚本可以检查所需的表单是否为空 这个脚本有效 但是 如果我填写所有必填字段 我应该会收到一条文本 显示 您的邮件已成功发送 但我没有 但是 如果我通过仅将一些文本向下移
  • C# 实体 LINQ 返回错误且重复的值

    我使用以下代码 List
  • cakephp 2 ajax 表单

    我在 cakephp 2 中构建 ajax 表单时遇到问题 它显然自 1 3 以来已经发生了很大变化 我正在使用以下代码 div div div div
  • C 中的通用二叉搜索树

    我已经实现了二叉搜索树 但我也想使其通用 代码如下 typedef struct treeNode int data struct treeNode left struct treeNode right treeNode 和功能 treeN
  • laravel with() 方法与 load() 方法

    我真的很努力去理解两者之间的区别with 方法和load 方法 但没能真正理解 据我所知 使用with 方法 更好 因为我渴望加载关系 看来如果我使用load 我加载关系就像使用hasMany 或与对象之间的关系相关的任何其他方法 我理解错
  • 传递到字典中的模型项是 .. 类型,但是该字典需要类型为 的模型项

    添加了此问题和社区维基答案 以帮助解决许多未解答的问题 如中讨论的这个元帖子 我有一些代码 当它执行时 它会抛出一个异常 传递到字典中的模型项是 Bar 类型 但该字典需要 Foo 类型的模型项 这是什么意思 我该如何解决 该错误意味着您正
  • 单个查询中的 EF 多个聚合

    我想根据不同的条件获取一组的计数 var invoices new AccountingEntities Transactions var c1 invoices Count i gt i Type 0 var c2 invoices Co
  • Opera PreventDefault() on keydown 事件

    我正在尝试在我的网络应用程序中嵌入一些按键绑定 但我在 Opera 上遇到了困难 我有这个代码 window onkeydown function e var key e keyCode e keyCode e charCode e cha
  • 当我编织时,Rstudio 正在删除关键文件(PDF 和 HTML)

    所以我正在做一场 R 噩梦 我已经返回到在 RStudio 的上一次迭代 或可能更多 下构建的项目 我制作了一份可行的报告 并要求我更新 而我当前的烦恼那时并不存在 发生的情况如下 My report file is ISS Time Se
  • 批处理:搜索字符串以跳过上面的行并将结果写入新文件

    我已经成功编写了一个脚本 它需要一个字符串在特定文件中搜索 然后输出它第一次出现的行 然后我将该值放入 for 循环中并跳过解析该行数并写入它内容到一个新文件 然而 我没有得到空行 我发现这很难解决 我正在搜索的字符串是 缓存它出现的行号
  • java.lang.NoSuchFieldError:VERSION_2_3_0

    我刚刚将 Struts2 版本升级到 2 5 2 然后开始出现错误 我的应用程序甚至无法启动 我对 pom xml 和 web xml 进行了更改 我不确定我是否错过了任何课程 但日志没有这么说 pom xml
  • 如何使用 .NET 从现有 VFP (OLEDB) 表创建新的 VFP (OLEDB) 表?

    我们有一个创建许多 Visual Foxpro DBF 表的应用程序 每个表都有不同的架构 但它们都包含一个已知的日期字段 我被要求创建另一个应用程序 在 C 中 它将上周的数据从每个表复制到一个新表 在与源表不同的文件夹中 不同的表将保留