• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

只有两行的表如何设置约束?

php 搞代码 3年前 (2022-01-25) 19次浏览 已收录 0个评论
文章目录[隐藏]

因为微信公众平台开发需要对access_token和jsapi_ticket进行缓存,所以建立了一个wx_token的表,表有三个字段,两行数据,如下:

| key| content | expire |
| access_token | xxxx | 111111111 |
| jsapi_ticket | xxxx | 111111111 |
只作为缓存,所以每次查询或者修改“content”和“expire”内的内容,“key”内的内容作为标示。

最开始我只是建立这两个表,没有设置主键和约束,但是这样查询和更新都会出现错误。
我的问题是:
1.必须要把key设置成主键吗?
2.不设置主键就没有办法查询和更新吗?(或者说简单的方法)如果有那么该如何建表?
以上。

回复内容:

因为微信公众平台开发需要对access_token和jsapi_ticket进行缓存,所以建立了一个wx_token的表,表有三个字段,两行数据,如下:

| key| content | expire |
| access_token | xxxx | 111111111 |
| jsapi_ticket | xxxx | 111111111 |
只作为缓存,所以每次查询或者修改“content”和“expire”内的内容,“key”内的内容作为标示。

最开始我只是建立这两个表,没有设置主键和约束,但是这样查询和更新都会出现错误。
我的问题是:
1.必须要把key设置成主键吗?
2.不设置主键就没有办法查询和更新吗?(或者说简单的方法)如果有那么该如何建表?
以上。

1、主键就相当于 唯一值+索引 的功能,你key字段的记录往下会有重复吗?你建表的时候忘加或者后期需要主键,可以后期添加的,有索引的话,当你记录数足够多时效率大大提高。(也可以单独创索引)

2、索引除了提高查询速度外,也能提高UPDATE,DELETE,INSERT操作的速度,比如你这里经常会使用:
select * from wx_token where key=’access_token’;
或者
update wx_token set content=’值’,expire=’值’ where key=’access_token’;

主要看记录数量、哪种DML语句执行的频繁来做决定。

AccessToken 和 Ticket 是有过期时间的,因此不建议使用数据库作为缓存层,可以考虑使用内1本文来#源gaodai$ma#com搞$代*码*网

搞代gaodaima码

存缓存(Apc 或 memcached)等。

https://github.com/thenbsp/wechat/blob/master/documentation/accesstoken.md
https://github.com/thenbsp/wechat/blob/master/documentation/ticket.md


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:只有两行的表如何设置约束?

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址