Dart(运行服务器端)如何访问数据库?
我可以直接执行SQL语句,还是可以使用某种ORM?
答案 0 :(得分:10)
目前没有Dart的数据库API可以与ODBC / JDBC相媲美,据我所知也没有ORM。将来肯定会出现这样的事情,Dart SDK最终也会允许您将本机代码与它绑定,从而通过链接现有数据库库来更轻松地提供数据库访问。
我自己目前正在通过其REST接口在Dart上使用Riak,这适用于小型应用程序,但对于更严重的事情,我们将不得不等待更好的SDK支持。
注意:客户端数据库(如IndexDB和WebSQL)目前正处于added到dart:html。
更新:现在有一个MongoDB驱动程序,我们正在开发亚马逊DynamoDB的驱动程序
更新2:现在,mysql和postgresql可以使用驱动程序。
答案 1 :(得分:5)
Vadim Tsushko已经发布了一个mongoDb驱动程序。最近在dartlang news上提到了它。
Pastebin例如用法。
更新:我还在dartwatch blog
上发表了关于它的用法的博文答案 2 :(得分:1)
这引发了一个更大的问题,即从当前架构(如CakePHP和RoR)迁移到Dart。 Dart是非常新的,并没有在服务器端提供太多功能,没有数据库驱动程序是你的问题中最少的--Dart缺乏一个经过验证的经过验证的MVC框架,这意味着想象从CakePHP迁移是非常荒谬的对Dart的争论。
在您想尝试开始收敛到Dart目标的情况下 - 不是直接从Dart访问数据库而是在现有MVC框架中使用RESTful服务是有意义的。
这提供了比Dart中的SQL编码更清晰,更健壮的接口,并提供了良好的迁移路径。
答案 3 :(得分:1)
还有一个可用的Redis驱动程序:https://github.com/mythz/DartRedisClient
答案 4 :(得分:0)
在https://pub.dev/packages/dart_mssql处也有Windows MS-SQL Server驱动程序