mysql:4242
From: <moeru@xxxxxxxxxx>
Date: Mon, 27 Aug 2001 19:33:43 +0900
Subject: [mysql 04242] Re: 日時が変更されて update される
2001/08/26 00:57:06 +0900にとみたまさひろ <tommy@xxxxxxxxxx>さんに頂いた 「[mysql 04203] Re: 日時が変更されて update される」への返事です。 モエルです。 とみたさん、コメントありがとうございますm(__)m >>> >>update item set ends=1000000000 where itemid = 12345; >>> >>こういうので、なんで数値が変わるのかが謎なんです。。 >>> SQLの書き方が正確じゃなかったです。 >>> 実際は、数値をクォートして文字型として入力してます。 >>> update item set ends='$ends' where itemid = 12345; >> >>うちでは再現しませんでした。 >> >>mysql コマンドから、手で update item set ends='1000000000' where 〜 と >>入力して、確かめた結果でしょうか? >> これについて、いろいろテストしてみました。 (コマンド入力もやってます) 同一の内容のデータベースを作ってあるので そこに問題の日時のデータを全部流し込んで試してみました。 *ファイルをコピーして、flush tabelsをしました。 でも、この問題は再現しませんでした。。 なんでか分かりません。。 今までほとんどmyisamchkをしてなかったので これが原因かなとか思ってます。。 テーブルじゃなくて特定フィールドだけ壊れるなんてことは ありえるんでしょうか? >>あと、show fields from item; の結果も見せてもらえませんか。 mysql> show fields from item; +---------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------+--------------+------+-----+---------+----------------+ | itemid | int(20) | | PRI | NULL | auto_increment | | userid | int(11) | | MUL | 0 | | | date | int(16) | | MUL | 0 | | | title | varchar(100) | | MUL | | | | category | int(11) | YES | | NULL | | | picurl | tinytext | YES | | NULL | | | mode | char(1) | YES | MUL | NULL | | | duration | char(2) | YES | | NULL | | | ends | int(16) | | MUL | 0 | | | description | text | YES | | NULL | | | location | char(2) | YES | | NULL | | | shipping | char(1) | YES | | NULL | | | payment | char(1) | YES | | NULL | | | price | varchar(16) | YES | | NULL | | +---------------+--------------+------+-----+---------+----------------+ *結構長いので一部省略してます。 dateとendsは、今までvarchar(16)でした。 priceは、価格の幅が大きいためファイルサイズの節約で varchar(16)にしてます。 モエル