4

PHPMyAdmin を使用してデータベースに新しいテーブルを追加しました。PHP ページからアクセスしようとすると、「テーブルが存在しません」という恐ろしい MySQL エラーが発生します。
データベース接続データは問題ありません。同じページの数行上で、同じデータベース内の別のテーブルにアクセスするために使用されます。SHOW TABLESPHPMyAdmin で行うと、新しいテーブルが一覧表示されます。PHP ページから実行すると、新しいテーブルがリストに表示されません。データベース内の他のすべてのテーブルと同様に、新しいテーブルのエンジンは MyISAM です。PHPMyAdmin 経由でのみ db サーバーにアクセスできます。

すみません、コードを忘れました、ここにあります:

$db = mysql_connect ($db_host, $db_user, $db_password) or 
die("Error message here");
$db_select = mysql_select_db($db_name, $db)or die("Error message here");


$query = ("SELECT * FROM `old_table`");
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)) 
{
// do stuff - here it works
}


$query = ("SELECT * FROM  `new_table`");
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)) 
{
// do stuff - here it does not work
echo mysql_error();
}
4

3 に答える 3

4

Unix では、テーブル名は大文字と小文字が区別されます。Windows では、そうではありません。楽しいですね。それぞれのファイルシステムのようなものです。偶然だと思いますか?

おそらくテーブルの種類によって異なります。あなたの場合はMyISAM。

フィールド名は大文字と小文字を区別しません。

データベース名とテーブル名については、基盤となるオペレーティング システムによって異なります。識別子の大文字と小文字の区別

于 2013-01-19T13:59:27.210 に答える
2

答えは簡単です: タイプミスか、次のようなばかげた間違い: 間違ったサーバーに接続している、間違ったファイルを編集している、またはそのようなものです。すべてを再確認してください。
これを引き起こす特定のエラーはありません

于 2013-01-19T14:00:06.103 に答える
1

答えは、テーブル名または少なくとも 1 つのフィールド名が予約語です。

これを解決するには、フィールドとテーブル名をグレイブ アクセント (`) で囲みます。次に例を示します。

SELECT `value` FROM `pivot`;
于 2019-05-06T15:30:24.070 に答える