go语言查询mysql数据不一致
大概业务是这样,go服务端,按照某一个列值查询一个表,是否有数据,如果没有就插入新数据,如果存在该字段的数据,则更新该条数据的其他字段值。
问题:
当没有数据A的时候。第一次执行业务,A会正常插入到表中。
但当第二次再使用A数据去执行业务的时候,服务端从mysql中查询不到包含A的数据,会再继续尝试去插入A数据的新数据条。会导致后续业务出错。
但是当客户端过一会之后,再去操作,此时服务端又能从表中查询到A数据条,然后又可以正常执行余下业务。
请问各位大神,这个问题是mysql本身缓存了数据?还是go程序本身的问题?