mysql:14003
From: "Tetsuro IKEDA" <"Tetsuro IKEDA" <ikdttr@xxxxxxxxxx>>
Date: Thu, 24 May 2007 17:47:49 +0900
Subject: [mysql 14003] Re: エラーData too long
いけだです。 sql_modeの設定にstrict_trans_tablesあるいはstrict_all_tablesが 設定されていたりしませんか? http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html MySQL 5.0のWindowsのインストーラ版を使ってインストールすると、 自動生成されるmy.iniファイルに sql_mode=strict_trans_tables が 記述された気がします。 嫌ならその行を削除すればOKかと。 07/05/24 に 土田 崇<takatsuchida@xxxxxxxxxx> さんは書きました: > 土田と申します。 > > WindowsXP、mysql5.0.37-community-ntを利用しています。 > > カラム定義よりも大きな値をInsertしようとすると、表題のData too longのエ > ラーが出て困っています。 > > 今までmysqlのバージョン4や4.1を使ってきましたが、カラム定義よりも長い値 > をInsertすると、はみ出した部分は勝手に切り取られて登録されエラーにならな > かったと思います。(それ自体が良いかどうかは別問題ですが…) > Google等で調べたのですが、文字コードの問題でこのエラーが出ることを取り上 > げているサイトが多く、私の知りたい情報がなかなかヒットしません。 > > このエラーはどのバージョンから採用されたのか、回避方法などご存知の方がい > らっしゃれば教えていただけないでしょうか。 > 参考URLだけでも結構です。よろしくお願いします。 > > > create database testdb01; > > use testdb01; > > create table test01 (c1 varchar(8)); > > insert into test01 values('abcdefghijklmn'); > ERROR 1406 (22001): Data too long for column 'c1' at row 1 > > > status; > -------------- > mysql Ver 14.12 Distrib 5.0.37, for Win32 (ia32) > > Connection id: 160 > Current database: testdb01 > Current user: root@localhost > SSL: Not in use > Using delimiter: ; > Server version: 5.0.37-community-nt MySQL Community Edition (GPL) > Protocol version: 10 > Connection: localhost via TCP/IP > Server characterset: latin1 > Db characterset: latin1 > Client characterset: latin1 > Conn. characterset: latin1 > TCP port: 3306 > Uptime: 7 hours 19 min 43 sec > > Threads: 1 Questions: 2746 Slow queries: 0 Opens: 86 Flush tables: 1 > Open tables: 3 Queries per second avg: 0.104 > -------------- > > -- > 土田 崇 > takatsuchida@xxxxxxxxxx > >
14001 2007-05-24 17:33 [土田 崇 <takatsuchid] エラーData too long 14002 2007-05-24 17:47 ┣[Masaaki Matsuyama <m] 14004 2007-05-24 18:50 ┃┗[土田 崇 <takatsuchid] -> 14003 2007-05-24 17:47 ┗["Tetsuro IKEDA" <ikd] 14005 2007-05-24 18:54 ┗[土田 崇 <takatsuchid]