AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 1082
Accepted
the Tin Man
the Tin Man
Asked: 2011-02-05 23:30:58 +0800 CST2011-02-05 23:30:58 +0800 CST 2011-02-05 23:30:58 +0800 CST

SQL Server 上 REST 的简单路径?

  • 772

在工作中,我们的一个主要数据库在 MS SQL Server 上运行。我想是2008年。

我目前正在通过 Linux 主机上的 UnixODBC 和 FreeTDS 访问它。不幸的是,我们的管理员不支持 UnixODBC/FreeTDS,所以它落在了我身上。对于长期策略,我想使用 SOAP 或 REST 调用来摆脱 ODBC 并切换到 HTTP。使用 HTTP 进行安装要容易得多,并且大多数语言都可以理解它,至少是我开发的 Perl、Python 和 Ruby。

我们已经在数据库上为一些 Java 进程设置了相当数量的 SOAP 调用,所以我们可以很容易地切换到那个。我们也在讨论 REST,我喜欢它,因为它更轻量。我们的 DBA 没有设置任何 REST 接口,所以我想知道是否有用于 SQL Server 的插件或工具,可以对表进行简单的 REST 映射,让我们快速入门。我考虑过在 Ruby 的 Sinatra 中写一些东西,但那将是我的另一件事。

我搜索了“SQL Server + rest”,但很明显谷歌会用“REST”这个词做错事,因此没有找到任何值得的东西。因此,如果您有提供 REST 的经验并认为它是一个很好的工具,那么请加入。

sql-server freetds
  • 3 3 个回答
  • 14556 Views

3 个回答

  • Voted
  1. Best Answer
    goric
    2011-02-06T06:46:23+08:002011-02-06T06:46:23+08:00

    如果您使用的是 SQL Server 2008 R2,我建议您查看开放数据协议(也称为 OData)。Microsoft 也有一些常见问题解答,并且有可用的 Java 客户端库。

    另请查看sqlREST,它使用 Web 服务公开关系数据库,并与大多数具有 JDBC 驱动程序的数据库一起使用。

    • 5
  2. Andrew Bickerton
    2011-02-09T03:11:36+08:002011-02-09T03:11:36+08:00

    背景
    来自维基百科RESTful API

    REST 最初是在 HTTP 的上下文中描述的,但不限于该协议。如果 RESTful 架构已经基于有意义的表示状态的传输为应用程序提供了丰富且统一的词汇表,则它们可以基于其他应用层协议。RESTful 应用程序最大限度地利用预先存在的、定义明确的接口和所选网络协议提供的其他内置功能,并最大限度地减少在其之上添加新的应用程序特定功能。

    来自 MSDN 文章Anti-Patterns To Avoid In N-Tier Applications

    REST 或 Representational State Transfer 是一种正在迅速普及的 Web 服务。因此,您可能会问自己 RESTful 服务和自定义 Web 服务之间的区别是什么,以及为什么您可能会选择一种类型而不是另一种类型。这两种类型的主要区别在于 REST 服务以资源为中心,而自定义服务以运营为中心。使用 REST,您可以将数据划分为资源,为每个资源提供一个 URL,并对那些允许创建、检索、更新和删除 (CRUD) 的资源实施标准操作。使用自定义服务,您可以实现任意方法,这意味着重点是操作而不是资源,并且可以根据应用程序的特定需求定制这些操作。
    ...
    如果您可以使您的服务适应 REST 的约束,那么这样做将为您带来很多优势。ADO.NET 数据服务与实体框架相结合,可以轻松创建 RESTful 服务和客户端以使用它们。该框架可以自动为 RESTful 服务提供更多功能,因为服务被限制为遵循特定模式。

    执行

    • WCF 数据服务“ADO.NET 数据服务通过通过 HTTP 访问的 Web 服务公开表示为实体数据模型 (EDM) 对象的数据。可以使用类似 REST 的 URI 来寻址数据”

      • 使用 Microsoft ADO.NET 数据服务

      本文档描述了如何创建和使用 Microsoft® ADO.NET 数据服务,并讨论了有关 URI 和有效负载格式的各种详细信息。本文档旨在介绍 ADO.NET 数据服务,因此涵盖了该技术的核心方面,将对更高级主题的讨论推迟到配套文档。

      Microsoft® ADO.NET 数据服务的目标是使应用程序能够将数据公开为数据服务,可供企业网络内和互联网上的 Web 客户端使用。可以通过常规 HTTP 请求访问数据服务,使用标准 HTTP 动词(例如 GET、POST、PUT 和 DELETE)对服务执行 CRUD 操作。服务使用的负载格式由应用程序控制,但所有选项都是简单、开放的格式,例如 JSON 和 Atom/APP。

      Web 友好技术的使用使 ADO.NET 数据服务成为 AJAX 样式应用程序、富交互应用程序和其他需要对存储在 Web 上的数据进行操作的应用程序的数据后端的理想选择。

    • 或者对于完全定制的版本,请查看:Canonical REST Entity Service “演示使用 WCF 4 构建的 REST 服务,该服务完全符合使用 GET、PUT、POST、DELETE 的 HTTP 规范,并包括用于测试合规性的单元测试”

    • 2
  3. billappleton
    2015-11-12T12:10:38+08:002015-11-12T12:10:38+08:00

    我为 DreamFactory Software 工作,我们有一些可能会有所帮助的东西。DreamFactory 是一个免费的开源 REST API 后端,可连接到任何 SQL 数据库,包括 SQL Server。连接数据库,您将获得 45 个服务,包括存储过程、SQL 视图等。查询过滤器 API 非常广泛,具有排序、提交和回滚、分页、过滤器和相关对象。DreamFactory 2.0 还具有 SOAP 转换功能。

    • 0

相关问题

  • SQL Server - 使用聚集索引时如何存储数据页

  • 我需要为每种类型的查询使用单独的索引,还是一个多列索引可以工作?

  • 什么时候应该使用唯一约束而不是唯一索引?

  • 死锁的主要原因是什么,可以预防吗?

  • 如何确定是否需要或需要索引

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    您如何显示在 Oracle 数据库上执行的 SQL?

    • 2 个回答
  • Marko Smith

    如何选择每组的第一行?

    • 6 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    我可以查看在 SQL Server 数据库上运行的历史查询吗?

    • 6 个回答
  • Marko Smith

    如何在 PostgreSQL 中使用 currval() 来获取最后插入的 id?

    • 10 个回答
  • Marko Smith

    如何在 Mac OS X 上运行 psql?

    • 11 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Marko Smith

    将数组参数传递给存储过程

    • 12 个回答
  • Martin Hope
    Manuel Leduc PostgreSQL 多列唯一约束和 NULL 值 2011-12-28 01:10:21 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Stuart Blackler 什么时候应该将主键声明为非聚集的? 2011-11-11 13:31:59 +0800 CST
  • Martin Hope
    pedrosanta 使用 psql 列出数据库权限 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST
  • Martin Hope
    BrunoLM Guid vs INT - 哪个更好作为主键? 2011-01-05 23:46:34 +0800 CST
  • Martin Hope
    bernd_k 什么时候应该使用唯一约束而不是唯一索引? 2011-01-05 02:32:27 +0800 CST
  • Martin Hope
    Patrick 如何优化大型数据库的 mysqldump? 2011-01-04 13:13:48 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve