On Tue, 20 Apr 2004 17:57:08 +0100, Michael McTernan wrote:
> Donny,
>
>
> I think you misunderstand the point of my comment, and possibly
> Stormblade's too.
>
> The point is that there are some things that are misleading, and it
> would be kinder for MySQL to report errors than silently performing
> something unexpected and continuing without warning - at least if
> you run "rm -rf /*" you'll notice pretty quickly that everything
> has disappeared and learn not to do it again :D

That's for sure. Not only that but you CAN do something to prevent it. You could
for example, replace the rm command with another version which doesn't allow you
to do that without many checks and prompts :)

But doing an rm -fr /* is very different from what we were talking about.

>
>> If you use a client like PHPMyadmin or one of the other 80
>> million that are
>> around you won't have to worry about error checking because they
>> have already done it for you.
>>
>
> Using MySQL + JDBC to make a very custom app, sorry.

Same here for now. This is where I feel MySQL shines and why I've chosen to use
it (Besides the cost of course). Not only that but say you have a app with a ton
of SQL. How can you verify all the SQL statements include ALL the fields.
Checking each field is the job of the client yes but if an SQL statement leaves
out a field that is required by the database...that's just it. None of them are
required. MySQL will happily fill in your blanks for you so you won't know there
were blanks until you view it.

>
>> if you don't have error checking in yourself, that's your problem
>> not mysql's problem.
>>
>
> True, but still doesn't help when someone inexperienced with MySQL
> makes a mistake and buggers the database... again.  I don't see why
> you object to making things easier to use, even if it is only
> activated by a -n00b option in mysql_safe.

As I mentioned in my other reply there are some checks that belong on the client
and some that really belong on the server. So yes some error checking SHOULD be
the server's problem. But not all of it. Just saying if you don't have error
checking in yourself doesn't help. What type of error checking? There's not just
one global error checking type.

>
> Thanks,
>
>
> Mike
>
>
>> -----Original Message-----
>> From: Donny Simonton [mailto:[EMAIL PROTECTED]
>> Sent: 20 April 2004 17:37
>> To: 'Michael McTernan'; 'Stormblade'
>> Cc: [EMAIL PROTECTED]
>> Subject: RE: Gripe with MySQL
>>
>>
>> Everybody should remember as well, if you run rm -rf /*.* on your
>> server you
>> will delete everything from your server, but linux will stay
>> running.  Even though that's not documented either.
>>
>> If you use a client like PHPMyadmin or one of the other 80
>> million that are
>> around you won't have to worry about error checking because they
>> have already done it for you.  Now as far as your
>> clients/customers, if you don't
>> have error checking in yourself, that's your problem not mysql's
>> problem.
>>
>>
>> Donny
>>
>>
>>> -----Original Message-----
>>> From: Michael McTernan [mailto:[EMAIL PROTECTED]
>>> Sent: Tuesday, April 20, 2004 9:04 AM To: Stormblade Cc:
>>> [EMAIL PROTECTED] Subject: RE: Gripe with MySQL
>>>
>>> Hi,
>>>
>>>
>>> ENUM columns can also trip you up if you insert a value outside
>>> of the ENUM;
>>> an empty string is inserted instead.  This is documented
>>> behaviour (mysql.com seems to be going slowly though, so can't
>>> dig a
>>>
>> reference right
>>> now), even if it is undesired in some cases.
>>>
>>>
>>> Thanks,
>>>
>>>
>>> Mike
>>>
>>>
>>>> -----Original Message-----
>>>> From: news [mailto:[EMAIL PROTECTED] Behalf Of Stormblade
>>>> Sent: 20 April 2004 01:42 To: [EMAIL PROTECTED] Subject:
>>>> Gripe with MySQL
>>>>
>>>>
>>>> Ok. Love MySQL and I will be using it for my personal use and
>>>>
>>> recommending
>>>> it to clients as a lower cost alternative. I've only been
>>>>
>> using it for a
>>>> very short time but there one major gripe I have with it and
>>>> I believe it's just a design thing.
>>>>
>>>> MySQL seems to put the burden of error checking and such on
>>>>
>> the client.
>>
>>>>
>>>> - All fields have a default value even when I don't tell it
>>>> to? - Allow Null will only result in an error if I explicitly
>>>> try
>>>>
>> to set the
>>>> field to null.
>>>>
>>>>
>>>> These are the two things that I really dislike. I think it's
>>>> a poor
>>>>
>>> design
>>>> to rely on clients only for error checking. MySQL supports
>>>>
>> foreign keys.
>>>> This is good because the database handles referential
>>>>
>> integrity. But it
>>>> shouldn't stop there. I should also be able to tell the
>>>>
>> database not to
>>>> allow a field to be empty/null and it should not put anything
>>>> in there that I have not told it to.
>>>>
>>>> One scenario I can think of is this. My company uses MySQL as
>>>> it's database. Different departments implement various
>>>> interfaces to this database. All it would take is ONE client
>>>> to have ONE bad SQL and
>>>>
>>> although
>>>> the insert works (Thanks to default values being put in) the
>>>>
>> data is not
>>>> valid.
>>>>
>>>>
>>>> I've only been working with MySQL for a little bit so this is
>>>> just my first
>>>> impressions. I'll be very happy to be told I'm wrong or that
>>>> future updates
>>>> (5.0 perhaps) will change some of the things I've mentioned.
>>>>
>>>>
>>>> Relying on clients for database integrity is a bad idea in my
>>>>
>>> experience.
>>>> --
>>>>
>>>>
>> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>> =-=-=-
>>
>>>> Stormblade (Shaolin Code Warrior)
>>>> Software Developer (15+ Years Programming exp.)
>>>>
>>>>
>>>> My System:
>>>> http://www.anandtech.com/mysystemrig.html?rigid=1683
>>>>
>>>>
>> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>> =-=-=-
>>>>
>>>>
>>>> --
>>>> MySQL General Mailing List
>>>> For list archives: http://lists.mysql.com/mysql
>>>> To unsubscribe:
>>>> http://lists.mysql.com/[EMAIL PROTECTED]
>>>
>>>
>>> --
>>> MySQL General Mailing List
>>> For list archives: http://lists.mysql.com/mysql
>>> To unsubscribe:
>>> http://lists.mysql.com/[EMAIL PROTECTED]
>
>
> __________ NOD32 1.721 (20040416) Information __________
>
>
> This message was checked by NOD32 Antivirus System.
> http://www.nod32.com


--
Stormblade (Shaolin Code Warrior)
Software Developer (15+ Years Programming exp.)

"The worth of your opinion is in direct proportion to the number of people who have 
asked for it."

My System: http://www.anandtech.com/mysystemrig.html?rigid=1683


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to