ACCESS数据库中如何利用SQL语句实现循环修改表的目的?

ACCESS数据库中如何利用SQL语句实现循环修改表的目的?,第1张

ACCESS

JET引擎不支持循环。如果一定要循环,可以利用ACCESS内置的VBA语言编程予以实现,但是这已经不属于数据库解决问题的方式了(数据库解决问题的方式是面向记录集合的,碰到需要面向单笔记录解决问题时它很无力)。

下面是纯SQL的解决方案,供参考

12update tblB b,tblA a set b.SCORE=a.NEWSCORE where a.CNAME=b.CNAME

请留意tblA中的CNAME应该是唯一的,否则系统会选取同CNAME其中一条记录的NEWSCORE去更新tblB中的SCORE。

给你个思路

先最大化 PHP 效率充分利用 系统资源。

把 sql 拆开比如2万一个用一个 php 去跑 总共用5个 php 一起跑。

然后最大化 mysql 效率

查一下mysql 的瓶颈在哪。针对性的去优化。

查询慢 就看看索引什么的

写慢就查查 buffer 什么的。

这里强烈建议读写分离。

用不通的数据库实例去分别处理读写。

再看看磁盘 IO 性能。看看队列数据。不行就上阵列。或者单表部署单个磁盘。或者读写在不同的磁盘进行。

当然用缓存也可以。

比如把10万条都独出来存到 memcache 等内存缓存中。循环处理数据的时候读内存的数据不用查数据库。

还有终极大招。

你直接把数据库都搬内存里面。。。

1、请打开易语言。

2、为了完成可以查找的功能,我们肯定要在记录数据的时候保存区别的数据,比如说 ID 名字。主要都是这些来区分的。当然你要是根据条件查找也没关系。

3、查找命令书写是  查找(读("名字")=“百度”)这句代码的意思是:读(“名字”)  这个是读取当前记录指针,如果你没有指定过指定肯定是第一个。读取第一条记录名字里面的数据。

4、查找(读("名字")=“百度”)通过上面大概你也明白了 查找命令就是循环 读("名字")。不管多少次只为找到后面的条件  数据=“百度”。如果查找到了就返回 真,并且把知道的记录位置保存到记录指针里面。

5、如果你是在循环里面查找,推荐你在循环里面增加一个  到首记录()。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6667893.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存