Skip to Content.
Sympa Menu

freetds - Re: [freetds] Using DBLIB With Azure

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "James K. Lowden" <jklowden AT freetds.org>
  • To: freetds AT lists.ibiblio.org
  • Subject: Re: [freetds] Using DBLIB With Azure
  • Date: Tue, 22 Mar 2011 23:41:37 -0400

On Tue, 22 Mar 2011 07:15:56 -0400
Ken Collins <metaskills AT me.com> wrote:

> >> Azure does not have a notion of "USE ..." or has a way to specify a
> >> default database with the user account
> >
> > https://github.com/rails-sqlserver/tiny_tds
> >
> > OK, I think I finally get the picture.
> > If I understand aright, the TinyTds user -- an elf or gnome, perhaps? --
> > should be able to say something like this:
> >
> > client = TinyTds::Client.new(:username => 'sa', :password => 'secret',
> > :dataserver => 'mytds_box', :database = 'mydb')
...
> > You're not obliged to use only one db-lib function when the connection is
> > established. Just call dblogin(), dbopen(), and dbuse(), in that order.
> > Job done.
>
> Job not done. I have used dblogin(), dbopen() and dbuse() in that order
> since TinyTDS started.
...
> That process is exactly the problem. Like I said, Azure does not have a
> notion of "USE..." and that is what dbuse() does.

Exactly what problem, exactly?

Why does it matter whether or not Azure has "a notion of" USE? How does
making one extra call to the library after opening the connection make any
difference at all?

Can the client specify the database to use as part of the connection command,
as I indicated above, or not? If so, why can't you call dbuse() after
calling dbopen() and before returning to the caller?

Somehow, sooner or later, the client has to indicate which database he wants
to use. That's when you call dbuse(). You don't have to modify the
underlying library or alter the login packet just to write wrapper code.

--jkl




Archive powered by MHonArc 2.6.24.

Top of Page