以下のコードを実行したところ
No database selected となります。
問題点を教えてくれませんか?
<?php
$db = mysql_connect('ホスト名','ユーザ名','パスワード') or die(mysql_error());
echo'データベースに接続しました';
mysql_select_db(' データベース名',$db);
mysql_query('set names UTF-8',$db);
mysql_query("INSERT INTO my_items SET maker_id=2,item_name='もも',
price=210,keyword='缶詰、ピンク、甘い',sales=0,created='2010-08-01',
modified='2010-08-01'")or die(mysql_error());
echo'データを挿入しました';
?>
INSERT INTO my_items(maker_id, ,item_name)
values(2, 'もも')
これがINSERT文の正解。他の項目も前後の括弧に項名と値とを分けて置いて下さい。
そしてUPDATE文の正解なら、以下の通り。
UPDATE my_item
SET maker_id=2,item_name='もも',
price=210,keyword='缶詰、ピンク、甘い',sales=0,created='2010-08-01',
modified='2010-08-01'
INSERT INTO my_items(maker_id, ,item_name)
values(2, 'もも')
これがINSERT文の正解。他の項目も前後の括弧に項名と値とを分けて置いて下さい。
そしてUPDATE文の正解なら、以下の通り。
UPDATE my_item
SET maker_id=2,item_name='もも',
price=210,keyword='缶詰、ピンク、甘い',sales=0,created='2010-08-01',
modified='2010-08-01'
あーっ! 申し訳ないです、INSERT文にミス(打ち損じ)あり!
ついでですから気になるところを全て確かめましょう。
まず mysqlshow を使って、どんな database 空間があるかを確かめて下さい:「mysqlshow --host='ホスト名' --user='ユーザー名' --password='パスワード'」。
DB名は 'データベース名' で合っていたでしょうか。
続いてそのDB空間にテーブル "my_item" があることを確認:「mysqlshow -h 'ホスト名' -u 'ユーザー名' -p 'パスワード' 'データベース名'」。
最後に、初答で誤記した INSERT 文を次の通りに訂正します:「INSERT INTO
my_items(maker_id, item_name, price, keyword, sales, created, modified)
values(2, 'もも', 210, '缶詰、ピンク、甘い', 0, '2010-08-01', '2010-08-01')
」。
恥ずかしいことに、初答ではコンマが余計についていました。
アドバイス有難うございます。
早速確認してみます
エラーメッセージからすると、
mysql_select_db('データベース名', $db)
でこけてるはず。
mysql_select_db('データベース名', $db) or die(mysql_error());
こうしたら原因が分かるかも。
データベース名のtypoが有力ですかね。
他の方が指摘しているようにSQLクエリ自体おかしいですけど。
あーっ! 申し訳ないです、INSERT文にミス(打ち損じ)あり!
ついでですから気になるところを全て確かめましょう。
まず mysqlshow を使って、どんな database 空間があるかを確かめて下さい:「mysqlshow --host='ホスト名' --user='ユーザー名' --password='パスワード'」。
DB名は 'データベース名' で合っていたでしょうか。
続いてそのDB空間にテーブル "my_item" があることを確認:「mysqlshow -h 'ホスト名' -u 'ユーザー名' -p 'パスワード' 'データベース名'」。
最後に、初答で誤記した INSERT 文を次の通りに訂正します:「INSERT INTO
my_items(maker_id, item_name, price, keyword, sales, created, modified)
values(2, 'もも', 210, '缶詰、ピンク、甘い', 0, '2010-08-01', '2010-08-01')
」。
恥ずかしいことに、初答ではコンマが余計についていました。
2011/10/28 12:00:14アドバイス有難うございます。
早速確認してみます
2011/10/28 14:07:49