Mysql
 sql >> база данни >  >> RDS >> Mysql

създайте mysql таблица, ако тя не съществува

Няколко неща.

Липсваше точка и запетая ; в и в края на )"

if(empty($result)) {
    echo "<p>" . $table . " table does not exist</p>";
    $query = "CREATE TABLE IF NOT EXISTS WEIGHIN_DATA (
        id INT NOT NULL AUTO_INCREMENT,
        PRIMARY KEY(id),
        DATE    DATE NOT NULL,
        VALUE   SMALLINT(4) UNSIGNED NOT NULL
    )" // <--- right there

което би причинило/изведе грешка при анализа, като например:

Сред другите грешки, както е показано в моите коментари от първоначално публикуван код.

Освен това не сте използвали mysql_query в създаването на вашата таблица.

Ето един mysqli_ метод, където коментирах оригиналните ви кодове.

Странична бележка:Използвате ID за вашата колона в $query = "SELECT ID FROM " . $table; и все пак вие създавате вашата таблица и колона като id с малки букви; и двете букви трябва да съвпадат.

<?php

session_start();
error_reporting(E_ALL);
ini_set('display_errors', 1);

$DB_HOST = "xxx"; // put your own data
$DB_NAME = "xxx"; // put your own data
$DB_USER = "xxx"; // put your own data
$DB_PASS = "xxx"; // put your own data


$conn = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
if($conn->connect_errno > 0) {
  die('Connection failed [' . $conn->connect_error . ']');
}



/*

    // 1. CONNECT TO THE DB SERVER, confirm connection
    mysql_connect("localhost", "root", "") or die(mysql_error());
    echo "<p>Connected to MySQL</p>";
    $mysql_connexn = mysql_connect("localhost", "root", ""); // redundant ?


    // 2. CONNECT TO THE SPECIFIED DB, confirm connection
    $db = "weighttracker";
    mysql_select_db($db) or die(mysql_error());
    echo "<p>Connected to Database '$db'</p>";
    $db_connexn = mysql_select_db($db)or die(mysql_error("can\'t connect to $db"));

    // 3. if table doesn't exist, create it
    $table = "WEIGHIN_DATA";
    $query = "SELECT ID FROM " . $table; // that should be id and not ID
    //$result = mysql_query($mysql_connexn, $query);
    $result = mysql_query($query, $mysql_connexn);


*/


    $table = "WEIGHIN_DATA";
    $query = "SELECT ID FROM " . $table; // that should be id and not ID
    //$result = mysql_query($mysql_connexn, $query); // your original code
    // however connection comes last in mysql method, unlike mysqli
    $result = mysqli_query($conn,$query);


if(empty($result)) {
    echo "<p>" . $table . " table does not exist</p>";
    $query = mysqli_query($conn,"CREATE TABLE IF NOT EXISTS WEIGHIN_DATA (
        id INT NOT NULL AUTO_INCREMENT,
        PRIMARY KEY(id),
        DATE    DATE NOT NULL,
        VALUE   SMALLINT(4) UNSIGNED NOT NULL
    )");
    }
    else {
        echo "<p>" . $table . "table exists</p>";
    } // else

?>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql команда за показване на текущите конфигурационни променливи

  2. ap_pass_brigade не успя във функцията handle_request_ipc

  3. virtualenv, mysql-python, pip:някой знае как?

  4. API на Google Maps v3:Как да настроите нивото на мащабиране и центъра на картата към местоположение, предоставено от потребителя?

  5. parse.com алтернативи с отворен код за бекенда