× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



----- Original Message -----
From: "Joe Pluta" <joepluta@PlutaBrothers.com>
To: <midrange-l@midrange.com>
Sent: Saturday, November 17, 2001 8:56 AM
Subject: RE: ODBC (was RE: Green screen - it's time is over )


> > -----Original Message-----
> > From: Brad Jensen
> >
> > I have no idea why you would want to change the names of
columns,
> > I would think that would be very poor programming practice, if
you
> > mean the names of columns in tables. It will sure be a
surprise to
> > the other people trying to access the database if you do.
>
> In the real world, though, column names do change.  Files are
moved to other
> libraries.  Data is moved to another machine.

So you change the ODBC connecter. You are going to have to change
something somewhere.

If this is a frequent occurance, you have one odbc connection that
contains a table of the other connections.

As far as the column names changing, you are going to have the
same trouble with a server program that uses the column names, it
will have to be changed. I'm trying to think of any justification
for changing a column name in a production environment, and I
can't think of one. Even if you have a magic server that can guess
the new name, all the other applications that point to it, such as
local RPG programs or queries, are going to be broken.

> Fields are moved from one
> file to another.

It seems to me that this is going to cause a need for a change in
program logic in most access to the data any ways.

> As you say, changes to your database require every program
> that relies on the database layout to be changed.

Well, I still don't understand the idea that the program relies on
the database layout.

If you mean it relies on the fact that a certain column is in a
certain table, sure. If that clumn moves to another table, the
underlying structure and meaning of the data has changed also, and
I want the old program built on the changed assumption to know it
and say there is an error.

> That's the reason I
> recommend that only one program (the server) understands the
layout of the
> data.  That way, database changes have a minimal effect on the
rest of your
> application.
>
>
> > Create new tables, columns, indexes
> > Populate the rows with data
> > Delete and modify column structures
> > Run most any sort of sql
> > Create stored procedures
> > Execute stored procedures with parameters
>
> With the possible exception of executing a stored procedure, I
would never,
> ever want a client program to do any of these things.  There's
simply no
> reason for it.  The only things that should ever touch my data -
and
> especially my schema! - are programs on my server under my
control.  If I
> open this up to the client, any rogue program could
theoretically break in
> and attack my data.

I don't understnad. Why are you complaining that ODBC can't do
those things?

> Anyway, you and I have slightly different views of things.  Mine
comes from
> dealing with clients calling up in the middle of the night
because some
> operator deleted their data without backing it up.

I don;t understand this sort of argument. I did my first
programming with toggle switches. I used to walk to and from
school in the sleet in July uphill both ways. Actually I did do my
first programming with toggle switches, and had to wire together
shift registers to pass the class. Actually the school was uphill
both ways, I lived halfway up one side of a hill that it was at
the bottom of the other side of. You couldn't walk around the
bottom of the hill - because there were other hills in the way.

> I have seen companies
> literally go bankrupt because of loss of data. Those companies
are going to
> be a bit mroe sensitive to the idea of data access, and less
amenable to the
> concept of allowing a client program to delete columns of data.

hey, I was responding to your complaint that ODBC couldn't do
certain things. I didn't say I wanted it to do those things. I
don't understand why you would complain that odbc can't do
something, then when I point out it can, you ridicule the notion
of doing it.

> > And most importantly,
> >     understand what is going on when you read the code

> Readability is in the eye of the beholder.

Yes, that's exactly correct, and you want a program that can be
understood by a beginner, not an expert.

I understand you see a value in a server dealing with the
database, and I do too.

Programs should be easy to develop, easy for others to maintain,
and robust. The old jokes is, that like easy fast and cheap, you
can have two out of three.

Brad Jensen
ESC



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.