CN101609448A - 数据库主动扫描***及方法 - Google Patents
数据库主动扫描***及方法 Download PDFInfo
- Publication number
- CN101609448A CN101609448A CNA2008103022280A CN200810302228A CN101609448A CN 101609448 A CN101609448 A CN 101609448A CN A2008103022280 A CNA2008103022280 A CN A2008103022280A CN 200810302228 A CN200810302228 A CN 200810302228A CN 101609448 A CN101609448 A CN 101609448A
- Authority
- CN
- China
- Prior art keywords
- property value
- data
- database
- application system
- tables
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种数据库主动扫描方法,包括:获取数据库中所有数据表ID,并将所获取的ID存储于一种数据结构中;设置所述数据结构中每个ID的属性值,每个ID包括两种属性值:第一属性值和第二属性值,且所述ID的属性初始值为第二属性值;接收应用***所发送的数据库中被修改的数据表的ID;将所述数据结构中被修改的数据表的ID的属性由第二属性值改为第一属性值;所述应用***获取所述数据结构中所有属性为第一属性值的ID;将所述数据结构中所述属性为第一属性值的ID的属性重新设置为第二属性值;及所述应用***根据属性为第一属性值的ID获取数据库中所述ID所对应的数据表中的数据。另外,本发明还提供一种数据库主动扫描的计算机***。
Description
技术领域
本发明涉及一种数据库主动扫描***及方法。
背景技术
在办公自动化高速发展的今天,数据库***可以说是被应用最多的一种软件了。我们在工作与生活中所应用的***中几乎90%以上的***都可以被称之为数据库***。这些***不管是Web类型的还是桌面应用程序,它们都有个共同的特点:涉及数据库技术。
目前,Web***和应用***中对数据库访问的方法都是被动及全局访问的,即一旦有数据变更,数据库被动的接收到消息,然后对整个数据库进行全局的扫描找到被修改的数据,最后再将改变的数据呈现在客户端上,这样一来,即使客户端修改了很简单的一条数据,数据库都要对所有的数据进行扫描,这些数据中绝大多数是没有必要进行扫描的数据。每次数据库访问的时候,很大一部分资源及时间都浪费在对没有发生改变的数据的扫描上,而且过于频繁的访问数据库对数据库会造成很大的压力,有可能导致数据库的崩溃及数据的丢失。
发明内容
鉴于以上内容,有必要提供一种有效的数据库主动扫描的计算机***。
还有必要提供一种有效的数据库主动扫描方法。
所述数据库主动扫描的计算机***,所述计算机***包括:获取模块,用于获取数据库中所有数据表的ID,并将所获取的ID存储于一种数据结构中;设置模块,用于设置所述数据结构中每个ID的属性值,每个ID包括两种属性值:第一属性值和第二属性值,且所述ID的属性初始值为第二属性值,该设置模块,还用于将所述数据结构中被修改的数据表的ID的属性由第二属性值改为第一属性值;接收模块,用于当应用***修改数据库时,接收所述应用***所发送的数据库中被修改的数据表的ID;控制模块,用于控制所述应用***获取所述数据结构中所有属性为第一属性值的ID,还用于根据属性为第一属性值的ID,控制所述应用***获取数据库中所述ID所对应的数据表中的数据;及所述设置模块,还用于当所述应用***获取了所述数据结构中所有属性为第一属性值的ID后,将所述数据结构中所述属性为第一属性值的ID的属性重新设置为第二属性值。
所述数据库主动扫描方法,该方法包括如下步骤:获取数据库中所有数据表的ID,并将所获取的ID存储于一种数据结构中;设置所述数据结构中每个ID的属性值,每个ID包括两种属性值:第一属性值和第二属性值,且所述ID的属性初始值为第二属性值;接收应用***所发送的数据库中被修改的数据表的ID;将所述数据结构中被修改的数据表的ID的属性由第二属性值改为第一属性值;所述应用***获取所述数据结构中所有属性为第一属性值的ID;将所述数据结构中所述属性为第一属性值的ID的属性重新设置为第二属性值;及所述应用***根据属性为第一属性值的ID获取数据库中所述ID所对应的数据表中的数据。
相较于现有技术,所述数据库主动扫描***及方法,使得数据库能够主动观测及扫描,减少了对数据库的无效访问,减轻数据访问对数据库产生的负担,提高数据库访问的效率。
附图说明
图1是本发明数据库主动扫描的计算机***较佳实施例的硬件架构图。
图2是图1中计算机***1较佳实施例的功能模块图。
图3是本发明数据库主动扫描方法较佳实施例的作业流程图。
具体实施方式
如图1所示,是本发明数据库主动扫描的计算机***较佳实施例的硬件架构图。该计算机***1上运行了多个应用***2,所述应用***2连接一个数据库3,该数据库3可以在计算机内,也可以置于计算机之外。该数据库3用于存储所述应用***2的所有数据。所述应用***2还提供了一个用户界面,用于供用户查看数据库中数据及数据更新情况。所述数据库3中有多个数据表4,每个数据表4中有多条数据,每个数据表4对应一个ID。本实施例中,以一个应用***2为例进行说明本发明。该应用***2在对数据库3提出修改数据的命令时,同时发送数据库3被修改的通知给计算机***1。
如图2所示,是本发明数据库主动扫描的计算机***较佳实施例的功能模块图。该计算机***包括:获取模块10、设置模块12、接收模块14、控制模块16及显示模块18。
获取模块10用于获取数据库3中的所有数据表4的ID及获取所述应用***2所发送的数据库3被修改的通知,并将所获取的ID存储于一种数据结构中,该数据结构可以为二维数组、链表等。
设置模块12用于将所述数据结构中的每个ID设置两个属性值:change和original。属性值change表示该ID所对应的数据表4中的数据已经被修改,属性值original表示该ID所对应的数据表4中的数据没有被修改。所有数据表4的ID的属性初始值设置为original。该设置模块12还用于将所述数据结构中对应的被修改的数据表4的ID的属性由original改为change。
接收模块14用于接收应用***2所发送的数据库3中被修改的数据表4的ID。
控制模块16用于控制所述应用***2获取所述数据结构中所有属性为change的ID。该控制模块16还用于控制所述应用***2访问数据库3中的数据表,该数据表的ID为所获取的属性为change的ID,所述应用***2访问所述数据表,并获取该数据表中的所有数据。
所述设置模块12还用于当应用***2获取了数据结构中所有属性为change的ID后,将所述数据结构中属性为change的ID重新设置为original,便于下次访问数据结构时辨别修改的数据表的ID。
显示模块18用于于应用***2的界面上更新显示所述应用***2所获取的数据。
如图3所示,是本发明数据库主动扫描方法较佳实施例的作业流程图。
步骤S30,获取模块10获取数据库3中的所有数据表4的ID,并将所获取的ID存储于一种数据结构中,该数据结构可以为二维数组、链表等。
步骤S32,设置模块12将所述数据结构中的每个ID设置两个属性值:change和original。属性值change表示该ID所对应的数据表4中的数据已经被修改,属性值original表示该ID所对应的数据表4中的数据没有被修改。所有数据表4的ID的属性初始值设置为original。
步骤S34,当应用***2发出修改数据库3中数据的命令时,也同时向计算机***1发出数据库3被修改的通知,所述获取模块10获取数据库3被修改的通知。
步骤S36,接收模块14接收应用***2所发送的数据库3中被修改的数据表4的ID。
步骤S38,所述设置模块12将所述数据结构中对应的被修改的数据表4的ID的属性由original改为change。
步骤S40,控制模块16控制所述应用***2获取所述数据结构中所有属性为change的ID。
步骤S42,所述设置模块12在应用***2获取了数据结构中所有属性为change的ID后,将所述数据结构中属性为change的ID的属性重新设置为original,便于下次访问数据结构时辨别修改的数据表的ID。
步骤S44,所述应用***2访问数据库2中的数据表,该数据表的ID为所获取的属性为change的ID,所述应用***2访问所述数据表,并获取该数据表中的所有数据。
步骤S46,显示模块16于应用***2的界面上更新显示所获取的数据。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (8)
1.一种数据库主动扫描的计算机***,其特征在于,所述计算机***包括:
获取模块,用于获取数据库中所有数据表的ID,并将所获取的ID存储于一种数据结构中;
设置模块,用于设置所述数据结构中每个ID的属性值,每个ID包括两种属性值:第一属性值和第二属性值,且所述ID的属性初始值为第二属性值,该设置模块,还用于将所述数据结构中被修改的数据表的ID的属性由第二属性值改为第一属性值;
接收模块,用于当应用***修改数据库时,接收所述应用***所发送的数据库中被修改的数据表的ID;
控制模块,用于控制所述应用***获取所述数据结构中所有属性为第一属性值的ID,还用于根据属性为第一属性值的ID,控制所述应用***获取数据库中所述ID所对应的数据表中的数据;及
所述设置模块,还用于当所述应用***获取了所述数据结构中所有属性为第一属性值的ID后,将所述数据结构中所述属性为第一属性值的ID的属性重新设置为第二属性值。
2.如权利要求1所述的数据库主动扫描的计算机***,其特征在于,所述获取模块还用于当所述应用***发出修改数据库中数据的命令时,获取数据库被修改的通知。
3.如权利要求1所述的数据库主动扫描的计算机***,其特征在于,所述计算机***还包括:显示模块,用于于所述应用***的界面上更新显示所获取的数据。
4.如权利要求1所述的数据库主动扫描的计算机***,其特征在于,所述第一属性值为change,第二属性值为original。
5.一种数据库主动扫描方法,其特征在于,该方法包括如下步骤:
获取数据库中所有数据表的ID,并将所获取的ID存储于一种数据结构中;
设置所述数据结构中每个ID的属性值,每个ID包括两种属性值:第一属性值和第二属性值,且所述ID的属性初始值为第二属性值;
接收应用***所发送的数据库中被修改的数据表的ID;
将所述数据结构中被修改的数据表的ID的属性由第二属性值改为第一属性值;
所述应用***获取所述数据结构中所有属性为第一属性值的ID;
将所述数据结构中所述属性为第一属性值的ID的属性重新设置为第二属性值;及
所述应用***根据属性为第一属性值的ID获取数据库中所述ID所对应的数据表中的数据。
6.如权利要求5所述的数据库主动扫描方法,其特征在于,在所述步骤接收应用***所发送的数据库中被修改的数据表的ID之前还包括:
当所述应用***发出修改数据库中数据的命令时,获取数据库被修改的通知。
7.如权利要求5所述的数据库主动扫描方法,其特征在于,该方法还包括:于所述应用***的界面上更新显示该应用***所获取的数据。
8.如权利要求5所述的数据库主动扫描方法,其特征在于,所述第一属性值为change,第二属性值为original。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008103022280A CN101609448A (zh) | 2008-06-19 | 2008-06-19 | 数据库主动扫描***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008103022280A CN101609448A (zh) | 2008-06-19 | 2008-06-19 | 数据库主动扫描***及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101609448A true CN101609448A (zh) | 2009-12-23 |
Family
ID=41483205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008103022280A Pending CN101609448A (zh) | 2008-06-19 | 2008-06-19 | 数据库主动扫描***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101609448A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722512A (zh) * | 2011-12-30 | 2012-10-10 | 新奥特(北京)视频技术有限公司 | 一种数据库客户端远程维护展示数据库的方法 |
WO2015007125A1 (zh) * | 2013-07-15 | 2015-01-22 | 腾讯科技(深圳)有限公司 | 一种对存储器上的文件进行扫描的方法及装置 |
CN104536961A (zh) * | 2014-11-04 | 2015-04-22 | 深圳创维数字技术有限公司 | 一种本地媒体文件的扫描方法及*** |
-
2008
- 2008-06-19 CN CNA2008103022280A patent/CN101609448A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722512A (zh) * | 2011-12-30 | 2012-10-10 | 新奥特(北京)视频技术有限公司 | 一种数据库客户端远程维护展示数据库的方法 |
CN102722512B (zh) * | 2011-12-30 | 2018-03-16 | 新奥特(北京)视频技术有限公司 | 一种数据库客户端远程维护展示数据库的方法 |
WO2015007125A1 (zh) * | 2013-07-15 | 2015-01-22 | 腾讯科技(深圳)有限公司 | 一种对存储器上的文件进行扫描的方法及装置 |
CN104536961A (zh) * | 2014-11-04 | 2015-04-22 | 深圳创维数字技术有限公司 | 一种本地媒体文件的扫描方法及*** |
WO2016070534A1 (zh) * | 2014-11-04 | 2016-05-12 | 深圳创维数字技术有限公司 | 一种本地媒体文件的扫描方法及*** |
US10452609B2 (en) | 2014-11-04 | 2019-10-22 | Shenzhen Skyworth Digital Technology Co., Ltd | Method and system for scanning local media file |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10754869B2 (en) | Managing data format of data received from devices in an internet of things network | |
EP3333726A1 (en) | Distributed database processing method and device | |
CN103209223A (zh) | 分布式应用会话信息共享方法、***和应用服务器 | |
US10956667B2 (en) | Operational transformations proxy for thin clients | |
CN105681477B (zh) | 一种数据访问方法和一种服务器 | |
CN104166738A (zh) | 数据库查询处理的方法及装置 | |
CN102082800A (zh) | 一种用户请求处理的方法和服务器 | |
EP3376403A1 (en) | Method of accessing distributed database and device providing distributed data service | |
CN112764874B (zh) | 一种基于cmdb配置管理***的虚拟机服务器信息采集方法 | |
US20160259812A1 (en) | Method and system for accessing a distributed file system | |
CN111107022B (zh) | 数据传输优化方法、设备及可读存储介质 | |
US8723870B1 (en) | Selection of object types with data transferability | |
CN110740155A (zh) | 分布式***中的请求处理方法及装置 | |
CN102236707A (zh) | 获取数据库更新数据的方法、装置及*** | |
WO2020094064A1 (zh) | 性能优化方法、装置、设备及计算机可读存储介质 | |
CN108829422A (zh) | 一种动态部署方法及装置 | |
CN101609448A (zh) | 数据库主动扫描***及方法 | |
CN111176715B (zh) | 一种信息调用方法及服务器 | |
CN110661851A (zh) | 数据交换方法和装置 | |
CN107203437A (zh) | 防止内存数据丢失的方法、装置和*** | |
CN104268174A (zh) | 一种信息显示方法及客户端 | |
US20150019584A1 (en) | Self-learning java database connectivity (jdbc) driver | |
CN105099753A (zh) | 网络管理***及其处理业务的方法 | |
CN111124482B (zh) | 文案信息的配置方法和装置 | |
CN109254997B (zh) | 数据同步方法、***、计算机设备和可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20091223 |