2016-11-08 9 views
0

Я разрабатываю программное обеспечение с PHP и Postgre. Итак, у меня есть проблема с вставкой кода:Я не могу вставить данные с Postgre и PHP

function create(){ 
    $query = "INSERT INTO " . $this->table_name . " VALUES (" . $this->pess_nome . ")"; 

    $result = pg_query($this->conn, $query); 

    if($result){ 
     return true; 
    }else{ 
     return false; 
    } 
} 

сообщение об ошибке:

Warning: pg_query(): Query failed: ERROR: column "test" does not exist LINE 1: INSERT INTO pessoa VALUES (test)^in C:\xampp\htdocs\Projeto_GPass\objects\pessoa.php on line 26

ответ

3

строковые значения в запросах SQL должны быть заключены в апострофы или кавычки. Измените второй строке кода следующим образом:

$query = "INSERT INTO " . $this->table_name . " VALUES ('" . $this->pess_nome . "')"; 

EDIT: Если вы используете значение строки в запросе и не заключить его в кавычки ("test") или апострофы ('test'), PostgreSQL принимает его в качестве имени столбца, следовательно, сообщение об ошибке.