Hi.

Your example looks incomplete. What do you do with the records
afterwards, which also allows "site" to be removed in a way that you
suggest it does not need a code (logic) change?

The general answer is that most interfaces have a way to access the
columns by name. I do not know dbi good enough to know how it's done
there, but I know I saw it at least once.

My personal experience is, that this is needed very seldom, except in
very general functions (i.e. in dbi itself :-), because usually, if
change/delete a field you have to change the logic, and it's a
no-brainer to change the query, too.

Btw, "SELECT *" is considered harmful, except if you really write a
generic function.

Greetings,

        Benjamin.


PS: I use an equivalent of row[i][column++] to avoid having explicit
    column numbers. Makes it quicker and less error prone to change,
    if something like "site" if discarded.

On Wed 2002-07-10 at 10:49:07 -0700, [EMAIL PROTECTED] wrote:
> 
> Group,
> 
> Given the following code:
> 
> 
> $sql = qq! select * from table where suffix1 > ''!;
>       $db_action = $DB->prepare($sql);
>       $db_action->execute or die "could not do $sql - $DBI::errstr";
>       $rows = $db_action->rows;
>       $rec = $db_action->fetchall_arrayref;
>       $db_action->finish;
> 
>       for ($i=0;$i<$rows;$i++) {
>               $id = $rec->[$i][0];
>               $first_name = $rec->[$i][1];
>               $last_name = $rec->[$i][2];
>               $identifier = $rec->[$i][3];
>               $prefix1 = $rec->[$i][4];
>               $suffix1 = $rec->[$i][5];
>               $prefix2 = $rec->[$i][6];
>               $suffix2 = $rec->[$i][7];
>               $site = $rec->[$i][8];
>               $location = $rec->[$i][9];
>               $phone_loc_id = $rec->[$i][10];
> 
> I would like to find alternate ways to do this that would take into account
> changes to the table. For example let's say that the table changes (for
> example lets say that site field in the above example is removed).  What I
> am interested in, is how are others in the group are handling this type of
> thing. I have heard something about tying column names - not sure what this
> is.  Any and all suggestions will be most appreciated.

-- 
[EMAIL PROTECTED]

---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to