连接本地环境中已有的数据库
Posted
技术标签:
【中文标题】连接本地环境中已有的数据库【英文标题】:connecting already existing database in a local environment 【发布时间】:2020-12-12 22:50:58 【问题描述】:我有一个连接到 vb6 应用程序的访问数据库,整个事情通过共享网络连接在两台计算机之间,一台运行 win 8,另一台运行 win 7,并且没有任何方式涉及互联网,也不应该它事实上这是一个要求
对不起,我已经尝试在网上研究,但是时间真的很短,网上有很多令人困惑的材料
我正在创建一个连接到 mysql DB 的 WPF 应用程序
现在我已经复制了访问文件并在 MySQL 中导入了 DB 的内容 导入的数据库真的很乱,所以我正在修复它
我很困惑的是如何让它在那里工作
我要不要去安装 MySQL 并在那里手动完成整个过程,重复所有步骤和更改 制作完成 制作一个包含我所做的所有更改的代码/脚本的文档并运行数据 它,甚至有没有办法在一个单一的 go 中将其作为一个整体实现 将两个数据库连接在一起,我什至不知道这是否可能【问题讨论】:
【参考方案1】:是的,代替 Access 文件的简单“文件共享”,您现在将运行某种 SQL 服务器系统。在这种情况下,MySQL。但它可以是 PostgreSQL 或任何类型的“服务器”数据库。
因此,必须设置、安装“sql server”实例,并确保运行该 MySQL 实例的“box”也允许外部连接(通常默认情况下,给定的计算机防火墙设置会阻止这种情况)。
此时,同一网络上的 2 或 10 台不同的计算机现在可以简单地连接到 SQL 服务器。代码当然会非常相似。您几乎可以肯定使用 oleDB 提供程序与 Access 一起使用。但是,您可以使用 ODBC 提供程序,甚至可以使用来自 MySQL 的提供程序。因此,这些提供者意味着您更改连接对象、数据读取器对象等。但是“基本”.net 类型(例如行、数据表或数据集)可以保持与以前一样(因此您只需更改提供者)。如果您有很多基于 oleDB 的代码,那么您可以考虑继续在 .net 中使用该 oleDB 提供程序代码,因此您将连接字符串更改为现在指向 MySQL。
如果您没有很多代码,那么请务必采用 .net 的 mySQL 提供程序。但如前所述,最少的更改是继续为 mysql 使用 oleDB 提供程序,这表明要更改的代码最少。
至于msaccess的数据迁移?好吧,目前还不清楚什么工具以及您现在如何做到这一点。但是,一旦您将数据传输到 MySQL 服务器(假设您安装 + 设置我的 sql 以在一台计算机上运行)。将代码中的 .net 连接指向 Now MySQL 而不是 Acess 是一件简单的事情。因此,大多数(如果不是全部)用于处理表的代码逻辑可以保持与以前一样 - 但如前所述,您必须在 .net 中交换提供程序部分
现在,如果您真的很幸运并且 .net 代码使用了 ODBC 提供程序?然后你所要做的就是改变你的连接字符串。当然,你的代码中的“一些”SQL 语法可能需要调整,比如 Oracle、MS SQL server、postgreSQL 和 MySQL?
嗯,它们都有一些不同的特性和语法——尤其是在日期/时间计算、datediff() 等方面。但是您在 .net 代码中拥有/拥有的一般 sql 应该主要继续运行未针对 MySQL 数据表进行更改。
至于如何迁移数据?我认为一个非常好的工具当然是使用 MS-Access。你要做的是让 MySQL 启动并运行。然后使用 ms-access 打开该数据库。然后将链接表从 MS-access 添加到 MySQL 表。
此时,您现在可以从 Access 运行附加查询以将数据移动/发送到 MySQL。这实际上取决于该数据库中有多少表以及有多少相关表。 Access 中的相关表越复杂且数量越多,将此类数据上移到 MySQL 的挑战就越大。
传输 Excel 或小型甚至大型表格是轻而易举的事。 (再次,使用 MS Access 并链接到 sql server 上的表)。但是,事情可能变得混乱的地方是,如果您说 25 个表,并且它们都是相关的,那么许多表都有级联删除并说强制的父子关系。所以表越多,尤其是相关数据表越多,这样的数据迁移任务就会越多。
我认为 MS Access 是一个非常好的工具,因为如果您设置了与 MySQL 的连接,那么您可以在 Access 中执行 transferDatabase 命令以将一个表发送到 MySQL,甚至这些列的所有列和数据类型将自动为您创建。因此,Access 不仅可以传输数据,更有价值的是它能够为您在 MySQL 上创建目标表 - 这将节省您在 MySQL 上构建和设置表的大量时间。
【讨论】:
以上是关于连接本地环境中已有的数据库的主要内容,如果未能解决你的问题,请参考以下文章
优胜美地升级后本地 WordPress 环境中“建立数据库连接时出错”
ORACLE 11G Windows安装环境,只能在本地使用PLSQL进行连接,非本地用户通过IP/ORCL连接时提示12170