>From: [EMAIL PROTECTED] >[mailto:[EMAIL PROTECTED] On Behalf Of Ian Bicking > After that it's >potentially entirely up to the database driver, though of course some >uniformity is nice. Typical DSNs, from what I can tell, are parsed in >an up-front manner into a set of keys and values; though maybe they >sometimes include a prefix indicating database type...?
DSNs (Data Source Names) are registry keys. The entry for that key contains among other things the id of the ODBC driver. The string for a connect contains the DSN (which is evaluated by the driver manager) and additional connect properties (which are passed to the driver). This at least was the general idea, which has probably been bended since. > Java has >database URIs too, don't they? But they are all like >jdbc:..., correct? Right > Of course, following that pattern you could get >dbapi:jdbc:postgresql://... which feels awfully weird to me. a) I'd prefer pydbapi: as a prefix. That way, someone looking at a configuration file could at least get the notion that any problems might be related to some Python lib. b) Using a module path instead of a DBMS product name is generally preferable (and seemed to be the consent so far). With the JDBC scheme, all relevant drivers have to be loaded into memory first, the diver manager then asks each if the driver would accept a specific URI. c) Should username and password be used similar to other protocols? pydbapi:<modulepath>://[<username>:<password>@]<host>[: <port>/ Daniel Dittmar -- Daniel Dittmar SAP Labs Berlin [EMAIL PROTECTED] _______________________________________________ DB-SIG maillist - [email protected] http://mail.python.org/mailman/listinfo/db-sig
