On Thu, Jan 21, 2010 at 9:29 AM, Neil.Lv <anim...@gmail.com> wrote:

>
>  The users table in the OneDB, and the hots table in the TwoDB, they
> are separated!
>
>  I have changed the method that like this:
> ###
>  # I specify the TwoDB for hots table.
>  override def dbDefaultConnectionIdentifier = bootstrap.liftweb.TwoDB
>
>
>  def getHots3(id : Long) = {
>    DB.use(bootstrap.liftweb.OneDB) {
>      firstConn =>
>          DB.use(bootstrap.liftweb.TwoDB) {
>            conn =>
>                 DB.prepareStatement("SELECT * FROM hots WHERE id>?", conn)
> {
>                         stmt =>
>                         stmt.setLong(1, id)
>                          stmt.executeUpdate()
>                }
>        }
>    }
>  }
> ###
>
>  But it doesn't work.
>

What do "it doesn't work" mean?  Does it not compile, if not, what's the
compilation error?   If it's another error, what's the error?  In your
example, you are not using the firstConn connection.  Also, you will get an
exception if you do an executeUpdate with a SELECT statement (this is JDBC,
not Lift).  You must do an "executeQuery" for a SELECT.


>
>  Thanks very much!  :)
>
> Cheers,
>  Neil
>
>
> On Jan 22, 12:49 am, David Pollak <feeder.of.the.be...@gmail.com>
> wrote:
> > What is wrong with:
> >
> > DB.use(FirstDB) {
> >   firstConnection =>
> >   DB.use(SecondDB) {
> >   secondConnection =>
> >
> >   // do transactional query between two DBs here
> >
> > }
> > }
> >
> > Note that DB.use nests such that the transaction will only be committed
> when
> > the last DB.use block for a given ConnectionIdentifier is exited.
> >
> >
> >
> > On Thu, Jan 21, 2010 at 3:17 AM, Neil.Lv <anim...@gmail.com> wrote:
> >
> > >  I have added the demo code on the Github now.
> > >  ( Mabye it's a bug with DB.runQuery and DB.use in the two db
> > > vender )
> >
> > >  Here is the address:
> > >  http://github.com/anim510/two_db_demo
> >
> > >   Thanks very much!
> >
> > > Cheers,
> > >  Neil
> >
> > > On Jan 21, 11:26 am, "Neil.Lv" <anim...@gmail.com> wrote:
> > > >   My email is :   anim...@gmail.com
> >
> > > > On Jan 21, 11:17 am, "Neil.Lv" <anim...@gmail.com> wrote:
> >
> > > > > Mabye it's a bug with DB.runQuery and DB.use in the two db vender
> !!!!
> >
> > > > > Two question: (problem)
> >
> > > > > 1: I don't know why the HelloWorld snippet code will be execute 2
> > > > > times in this code. (See the HelloWorld.scala file.)
> > > > > 2: The dbDefaultConnectionIdentifier method in the Model that it
> works
> > > > > fine when using Mapper's method such as ModelName.findAll(),
> > > > > it doesn't work when using DB.runQuery and DB.use(...) --- (Maybe
> it
> > > > > can't find the default db identifier)
> >
> > > > > The question 2 I test it many times that found this problem.
> >
> > > > > In the test app , the Hot.getHots2 and Hot.getHots3 method can't
> work.
> >
> > > > > I comment the code now in the HelloWorld.scala file, you can try
> it.
> >
> > > > > ########
> >
> > > > >   I can push the code on the github, and get this errors "fatal:
> > > > > unable to fork"
> >
> > > > >   So If anyone know what's wrong with it and I can send the
> demo.tar
> > > > > file through the email.
> >
> > > > >   Thanks very much!
> >
> > > > > ########
> >
> > > > > Cheers,
> > > > >   Neil
> >
> > > > > On Jan 21, 1:56 am, "Neil.Lv" <anim...@gmail.com> wrote:
> >
> > > > > >   The DB.runQuery can works now, but the DB.prepareStatement also
> > > > > > cant' work.
> >
> > > > > >   Here is the test app address:
> > > > > >  http://github.com/anim510/two_db_demo
> >
> > > > > > Cheers,
> > > > > >   Neil
> >
> > > > > > On Jan 21, 1:16 am, "Neil.Lv" <anim...@gmail.com> wrote:
> >
> > > > > > >    Thank you very much,
> >
> > > > > > >    But it doesn't work yet, maybe because of using two db
> > > connections.
> >
> > > > > > >    I'll test it later again.
> >
> > > > > > > On Jan 21, 12:44 am, Jeppe Nejsum Madsen <je...@ingolfs.dk>
> wrote:
> >
> > > > > > > > "Neil.Lv" <anim...@gmail.com> writes:
> > > > > > > > > Hi all,
> >
> > > > > > > > >   I use two db connections in my app, and I want to use
> > > > > > > > > DB.prepareStatement to select
> > > > > > > > > the records from the second db.
> >
> > > > > > > > >   It failed, Here is the code:
> > > > > > > > > ###
> > > > > > > > >   def getHotByTid(id : Long) =
> > > > > > > > >     DB.use(bootstrap.liftweb.TwoDB) {
> > > > > > > > >       conn =>
> > > > > > > > >      DB.prepareStatement("SELECT * FROM hots WHERE id=? ",
> > > conn) {
> > > > > > > > >              stmt =>
> > > > > > > > >                      stmt.setLong(1, id)
> > > > > > > > > Log.info("stmt :" + stmt)   // The information is correctly
> > > now, but
> > > > > > > > > after call executeUpdate method
> > > > > > > > >                      stmt.executeUpdate()
> > > > > > > > >       }
> > > > > > > > >    }
> >
> > > > > > > > Not sure what your problem is really, but I think you should
> use
> > > > > > > > DB.runQuery to execute a select statement
> >
> > > > > > > > Ie
> >
> > > > > > > >   val (_,result) = DB.runQuery("SELECT COUNT(*),
> contract_length
> > >  FROM "+
> > > > > > > >                     "vehicles_current v "+
> > > > > > > >                     "WHERE v.account_id=? "+
> > > > > > > >                     "GROUP BY contract_length "+
> > > > > > > >                     "ORDER BY contract_length",
> > > > > > > >                     List(42))
> >
> > > > > > > > /Jeppe
> >
> > > --
> > > You received this message because you are subscribed to the Google
> Groups
> > > "Lift" group.
> > > To post to this group, send email to lift...@googlegroups.com.
> > > To unsubscribe from this group, send email to
> > > liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com>
> <liftweb%2bunsubscr...@googlegroups.com<liftweb%252bunsubscr...@googlegroups.com>
> >
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/liftweb?hl=en.
> >
> > --
> > Lift, the simply functional web frameworkhttp://liftweb.net
> > Beginning Scalahttp://www.apress.com/book/view/1430219890
> > Follow me:http://twitter.com/dpp
> > Surf the harmonics
>
> --
> You received this message because you are subscribed to the Google Groups
> "Lift" group.
> To post to this group, send email to lift...@googlegroups.com.
> To unsubscribe from this group, send email to
> liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/liftweb?hl=en.
>
>
>
>


-- 
Lift, the simply functional web framework http://liftweb.net
Beginning Scala http://www.apress.com/book/view/1430219890
Follow me: http://twitter.com/dpp
Surf the harmonics
--
You received this message because you are subscribed to the Google Groups "Lift" group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.

Reply via email to