如何发送POST请求而不发送快速自动递增主键

问题描述:

我在写一个简单的API,我一直在使用Postman进行测试。我有一个自动递增的主键(CustomerTypeID),用于存储在MySQL中的“customer_type”表。出于实际的原因,我需要能够在此表中创建记录而不发送CustomerTypeID。当我使用邮递员发送以下POST请求时:如何发送POST请求而不发送快速自动递增主键

{ 
    "CustomerType": "testing" 
} 

更新后的表显示CustomerTypeID为2且CustomerType为NULL的新行。

下面是我的Express API中的一段代码,它显示了此特定查询以及此POST请求的路由如何工作。

var db = require('../dbconnection.js'); 
var CustomerType = { 
    addCustomerType:function(CustomerType,callback) { 
    return db.query("INSERT INTO customer_type (CustomerType) VALUES (?)", [CustomerType.CustomerType], callback); 
    } 
}; 
module.exports = CustomerType; 

我知道我可以更改查询说

INSERT INTO customer_type (CustomerTypeID, CustomerType) VALUES (?,?); 

而且将填补两个列。但是,我不知道如何省略CustomerTypeID列,因为它是最终用户无法知道的数字。

+0

如果我理解正确,您的ID已被正确插入 - 问题在于未插入customerType - 因此您应该检查插入时的customerType值 – Jan

事实证明,我给出的最后一个查询的语法是正确的。我用同样的POST请求为前:

{ 
    "CustomerType": "testing" 
} 

,并通过使用SQL查询,包括CustomerTypeID,MySQL的知道,只是增加CustomerTypeID的值,因为它没有给出在POST请求的值。当我用这个查询再次运行相同的POST时,我收到一个包含CustomerTypeID和CustomerType的新行。