At 19:39 -0400 4/28/05, Anoop kumar V wrote:
I mean:

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

Yes, but you'll need MySQL 5.0 to do it.

http://dev.mysql.com/doc/mysql/en/server-sql-mode.html



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


--
Paul DuBois, MySQL Documentation Team
Madison, Wisconsin, USA
MySQL AB, www.mysql.com

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



Reply via email to