我正在练习编写一个使用MySQL来操作数据的应用程序。 我担心的是,如果我的客户端机器没有预安装MySQL,它无法运行我的应用程序,是吗?所以无论如何都要将数据库服务器直接嵌入到应用程序中,或者在没有数据服务器的情况下运行应用程序。我想知道那里的所有软件是如何操纵数据的。在安装应用程序之前,我们不需要安装某种数据库服务器。
答案 0 :(得分:5)
MySQL是一个客户端/服务器数据库引擎,这意味着您必须分别安装客户端和服务器,并通过某种网络协议进行通信。
如果你想部署一个独立的应用程序,你可能最好使用像SQLite这样的库,它可以提供你在这样的应用程序中可能需要的SQL数据库的大部分功能,而是对本地文件进行操作,不需要安装单独的服务器。
答案 1 :(得分:2)
您可以在应用程序中嵌入MySQL,有关详细信息,请参阅MySQL as an Embedded Database。
答案 2 :(得分:0)
您的应用程序可以与远程数据库一起使用,在配置数据库连接时,您应该设置数据库服务器IP地址(主机),端口和登录凭据。因此,为了编写处理数据操作的应用程序,您需要连接到任何数据库瞬间。
答案 3 :(得分:0)
如果您正在使用客户端 - 服务器应用程序,可以通过MySQL(此解决方案可能适用于内部网络)或通过某些数据库端服务访问MySQL数据库,这可以提供一些API,哪些可以可以通过某种应用程序级协议(例如,XML-RPC)从客户端访问。
如果您正在处理客户端应用程序,则还有其他数据库解决方案,可以在独立软件中使用:SQLite,Derby。作为数据库方法的替代方法,您可以考虑以XML / YAML格式存储数据。
答案 4 :(得分:-1)
我建议在你的应用程序中包装db层,为数据库上执行的所有操作提供简单的接口。通过这种方式,您不必深入了解数据库上的原子操作的细节,通过统一的界面,您可以创建几个不同的类,这些类将负责以相同的方式访问不同的数据库(相同的接口)。这些类应该实现接口并实现所有必要的方法(例如ADO)。现在,您的数据库层可以在所有程序中以相同的方式显示。包装类可以实现单例设计模式,可以在应用程序中作为一个实例使用。通用类设计(接口)为您提供许多好处,例如在必要时可以在另一层上进行替换(切换到完全不同的数据库)。