[Zope] multiple inserts and MySQLDA

Jorge Magalhaes jmagalhaes@eng.uminho.pt
Fri, 07 Apr 2000 22:20:25 +0100 (WET)


On Fri, 7 Apr 2000 Daniel.Weber@SEMATECH.Org wrote:

> A couple of methods pop into my head:
> 
> 1)  At the point the data is available, use a <dtml-in> to call an insert
> procedure once for every exam score.

This is my first problem: make the tuple list!!!

my table in the db have two fields (student_name and student_id)

my first query are

select student_id as ID from students;

in DTML method i tried:

<form action="send">
<table>
<dtml-in "firstquery()">
<tr>
<td><dtml-var ID></td>
<td><input type="TEXT" name="scor"></td>
</tr>
<td><input type="submit" value="Score it"></td>
</table>
</form>


my second query is:

insert into scores (student_id, score) values (<dtml.sqlvar IDE type=int>,
<dtml-sqlvar SCORE type=int)

my send method

<dtml-in "firstquery()">
<dtml-call "secondquery(IDE = ID, SCORE= scor)">
</dtml-in>

don't work !!!!!!!!!!!!!!!!!

bad news

Thanks for your attention



> 2)  Pass the list of (exam_score, student) in as a list of tuples to an sql
> query and use a <dtml-in> combined with a <dtml-var sql_delimiter> between each
> insert, such as:
> 
> <dtml-in exam_scores>
>   INSERT INTO EXAM_DB VALUES (<dtml-sqlvar score type=?>, <dtml-sqlvar student
> type=nb>)
>   <dtml-unless sequence-end><dtml-var sql_delimiter></dtml-unless>
> </dtml-in>
> 
> passing the data in in a usable format could be a challenge if you have two
> lists instead of a list of tuples.  i don't know what the maximum size of an
> insert is - you may be better of with (1) if the insert size is large.
> 
> HTH...
> 
> > -----Original Message-----
> > From: Jorge Magalhaes [mailto:root@predict.telepac.pt]
> > Sent: Thursday, April 06, 2000 5:49 PM
> > To: zope@zope.org
> > Subject: [Zope] multiple inserts and MySQLDA
> > 
> > 
> > 
> > Hi Zopiis:
> > 
> > How i can build a DTML method for making multiple inserts in MySQL db.
> > For example, inserting a exames scores for a class with 20 students.
> > 
> > My problem isn't make the sql query, but call the query for each pair
> > (student_id, score). 
> > 
> > I would like fetched the student_id and the student name from
> > the db. How i can do it?
> > 
> > I find in this newsgroup some posts about the Product 
> > MySQLDA1.4. I have
> > some queries for select integers and y d'ont have the related 
> > problems.
> > For that i have changed the type INT(2), for example, to INT
> > 
> > If a is defined a INT(2)
> > 
> > for the query SELECT a FROM T1, the result is (23L)
> > 
> > i make
> > 
> > > ALTER TABLE t1 CHANGE a a INT;
> > 
> > after this modifications for the query 
> > 
> > SELECT a FROM T1, the result is (23)
> > 
> > It's Ok
> > 
> > Have a nice day.
> > -- 
> > +-------------------------------------------------------------
> > ---------+
> > | Jorge Magalhães                 Email:     
> > jmagalhaes@eng.uminho.pt  |
> > | Quinta do Calvário, bloco 14    Telemóvel: 966172200        
> >          |
> > | 2º Direito Trás                 Fax:       + 351 253 516007 
> >          |
> > | 5400 Chaves                     Phone:     + 351 276 333008 
> >          |
> > | Portugal                        Email:     
> > magalhaes.jorge@netc.pt   |
> > +-------------------------------------------------------------
> > ---------+
> > 
> > 
> > _______________________________________________
> > Zope maillist  -  Zope@zope.org
> > http://lists.zope.org/mailman/listinfo/zope
> > **   No cross posts or HTML encoding!  **
> > (Related lists - 
> >  http://lists.zope.org/mailman/listinfo/zope-announce
> >  http://lists.zope.org/mailman/listinfo/zope-dev )
> > 
> > 
>