休息了两天,停止了笔耕,人老了,上了年龄了,就变懒了。今天勉强强迫自己继续实战的演练,本节我们就接着上一节,继续进行接口的实战及数据库方面的技能点。
上一节,我们主要是从数据库进行读数据,但是实际的业务场景中,需要前端(或管理后台)调用接口,向数据库先产生数据,即插入数据,后面的业务根据这些数据产生更多的业务。所以,本节,我们就来讲讲向数据库插入数据操作。
插入数据前,我们的csdnUser表中有一个字段:id varchar(20),数据库中每一条数据都有自己的id,并且必须是唯一的。注意这个唯一,指的是本表唯一。不同表中的ID有可能会出现重复,这完全是合理的,只要保证同一个表的主键id唯一即可。
那么向数据库插入数据,就免不了给对应的EF实体ID赋值,我们如何保证ID的唯一呢?C#中本身就提供一个类:Guid:
我们可以通过调用Guid.NewGuid().ToString();方法来生成唯一的ID。回头来看看我的数据库设计时,设计的ID的长度仅仅为20位,但是些方法生成的是32位,是保存不进去的,长度超出了。那么怎么办?
1、要么截短
2、要么把数据库的设计长度调整为32位
这里我们选择第2条,保证生成的数据的唯一性,截断,并不能保证数据的唯一性了,失去了本类实现存在的价值了。如下修改为32位长度,保存表。