我有两个表,universitas表和fakultas表
关于如下的模式表大学
struct Book: Decodable {
let title: String
let author: String
let genre: String
init(from decoder: Decoder) throws {
let values = try decoder.container(keyedBy: CodingKeys.self)
title = try values.decode(String.self, forKey: .title).capitalized
author = try values.decode(String.self, forKey: .author)
genre = try values.decode(String.self, forKey: .genre)
}
enum CodingKeys: String, CodingKey {
case title, author, genre
}
}
和下面的表格fakultas
public function up()
{
Schema::create('universitas', function (Blueprint $table) {
$table->string('id');
$table->string('nama_universitas');
$table->timestamps();
});
}
如果我使用数据类型字符串并使用无符号,可能吗?
使用php artisan migration执行时,出现错误
答案 0 :(得分:0)
从数据库角度来看,在字符串上使用 unsigned 毫无意义。 unsigned的目的是确定数字字段是否可以采用负值。例如,一个:
$table->tinyInteger('foo');
将创建一个数据库字段,该字段的值将介于-128和+128之间,而
$table->tinyInteger('foo')->unsigned();
将创建一个范围为0-255的数据库字段
与外键有关的重要一点是,外键 的数据类型必须与另一个表的主键的数据类型匹配,无论是数字还是字符串。