Php 表';库存1.产品1';不';不存在

Php 表';库存1.产品1';不';不存在,php,mysql,Php,Mysql,我正在创建一个数据库和表。以下是创建数据库和表的代码: <?php //error_reporting(E_ALL); //connect to mysql $db = mysql_connect('127.0.0.1', 'root', '') or die ('Unable to Connect.Check your connection parameters'); //create the main database if it doesn't already exists $que

我正在创建一个数据库和表。以下是创建数据库和表的代码:

<?php
//error_reporting(E_ALL);
//connect to mysql
$db = mysql_connect('127.0.0.1', 'root', '') or die ('Unable to Connect.Check your connection parameters');
//create the main database if it doesn't already exists
$query = 'CREATE DATABASE stock1';
mysql_query($query, $db) or die (mysql_error($db));
//make sure our recently created db is the active one
mysql_select_db('stock1', $db) or die (mysql_error($db));

//create the products table
$query = 'CREATE TABLE products1(
         product_id     INTEGER UNSIGNED    NOT NULL    AUTO_INCREMENT,
         product_name   VARCHAR(40)         NOT NULL,
         product_stock  SMALLINT UNSIGNED   NOT NULL DEFAULT 0,

         PRIMARY KEY(product_id)
         )';

         echo "Success";

         ?>

有人能告诉我为什么会出现这个错误吗?以及我如何修复它?

您刚刚忘记执行创建表的查询:

$query = 'CREATE TABLE products1(
         product_id     INTEGER UNSIGNED    NOT NULL    AUTO_INCREMENT,
         product_name   VARCHAR(40)         NOT NULL,
         product_stock  SMALLINT UNSIGNED   NOT NULL DEFAULT 0,

         PRIMARY KEY(product_id)
         )';

mysql_query($query);

echo "Success";

mysql\u查询($query)

您只是忘记执行创建表的查询:

$query = 'CREATE TABLE products1(
         product_id     INTEGER UNSIGNED    NOT NULL    AUTO_INCREMENT,
         product_name   VARCHAR(40)         NOT NULL,
         product_stock  SMALLINT UNSIGNED   NOT NULL DEFAULT 0,

         PRIMARY KEY(product_id)
         )';

mysql_query($query);

echo "Success";
mysql\u查询($query)

您缺少代码

mysql_query($query);
在你的
回应“Success”之前尚未创建您的
产品1
表。

缺少您

mysql_query($query);

在你的
回应“Success”之前您的
products1
表尚未创建。

您从未执行过创建products表的查询。

您从未执行过创建products表的查询。

可能这意味着stock1.products1表不存在?请注意,您实际上并没有执行将创建它的查询。请转到phpMyAdmin并检查两件事:-您的数据库名为“stock1”吗-如果是,请检查是否有一个名为“products1”的表。这是调试101的一个很好的练习。实际上,试着看看你的数据库,看看发生了什么。此外,您确实需要在代码中添加一些安全性和错误检查。盲目地接受输入,尤其是在不逃避输入的情况下,只不过是在乞求您的系统妥协。这个问题似乎离题了,因为它是由于缺少查询执行而导致的。因此:太本地化了。可能这意味着stock1.products1表不存在?请注意,您实际上并没有执行将创建它的查询。请转到phpMyAdmin并检查两件事:-您的数据库名为“stock1”吗-如果是,请检查是否有一个名为“products1”的表。这是调试101的一个很好的练习。实际上,试着看看你的数据库,看看发生了什么。此外,您确实需要在代码中添加一些安全性和错误检查。盲目地接受输入,尤其是在不逃避输入的情况下,只不过是在乞求您的系统妥协。这个问题似乎离题了,因为它是由于缺少查询执行而导致的。因此:过于本地化。
mysql_query($query);