我需要一个带有自动递增字符串(例如 A1、A2、A3)的主键
如果可以的话请帮助我。
最佳答案
在Mysql中没有直接的方法,但你可以做的是创建一个用于存储系列的表,你可以创建一个包含列的系列表 ID、系列、前缀和类别 您可以从系列表中获取下一个系列号
例如。 系列表有以下记录
1 | 853 | CNO | customers
上面的记录 ID 是 1,853 是系列号,CNO 是前缀,类别是客户,我想要的是下一个客户应该有系列号 CNO853
然后只需编写一个函数
public static function getNextSeriesFor($category)
{
$number = false;
$details = \App\Series::where('category', $category)->first();
if ($details != null) {
$series_number = $details->series_number;
$details->series_number = $details->series_number + 1;
$details->save();
$number = $details->prefix.$series_number;
}
return $number;
}
这将为我返回客户的下一个系列
例如。 CNO853、CNO854、CNO855、...
关于mysql - laravel 是否可以使用字符串自动递增主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43370368/