Ошибка: ER_WRONG_VALUE_COUNT_ON_ROW: количество столбцов не соответствует значению в строке 1, даже если оно соответствует столбцам в моей базе данных - PullRequest
0 голосов
/ 31 октября 2019

Я знаю, что у меня много подобных вопросов.

Но у меня есть нулевое значение, даже если я вставил только две данные в два столбца.

sql: 'INSERT INTO EXAMPLE_TABLE (name, address) VALUES (name = \')xxx \ ', address = \' xxxxxxxxxxxxx \ ', NULL)'

NULL этот IDK, откуда он пришел.

вот изображениемоего ПРИМЕРА ТАБЛИЦЫ.

ПРИМЕЧАНИЕ Столбец id автоматически увеличивается.

table

Ниже приведен мой API, который вставляет имя и адрес вмой пример таблицы.

router.post('/add', (req, res) => {
  let sql = `INSERT INTO EXAMPLE_TABLE (name, address) VALUES (?, ?)`;
  myDB.query(sql, [req.body.name, req.body.address],
    (error, results) => {
      if (error) {
        console.log(error);
      } else {
        res.send({ results })
      }
    })
})

и в моем store.js

<template>
  <section>
    <v-container fluid>
      <v-card raised>
        <v-card-title
          class="display-2 font-weight-bold"
          style="border-bottom: green 3px solid"
        >NEW ARTICLE</v-card-title>
      </v-card>
      <v-card raised style="margin-top:10px">
        <v-card-text class="headline font-weight-black">
          <v-layout>
            <v-row align-content="center">
              <v-col>
                TITLE
                <v-text-field
                  v-model="title"
                  filled
                  placeholder="Provide a Title for the article"
                  prepend-icon="title"
                ></v-text-field>
              </v-col>
              <v-col>
                SUBHEADER
                <v-text-field
                  v-model="subheader"
                  filled
                  placeholder="Provide a description for the article"
                  prepend-icon="description"
                ></v-text-field>
              </v-col>
            </v-row>
          </v-layout>
          <v-btn color="red white--text" style="margin:10px" @click="passToDB">SUBMIT</v-btn>
        </v-card-text>
      </v-card>
    </v-container>
  </section>
</template>

<script>
import { mapActions } from "vuex";
export default {
  data() {
    return {
      name: "",
      address: ""
    };
  },
  methods: {
    ...mapActions(["addArticle"]),
    passToDB() {
      this.addArticle({
        name: this.name,
        address: this.address
      });
    }
  }
};
</script>


 async addArticle({ commit }, name, address) {
    const response = await axios.post('http://localhost:9001/article/add',
        {
            name: name, address: address
        });
    commit('ADD_ARTICLE', response.data)

    console.log(name, address);
}
...