postgres 错误:整数的输入语法无效:“”

Posted

技术标签:

【中文标题】postgres 错误:整数的输入语法无效:“”【英文标题】:postgress error: invalid input syntax for integer: "" 【发布时间】:2018-08-06 15:30:46 【问题描述】:

我在 knex 中使用了 reactjs、nodejs、express 和 postgress

这是代码

app.post('/new-story', (req, res) => 
    const title, description, mature, id = req.body;
    db.select('stories').from('users').where('id' = id)
    .then(data => 
       const stories = data[0].stories;
       db('story')
          .returning('*')
          .insert(
              title: title,
              category: category,
              description: description,
              mature: mature,
              entry: stories
       )
       .then(story => 
             res.json(story)
       )
)
.catch(err => console.log(err))
)

我收到并出错

错误:整数的无效输入语法:“”在 Connection.parseE,在 Connection.parseMessage,在 Socket,

这是我的反应应用程序中的代码

onSaveDate = () => 
   fetch('http://localhost:3001/new-story', 
       method: 'post',
       header: 'Content-Type' : 'application/json',
       body: JSON.stringify(
            id: this.state.id,
            title: this.state.title,
            description: this.state.description,
            category: this.state.category,
            mature: this.state.mature
)
)
.then(response => response.json())
.then(story => console.log(story))

我试图在邮递员中测试我的终点并且它有效,idk 当我在我的反应应用程序中尝试时它说错误:整数的输入语法无效:“”

这是数据库

CREATE TABLE users (
   id serial primary key,
   name VARCHAR(100),
   email text unique not null,
   stories bigint default 0,
   joined timstamp not null
);

这是我的餐桌故事

CREATE TABLE users (
   id_book serial primary key,
   entry bigint default 0,
   title varchar(100),
   category varchar(100),
   description varchar(100),
   mature varchar(10)
);

我想要的是故事和条目相同,我无法弄清楚 postgress 节点中的错误

【问题讨论】:

【参考方案1】:

我收到一个错误,因为我的 id 列是空的,所以如果有人遇到类似

的错误

错误:整数的无效输入语法:“”在 Connection.parseE,在 Connection.parseMessage,在 Socket,

你应该检查数据库是否为空

【讨论】:

以上是关于postgres 错误:整数的输入语法无效:“”的主要内容,如果未能解决你的问题,请参考以下文章

PDO 错误:布尔和整数类型的输入语法无效 - 如果输入为空

PG::InvalidTextRepresentation:错误:整数的无效输入语法:“M”

“错误:整数的输入语法无效:”在 Redshift 表中为 SMALLINT 列插入 NULL 值时?

*跟进** 我正在尝试使用 Selenium 在网站框中输入一个整数,但我在 send_keys 上遇到了无效的语法错误

整数类型的输入语法无效:执行函数时具有复合数据类型的“(2,2)”

pg nodejs 包导致“json 类型的输入语法无效”