在创建API时,使用UNIQUE约束来防止重复的主键值。以下是一个Python Flask示例:
from flask import Flask, request
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///example.db'
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(50), unique=True)
@app.route('/users', methods=['POST'])
def create_user():
data = request.get_json()
new_user = User(username=data['username'])
db.session.add(new_user)
db.session.commit()
return {'message': 'User created successfully'}, 201
在这个示例中,只能为同一表中的每个记录分配唯一的主键值。如果尝试使用相同的用户名创建另一个用户,则会引发唯一性约束异常。