将 Visual Fox Pro 连接到 MySql 数据库

发布于 2024-11-05 06:14:04 字数 71 浏览 3 评论 0原文

我将 Visual FoxPro DBF 转换为 mysql,我需要将 vfp 代码直接连接到 mysql 数据库。请帮忙。谢谢

I converted visual foxpro DBF to mysql and I need to connect the vfp code directly to the mysql database.Please help.thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

遥远的绿洲 2024-11-12 06:14:04

有多种方法可以从 VFP 访问服务器数据库中的数据,但我不确定您是否会将其中任何一种称为直接连接到服务器数据库。具体来说,您不能直接对服务器数据库使用 USE 和 REPLACE 等命令,也不能将表单控件直接绑定到服务器数据。

无论使用哪种方法,您都可以将一些数据从服务器提取到 VFP 中的游标中,对游标进行操作,然后(如果适用)将更改保存回服务器。

三种主要方法是:

1) 远程视图——使用这种方法,您可以将 SQL 查询存储在数据库中。要运行查询并从服务器提取数据,请使用远程视图。
2) SQL Pass-Through (SPT)——通过这种方法,您可以使用 SQLEXEC() 命令将 SQL 命令发送到服务器,并获取结果。
3) CursorAdapter 类——使用这种方法,您可以设置一个类来描述如何从服务器获取数据,当您调用 CursorFill() 方法时,您将获得一个充满数据的游标。

您应该选择其中一种方法并在整个应用程序中使用它。它们各有优点和缺点。

为了帮助您开始,由于您可能希望使用 SPT 进行测试(例如在命令行窗口中),因此以下是该方法的基础知识:

首先,您必须连接到数据库。您可以使用 SQLConnect() 或 SQLStringConnect() 函数来完成此操作。例如:

  • 您需要在指示的位置填写您的用户名和密码。
    nHandle = SQLStringConnect("driver={MySQL ODBC 5.1 Driver};SERVER=localhost;UID=;pwd=")

nHandle 的正值表示成功。一旦你有了句柄,你就可以用它来发送额外的命令。例如:

nSuccess = SQLEXEC(m.nHandle, "SELECT First, Last FROM Customers WHERE State='PA'", "csrPACustomers")

这告诉 MySQL 执行您传入的查询并将结果放入 csrPACustomers 中。 nSuccess 表示成功或失败。

完成后,使用 SQLDisconnect() 关闭连接:

SQLDisconnect(m.nHandle)

您可以在 VFP 帮助文件和 VFP Wiki (http://fox.wikis) 中阅读有关远程数据的所有三种方法的信息。 com)。一旦您决定要使用哪种方法,您就可以提出具体问题。

There are a number of ways to access data from a server database from VFP, but I'm not sure you'd call any of them connecting directly to the server database. Specifically, you can't use commands like USE and REPLACE directly against a server database, nor can you bind form controls directly to the server data.

Whichever approach you use, you pull some data from the server into a cursor in VFP, operate on the cursor, and then, if appropriate, save changes back to the server.

The three main approaches are:

1) Remote views--with this approach, you store SQL queries in a database. To run the query and pull data from the server, you USE the remote view.
2) SQL Pass-Through (SPT)--with this approach, you use the SQLEXEC() command to send SQL commands to the server, and get results.
3) CursorAdapter class--with this approach, you set up a class that describes how you want to get data from the server, and when you call the CursorFill() method, you get a cursor full of data.

You should choose one of these approaches and use it throughout your application. They each have pros and cons.

To get you started, since you'll probably want to use SPT for testing purposes (like in the Command Window) anyway, here's the basics of that approach:

First, you have to connect to the database. You do that with either the SQLConnect() or SQLStringConnect() function. For example:

  • You'll need to fill in your userid and password where indicated.
    nHandle = SQLStringConnect("driver={MySQL ODBC 5.1 Driver};SERVER=localhost;UID=;pwd=")

A positive value for nHandle indicates success. Once you have a handle, you use it to send additional commands. For example:

nSuccess = SQLEXEC(m.nHandle, "SELECT First, Last FROM Customers WHERE State='PA'", "csrPACustomers")

That tells MySQL to execute the query you pass in and put the results in csrPACustomers. nSuccess indicates success or failure.

When you're done, use SQLDisconnect() to close your connection:

SQLDisconnect(m.nHandle)

You can read about all three approaches to remote data in the VFP Help file and on the VFP Wiki (http://fox.wikis.com). Once you decide which approach you want to use, you can ask specific questions.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文