在我的db
表格中,PK
sessId
列uniqueidentifier
设置为newid()
。但是当我插入记录时,sessId
生成为00000000-0000-0000-0000-000000000000
。
我认为这是一个系统错误,因此我运行了select newid()
它生成了一个新的id
。但为什么列插入那些零?
答案 0 :(得分:1)
发生的事情是你的SessId字段是一个Guid,它是一个值类型,因此必须有一个默认值,并且该值全为零。因此,当保存到数据库时,字段上有一个值(全为零),并且不会触发数据库默认值。
在使用xargs
调用override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell: UITableViewCell
let identifier = cell_identifiers[indexPath.row][0] as! String
if ((cell_identifiers[indexPath.row][1] as! String) == "MYTURN" ) {
cell = tableView.dequeueReusableCellWithIdentifier(identifier, forIndexPath: indexPath) as! GameViewCell
let match = self.myTurnMatches[indexPath.row - 4]
setupGameViewCellObject(match)
}
if ((cell_identifiers[indexPath.row][1] as! String) == "NOT" ) {
cell = tableView.dequeueReusableCellWithIdentifier(identifier, forIndexPath: indexPath) as! FirstMenuTableViewCell
}
return cell
}
之前,您可以为SessId赋值,并且不依赖数据库来执行此操作。
或者,如果您可以找到在您的实体上执行此操作的方法,请将该字段设置为可以为空的Guid,以使其作为空值到达数据库。