I mean:

Should I enable something like 'strict checking' / verbose so that
MYSQLcomplains and refrains from inserting truncated data in the
tables??

Thanks,
Anoop

On 4/28/05, Anoop kumar V <[EMAIL PROTECTED]> wrote:
> 
> Thank you,
> 
> But the show warnings does not seem to work on my prompt. I am using
> mysql> SELECT VERSION();
> +-----------+
> | VERSION() |
> +-----------+
> | 4.0.23-nt |
> +-----------+
> 
> And even if it did and does how will that reflect in my tomcat logs?? I 
> mean I want a way where without user interaction any such warnings are 
> recorded somewhere..
> 
> Also why does it insert at all - I just checked with Sybase and previously 
> MS Sql server - both display a very visible error message and DO NOT insert 
> the data (although the bug filled MS SQL server said "data may have been 
> truncated" when data was not even inserted!!)
> 
> Should I enable somethink like strict checking so that MSSQL complains and 
> refrains from inserting truncated data in the tables??
> 
> Thanks and r,
> Anoop Kumar V.
> 
> On 4/28/05, mathias fatene <[EMAIL PROTECTED]> wrote:
> > 
> > Hi,
> > I think you shoul dcatch the "show warnings" command cause in mysql
> > client you see the number of warnings.
> > Data are even truncated according to the limit of the type (tinyint, int
> > ...).
> > 
> > Example : 
> > mysql> create table toto(a tinyint,b char(5));
> > Query OK, 0 rows affected (0.06 sec)
> > 
> > mysql> insert into toto values (500,'Long text');
> > Query OK, 1 row affected, 2 warnings (0.02 sec)
> > 
> > It's said here that i have 2 warnings. 
> > 
> > mysql> show warnings
> > -> ;
> > +---------+------+------------------------------------------------------
> > +
> > | Level | Code | Message
> > |
> > +---------+------+------------------------------------------------------ 
> > 
> > +
> > | Warning | 1264 | Data truncated; out of range for column 'a' at row 1
> > |
> > | Warning | 1265 | Data truncated for column 'b' at row 1
> > |
> > +---------+------+------------------------------------------------------ 
> > 
> > +
> > 2 rows in set (0.00 sec)
> > 
> > mysql> select * from toto;
> > +------+------+
> > | a | b |
> > +------+------+
> > | 127 | Long | <==== my 500 is also truncated
> > +------+------+
> > 1 row in set (0.00 sec)
> > 
> > Best Regards
> > --------------------
> > Mathias FATENE
> > 
> > Hope that helps
> > *This not an official mysql support answer
> > 
> > 
> > -----Original Message-----
> > From: Anoop kumar V [mailto: [EMAIL PROTECTED]
> > Sent: vendredi 29 avril 2005 00:21
> > To: mysql@lists.mysql.com
> > Subject: No error / warning when data is truncated on insertion into
> > mysql
> > 
> > I am using MySQL and SQL server with Tomcat.
> > 
> > Our application writes into both databases (mysql and ms sql server) at
> > once
> > based on some data collected from an end user. Now if the end user
> > enters
> > more data (characters) than the column can hold, the data obviously gets 
> > 
> > 
> > truncated.
> > 
> > But the surprising thing is that although MS SQL server sends a warning
> > message to tomcat (seen on the tomcat console) that "data may have been
> > truncated" - MySQL does not show any warning message (I would have 
> > expected
> > an error actually) as the data in the column is not what the data was
> > intended to be.
> > (Actually MS SQL shows the error and does not even insert the data...)
> > 
> > Does MySQL not care or maybe I need to activate some option in MySQL 
> > like
> > verbose or stict checking etc... It just truncated and inserted the data
> > 
> > with no warning / error or any hassle!!
> > 
> > how can i force mysql to check for such inconsistencies and report??
> > --
> > Thanks and best regards, 
> > Anoop
> > 
> > 
> 
> 
> -- 
> Thanks and best regards,
> Anoop 
> 



-- 
Thanks and best regards,
Anoop

Reply via email to