A partial archive of discourse.wicg.io as of Saturday February 24, 2024.

[Proposal] A standard to connect with and query databases over the internet

Commentator
2020-10-27

The ODBC/JDBC standards used to make it relatively easy for diverse tools to connect with and query databases. But it seems they are either not HTTP-friendly, and/or are not well supported by vendors and tools anymore.

Some have proposed a standard “query” protocol be developed that serves a similar purpose as ODBC/JDBC, at least as far as inter-tool queries. A typical URL may look like “query://myRDBMSservice.org/query1?param_x=7” or perhaps “https ://query.myRDBMSservice.org/query1…”. Note it wouldn’t be limited to SQL. [Spacing added to prevent automated url formatting.]

This would be roughly comparable to the existing “ftp://…” protocol. (“FTPS” is slated to replace it.)

Here’s a discussion on the C2 wiki with rough draft examples.

Typical Input(s):

  • Resource Path
  • Database Name
  • Schema Name (if not using default)
  • User Name (may be a service account)
  • Query Text (such as SQL or Stored Procedure name)
  • Stored Procedure Parameters

Typical Output(s):

  • Result Rows (our lovely data!)
  • Result Row Count
  • Affected Rows Count
  • New ID Number
  • Status or Error Info
  • Vender/Brand/Version Meta Data

These are all just rough ideas; food for thought. Once everyone agrees on the need and basic features, details such as syntax can be fleshed out. Thanks!

Malvoz
2020-10-27

This is not my area of expertise, though it looks like the HTTP SEARCH Method may satisfy some of the use cases.

I also found that there is already an IETF ODBC URI Scheme draft.

/cc @mnot