[sqlalchemy] Re: Database Views

2010-11-08 Thread Adrian
Thanks for the quick reply, this is exactly what I was looking for!

Thanks again,
Adrian

On Nov 8, 2:29 pm, Michael Bayer mike...@zzzcomputing.com wrote:
 On Nov 8, 2010, at 1:16 PM, Adrian wrote:





  Hi all,

  This is a topic that has been discussed before, but I haven't been
  able to successfully implement any of the proposed solutions in my own
  code. I've created a few Views in my postgres database, and I'm
  looking for a way to simply query them from sqlalchemy. I tried just
  treating them as tables, but this failed when the mapper wasn't able
  to find a primary key (makes sense).

  The code I tried was just a naive attempt:

  class SpectrumView(object):
     pass

  spectrum_view = Table('spectrum_view', metadata, autoload=True)
  mapper(SpectrumView, spectrum_view)

  So I read in some message that it might be possible to specify a
  primary key to the mapper, like
  mapper(SpectrumView, spectrum_view, primary_key=[..]), but the problem
  is I'm not defining my tables in python - they are already created, so
  I don't have any column objects to pass to primary_key.

 The column objects are always available from table.c regardless of whether 
 autoload was used or not:

 mapper(SpectrumView, spectrum_view, primary_key=[spectrum_view.c.somecolumn, 
 spectrum_view.c.someothercolumn])





  Anyway, I'm just curious to see if anyone has had success with an
  implementation of database views in sqlalchemy, and possibly examples
  of those cases.

  Thanks,
  Adrian

  --
  You received this message because you are subscribed to the Google Groups 
  sqlalchemy group.
  To post to this group, send email to sqlalch...@googlegroups.com.
  To unsubscribe from this group, send email to 
  sqlalchemy+unsubscr...@googlegroups.com.
  For more options, visit this group 
  athttp://groups.google.com/group/sqlalchemy?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
sqlalchemy group.
To post to this group, send email to sqlalch...@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



[sqlalchemy] Re: Database views

2007-10-05 Thread Werner F. Bruhin

Kevin,

Kevin Cole wrote:
 Hi,

 I had the same question here last week (although I was using
 PostgreSQL instead of Firebird).
   
Sorry for the noise then, I should have checked the on-line archive, 
only subscribed a while here, so my local archive didn't show anything.
 Does Firebird offer a sequence/serial/auto-number data type?  If so,
 you could just add that to your views.
Yes it has, in older version it was called a generator, but as of 2.0 (I 
think) and can use gen_id or NEXT VALUE FOR sequence.
   In other words, just have the
 views artificially generate a unique number to satisfy SQLAlchemy,
 Elixir, TurboGears, etc.  Then make sure you never really use that key
 for anything.  (Others vetoed the idea because they were concerned
 that at some future date I might want to update something... But, if
 like me, you're fairly confident of the read-only nature, I think it
 would be fine.)
   
I'll consider this for the views where I don't have a unique key and/or 
can't define a composite key with what I already have in there.

Thanks
Werner

 On 10/5/07, Werner F. Bruhin [EMAIL PROTECTED] wrote:
   
 In my existing Firebird database I have some views defined.  In the
 model I thought I could just go ahead and define them basically like
 tables but I get an exception:

 In my case the views are always used in read-only mode, changes are made
 to the actual table.

 |Is there someway I can define these views.  I was able to work around
 the above exception by defining a primary key column or columns
 (compound key) but I have one or two views which don't really have a
 primary key.

 Appreciate any hints/tips.
 

   


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
sqlalchemy group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~--~~~~--~~--~--~---