Синтаксис MySQL ER_PARSE_ERROR в реагировать родной - PullRequest
0 голосов
/ 23 декабря 2019

Я пытаюсь вставить данные в базу данных, используя MySQL черезact-native. Однако эта ошибка всегда появляется: ER_PARSE_ERROR: у вас есть ошибка в вашем синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с '' в строке 1

. Я пробовал использовать другой синтаксис, такой как INSERT INTO userTest (id,name,email,phone_number) VALUES ?, но все еще существует ошибка

Фрагмент кода:

const express = require('express');
const bodyParser = require('body-parser');
const mysql = require('mysql');
// Starting our app.
const app = express();

app.use(bodyParser.urlencoded({extended:true}));

const con = mysql.createPool({
  host     : '',//endpoint
  user     : 'administrator',
  password : '',
  database : 'database_3'//db name
});

var server = app.listen(9090, function(){
    var host = server.address().address
    var port = server.address().port
    console.log("Server start");
    console.log('Go check out http://localhost:9090/users');
  });

app.get('/users', function (req, res) {
    // Connecting to the database.
    con.getConnection(function (err, connection) {

    // Executing the MySQL query (select all data from the 'userTest' table).
    con.query('SELECT * FROM userTest', function (error, results, fields) {
      // If some error occurs, we throw an error.
      if (error) {
        console.log("Error in selecting value");
        throw error;
    } 
      else {
        console.log("Success");
        console.log(results);};
      res.send(results)
    });
  });
});

app.post('/users', function(req,res){
  con.query('INSERT INTO userTest SET ?', req.body, function(error,rows,fields){
    if (error) console.log('error here: ' + error );
    else{
      console.log(rows);
      res.send(JSON.stringify(rows));
    }
  })

})

Фрагмент файла App.js:

export default class App extends Component {
  constructor(props){
    super(props);
    this.state={
      apiData:[],
      naData:[]
    }
    this.dataId=null;
    this.name=null;
    this.email=null;
    this.phone_number=null;
  }
  getButton=() => {
    fetch('http://172.20.10.3:9090/users',{
      method:'GET'
    }).then((responseData) => {
      return responseData.json();
    }).then((jsonData) => {
      console.log(jsonData);
      this.setState({apiData:jsonData})
      console.log(this.state.apiData)
    }).done();
    this.dataId=null;
  }

  saveButton = () => {
    fetch('http://172.20.10.3:9090/users',{
      method:'POST',
      headers:{
        'Accept':'application/json',
        'Content-Type':'application/json'
      },
      body: JSON.stringify({name:this.name, email:this.email, phone_number:this.phone_number})
    }).then((responseData) => {
      return responseData.json();
    }).then((jsonData) => {
      this.setState({naData:jsonData})
      console.log(this.state.naData)
    }).done();
    this.dataId=null;
    this.name=null;
    this.email=null;
    this.phone_number=null;

  }

  render(){...}

    
}

MySQL таблица данных userTest. userTest table details

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...