Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

CREATE TABLE IF NOT EXISTS falha com a tabela já existente


Tente isso
$query = "SELECT ID FROM USERS";
$result = mysqli_query($dbConnection, $query);

if(empty($result)) {
                $query = "CREATE TABLE USERS (
                          ID int(11) AUTO_INCREMENT,
                          EMAIL varchar(255) NOT NULL,
                          PASSWORD varchar(255) NOT NULL,
                          PERMISSION_LEVEL int,
                          APPLICATION_COMPLETED int,
                          APPLICATION_IN_PROGRESS int,
                          PRIMARY KEY  (ID)
                          )";
                $result = mysqli_query($dbConnection, $query);
}

Isso verifica se há algo na tabela e se retorna NULL você não tem mesa.

Também não há BOOLEAN tipo de dados no mysql, você deve INT e apenas defina-o como 1 ou 0 ao inserir na tabela. Você também não precisa de aspas simples em tudo, apenas quando estiver codificando dados na consulta.

Assim...
$query = "INSERT INTO USERS (EMAIL, PASSWORD, PERMISSION_LEVEL, APPLICATION_COMPLETED, APPLICATION_IN_PROGRESS) VALUES ('[email protected]', 'fjsdfbsjkbgs', 0, 0, 0)";