sql - 跨平台SQL? (sqlite+mysql+tsql)

标签 sql wrapper

sql有跨平台的解决方案吗?我的原型(prototype)是在 sqlite 中。我正在切换到提供 tsql 的服务器,并且我过去曾考虑将 mysql 用于我的网络服务器(也许我应该坚持使用 tsql 和 sqlite)。我想知道是否有一个 .NET 库允许我编写与所有兼容的 sql。

我在创建表时遇到了一些烦恼。我以为主键会自动增加,但事实并非如此。我必须写恒等式(1,1)。当我将我的 sqlite 代码移植到 mysql 时,我也遇到了创建表的问题,但我确信一旦我的 sql 语句变得更加复杂,还会有其他地方。所以我认为尝试一个库可能是个好主意。

最佳答案

我个人使用 SubSonic 作为 ORM。它支持 SQL-Server 和 MySQL,以及 SQLite。数据库创建始终是一个棘手的问题,但您通常不会经常执行它。我选择了 SQLite,因为它非常便携,并且当我使用 Mono 移植代码时也应该可用。 TSQL (SQL-Server) 是仅限 Windows 的产品,并且不可移植。我的数据库也不会很大(< 100 Mb),这可能也需要在您的选择中考虑。

我建议(目前,直到 VS 2010 发布)您不要使用 Entity Framework ,因为它是传统的 v1.0 MS 产品,而且问题很大。基本功能不存在,并且人为限制使其不如其他 ORM 有用。毫无疑问,下一个版本会更好,但与 SubSonic 等产品相比,当前版本不值得您花时间。

关于sql - 跨平台SQL? (sqlite+mysql+tsql),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1911518/

相关文章:

mysql - 简单的最大功能困扰着我

mysql - 仍然得到我想通过 sql 查询排除的输出

php - 无法使用此 mysql 语句更新分数

Python:测试字典(dict)条目是否被修改

java - 有没有办法重载Java中的整数拆箱方法?

c# - 在 SQL 中基于一对多表关系填充对象

sql - 从 SQL 中读取另存为文本的 XML

python - python 服务器包装器的示例代码

bash - 用 bash 仔细模仿 Argv[0]

java - 我如何在类上应用 JNI 而不是将随机函数组合在一起?