
WindowsXPsp2,MySQL4.0.23です。
雑誌の記事を参考に以下のようなsqlファイルを作成し、sourceコマンドで流し込みをしました。流し込むファイルの内容も下記に示します。
[sqlファイル]
use docsdb;
drop table titletb;
create table titletb (
tid int unsigned auto_increment primary key,
tyear year not null,
tmonth tinyint not null,
title1 varchar(100) not null,
title2 varchar(100),
title3 varchar(100)
);
grant select,insert,update,delete on docsdb.titletb to docsuser@localhost identified by 'password';
load data infile 'datafile' into table titletb;
[datafile](スペースはタブ文字です)
2004 1 ああああああ ううううう
2004 2 いいいいいい ううううう
これによって作成したテーブルを、
select * from titletb;
とすると結果が崩れて表示されてしまうのです。
格納されている情報に問題はなく、カラムごとに区切って表示させればちゃんと期待通りに格納されています。
何かやり方を間違っているのでしょうか?
普通に崩れずに表示させるにはどうすればよいのでしょうか?
それと、sourceコマンドで流し込んだ際に、Warnings:4と出るのですがこれは問題ないのでしょうか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
[datafile](スペースはタブ文字です)
2004 1 ああああああ ううううう \N /n
2004 2 いいいいいい ううううう \N /n
としてください。
書き込みでは反映されないようですが、各行の先頭にはタブをうっています。(もしかしてあなたもされているかも)
・理由
カラムとデータが対応していません。
IDは何も記入しなくていいのでタブのみうってください。
(反映されていないだけでしたらすみません)
title3はNULLとなるため\Nとしましょう。
改行は/nとしておくといいでしょう。
ありがとうございます。おっしゃるやり方で無事崩れずに表示されました。とても感謝しております。本当にありがとうございました。
おっしゃるとおり先頭にはタブを打っております。どうやらここでは先頭のスペースは投稿時に削られるのですね。
ということは今回の私のトラブルはカラムとデータが対応していないのではなくて空白のフィールドを\nとしなかったことによるものなのでしょうか?
それと、改行を/nとするということですが、今回のように外部ファイルからデータを流し込む際のデータファイルは、データの入力の際エンターキーによる改行を行わずにその部分に/nを入れるということでよろしいでしょうか?
No.2
- 回答日時:
#1です。
普通に表示できてよかったですね。頑張ってください。
>ということは今回の私のトラブルはカラムとデータが対応していないのではなくて空白のフィールドを\nとしなかったことによるものなのでしょうか?
tid,tyear,tmonth,title1,title2,title3の6項目に対して1行に5項目しか入っていなかったことが言いたかったことです。
>それと、改行を/nとするということですが、今回のように外部ファイルからデータを流し込む際のデータファイルは、データの入力の際エンターキーによる改行を行わずにその部分に/nを入れるということでよろしいでしょうか?
load data infile 'datafile' into table titletb以降にタブに変わるもの・改行に使う記号を指定できますが、デフォルトではタブで区切り・/nで改行となります。“Windowsでは/r/nにしましょう。”といわれることもあります。何も無くてもいいですが、Warningsの数が増えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL `picture` varchar(255) のコマンドで間違いないでしょうか? 1 2022/11/21 04:08
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- MySQL エラー 1068 (42000): 複数の主キーが定義されていますエラー 2 2022/11/17 04:36
- PHP php エラー 2 2022/10/23 16:43
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- MySQL my_itemsテーブルのIDにAUTO_INCREMENT を追加ができるかで 1 2023/01/03 09:09
- MySQL MYSQL エラー 2 2022/10/18 11:37
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
下記の問合せを行うクエリを、P...
-
mysqlがインストールされている...
-
下記の問合せを行うクエリを、P...
-
下記の問合せを行うクエリを、P...
-
テーブル名が可変の場合のクエ...
-
MySQL NULLだけをカウントして...
-
SQLで漢字名称を都道府県や市区...
-
エラー 1068 (42000): 複数の主...
-
何にかが違うから エラーなんで...
-
MySQLでcreateが使えない MySQL...
-
データベースの接続について
-
同一日に複数レコードがある場...
-
MAMP 99ドル約1.6万円 高い...
-
あってますか?SQL
-
WHERE `年月日` = '晴' OR `年...
-
SQLです教えてくださいお願いし...
-
SQLを作ったのですがうまくいき...
-
(初心者)MySQLやmaraDBで、crea...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
mysqlがインストールされている...
-
同一日に複数レコードがある場...
-
#1062 - '0' は索引 'PRIMARY' ...
-
エラー 1068 (42000): 複数の主...
-
SQLでカラムを追加し、条件に合...
-
テーブル名が可変の場合のクエ...
-
【初歩】ラジオボタンをつかっ...
-
MySQLのテーブル作成でハイフン...
-
mysqlのupdate構文についての質...
-
LIMIT で条件を満たしているの...
-
データベースの接続に失敗して...
-
MySQL NULLだけをカウントして...
-
select *, `人口(男)`AND`人口(...
-
複数DBテーブルからのデータ取得
-
テーブル:生徒名簿 生徒名簿の...
-
htmlコードで書かれた表にphpで...
-
データベースの複製の仕方(mysql)
-
「重複を間引いた数」をcountし...
-
MAMP 99ドル約1.6万円 高い...
-
SQLです教えてくださいお願いし...
おすすめ情報