Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 26, 2013, at 12:43 PM, Tim Bunce wrote: > ODBC complicates that further. Indeed. I want to avoid the protocol. I've now written up my proposal as a blog post: http://theory.so/rfc/2013/11/26/toward-a-database-uri-standard/ Thanks, David

Re: RFI: Database URIs

2013-11-26 Thread Gisle Aas
On Tue, Nov 26, 2013 at 8:32 PM, David E. Wheeler wrote: > On Nov 26, 2013, at 11:26 AM, Gisle Aas wrote: > > > I do find the "db:" prefix ugly. If you want users to see these strings > I would think they find this prefix to be clutter too. > > Yeah. But I would thin, that if it *was* a standard

Re: RFI: Database URIs

2013-11-26 Thread Tim Bunce
On Tue, Nov 26, 2013 at 08:49:43PM +0100, Gisle Aas wrote: > >The scheme really should just be named after the protocol, not the kind of > product you happen to find at >the other end. >It would certainly be preferable if there was a single name for each > protocol. ODBC complicates

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 26, 2013, at 11:49 AM, Gisle Aas wrote: > There is also precedence for using "+" in scheme names. Something like > "db+postgresql:" then. It's still cluttered, and not really compatible with > what other have used. Or "x-postgres:" while it's still experimental. > Naming stuff is ha

Re: RFI: Database URIs

2013-11-26 Thread Gisle Aas
I do find the "db:" prefix ugly. If you want users to see these strings I would think they find this prefix to be clutter too. You seem to be alone in calling it "pg:". For the other examples out there I see "postgresql:" or "postgres:". Should all different ways be allowed and lead to the same

Re: RFI: Database URIs

2013-11-26 Thread Gisle Aas
To me the value of database urls would be compatibility with other implementations of this obvious idea. Some examples I found by quick googling: http://docs.sqlalchemy.org/en/rel_0_9/core/engines.html#database-urls http://docs.stackato.com/3.0/user/services/data-services.html#database-url htt

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 26, 2013, at 11:26 AM, Gisle Aas wrote: > I do find the "db:" prefix ugly. If you want users to see these strings I > would think they find this prefix to be clutter too. Yeah. But I would thin, that if it *was* a standard, there would be just one scheme defined. That’s a guess, though

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 26, 2013, at 10:53 AM, David E. Wheeler wrote: > Well, I can see I have a bug or two to work out. That should be: > >$ perl -MURI -Ilib -E 'say > URI->new("db:pg://me:sec...@example.com/foo.db")->dbi_dsn' >dbi:Pg:host=example.com;dbname=foo.db Oh silly me not escaping the "@". L

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 26, 2013, at 10:02 AM, David E. Wheeler wrote: >$ perl-MURI -E 'say > URI->new("db:pg://me:sec...@example.com/foo.db")->dbi_dsn' >dbi:Pg:dbname=me:secret.com/foo.db Well, I can see I have a bug or two to work out. That should be: $ perl -MURI -Ilib -E 'say URI->new("db:pg:/

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 26, 2013, at 9:32 AM, Gisle Aas wrote: > To me the value of database urls would be compatibility with other > implementations of this obvious idea. Some examples I found by quick > googling: > > http://docs.sqlalchemy.org/en/rel_0_9/core/engines.html#database-urls > http://docs.stack

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 26, 2013, at 12:42 AM, Tim Bunce wrote: > Why not define a direct translation from a URL to a DBI DSN? > A translation that doesn't require knowledge of any driver-specifics. Because I want to the onus of connecting to the database to be on the developer, not the end-user. I personally d

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 25, 2013, at 11:21 PM, H.Merijn Brand wrote: > As I always use 2. when writing scripts, mostly because I use quite a > few useful attributes in the 4th argument already, it is the most > logical place: easy to maintain, easy to read and easy to extend. Also very much specific to the DBI a

Re: RFI: Database URIs

2013-11-26 Thread David E. Wheeler
On Nov 25, 2013, at 11:02 PM, Jens Rehsack wrote: >> >> db:csv?f_dir=data&f_dir_search=foo&f_dir_search=bar&f_ext=.csv/r&f_lock=2&f_encoding=utf8&csv_eol=%0D%0A&csv_sep_char=,&csv_quote_char=%22&csv_escape_char=%22&csv+class=Text::CSV_XS&csv_null=1&RaiseError=1&PrintError=1&FetchHashKeyName=NA

Re: RFI: Database URIs

2013-11-26 Thread Tim Bunce
On Fri, Nov 22, 2013 at 05:13:53PM -0800, David E. Wheeler wrote: > DBI Folks & Gisle, > > I want to add support for specifying database connections as URIs to Sqitch, > my DB change management system. I started working on it today, following the > examples of JDBC and PostgreSQL. Before I relea

Re: RFI: Database URIs

2013-11-25 Thread H.Merijn Brand
On Tue, 26 Nov 2013 08:02:45 +0100, Jens Rehsack wrote: > > Am 25.11.2013 um 20:42 schrieb David E. Wheeler : > > > On Nov 25, 2013, at 11:08 AM, Jens Rehsack wrote: > > > >> Let’s go - shoot: > >> > >> # specify most possible flags via driver flags > >> $dbh = DBI->connect ("dbi:CSV:",

Re: RFI: Database URIs

2013-11-25 Thread Jens Rehsack
Am 25.11.2013 um 20:42 schrieb David E. Wheeler : > On Nov 25, 2013, at 11:08 AM, Jens Rehsack wrote: > >> Let’s go - shoot: >> >> # specify most possible flags via driver flags >> $dbh = DBI->connect ("dbi:CSV:", undef, undef, { >> f_schema => undef, >> f_dir

Re: RFI: Database URIs

2013-11-25 Thread David E. Wheeler
On Nov 25, 2013, at 11:08 AM, Jens Rehsack wrote: > Let’s go - shoot: > ># specify most possible flags via driver flags >$dbh = DBI->connect ("dbi:CSV:", undef, undef, { >f_schema => undef, >f_dir=> "data", >f_dir_search => [], >f_e

Re: RFI: Database URIs

2013-11-25 Thread Jens Rehsack
Am 25.11.2013 um 18:00 schrieb David E. Wheeler : > On Nov 25, 2013, at 3:50 AM, Jens Rehsack wrote: > >> DBI->connect($dsn, $user, $passwd, \%attr) >> >> 4th argument is wasted in your current proposal. > > Er, well, I failed to provide a complete set of examples. Here’s one from the > Po

Re: RFI: Database URIs

2013-11-25 Thread David E. Wheeler
On Nov 25, 2013, at 3:50 AM, Jens Rehsack wrote: >DBI->connect($dsn, $user, $passwd, \%attr) > > 4th argument is wasted in your current proposal. Er, well, I failed to provide a complete set of examples. Here’s one from the PostgreSQL docs: postgresql://other@localhost/otherdb?connect_t

Re: RFI: Database URIs

2013-11-25 Thread Jens Rehsack
Am 23.11.2013 um 02:13 schrieb David E. Wheeler : > DBI Folks & Gisle, > > I want to add support for specifying database connections as URIs to Sqitch, > my DB change management system. I started working on it today, following the > examples of JDBC and PostgreSQL. Before I release, though, I’d

Re: RFI: Database URIs

2013-11-23 Thread David E. Wheeler
On Nov 22, 2013, at 8:48 PM, Darren Duncan wrote: >> postgresql://user@localhost:5433/dbname >> sqlite:///path/to/foo.db > > By "database name" do you mean "DBMS name"? Because I'd say the "database > name" is what's on the right-hand side of the //, not what's on the left. Yes, corre

Re: RFI: Database URIs

2013-11-22 Thread Darren Duncan
Sorry, I think I hit send without adding a reply message; here it is. On 2013.11.22 5:13 PM, David E. Wheeler wrote: First, I'm using the database name as the scheme in the URL. Some examples: postgresql://user@localhost:5433/dbname sqlite:///path/to/foo.db By "database name" do you

Re: RFI: Database URIs

2013-11-22 Thread Darren Duncan
On 2013.11.22 5:13 PM, David E. Wheeler wrote: DBI Folks & Gisle, I want to add support for specifying database connections as URIs to Sqitch, my DB change management system. I started working on it today, following the examples of JDBC and PostgreSQL. Before I release, though, I’d like a bit

RFI: Database URIs

2013-11-22 Thread David E. Wheeler
DBI Folks & Gisle, I want to add support for specifying database connections as URIs to Sqitch, my DB change management system. I started working on it today, following the examples of JDBC and PostgreSQL. Before I release, though, I’d like a bit of feedback on a couple of things. First, I'm u