‘壹’ sap中用来跳转到维护数据库表的函数是么
CALL FUNCTION 'RS_TABLE_LIST_CREATE'
EXPORTING
TABLE_NAME = '需要丛衡尘维护拦基的数据库表名'
ACTION = 'U'
是不是这个啊渗禅 sm30也可以~
‘贰’ 建立和维护数据库数据库表属于
建立和维护举激数据库数据库表属于数据定义功能。
数据定义:建立数据库袭余和定义表的结构。数据操作:插入、更新、删除、复制和查询数据等。数据库运行管理:并发控制、完整性控制、安全性控制正禅袜等。数据库维护:自动维护系统目录、备份与恢复等可靠性保障。
‘叁’ 系统维护与更新
(一)数据备份
为了能在系统出错后重建数据库,对系统上所有文件周期性地做备份是十分重要的。数据可能受到各种外来因素的影响而破坏其完整性甚至崩溃,这时利用数据库的备份来进行恢复就显得尤为重要。一般采用硬件防护、定期热备份、异地备份3种方式来确保数据备份的安全性。
(1)硬件防护
数据库是一个系统的核心,为了保证系统运行的高效性和可靠性,从硬件的角度必须选择性能优越、稳定可靠的服务器,如采用HP ML530G2服务器,对服务器的硬盘通过RAID5技术,把3块硬盘做成一块逻辑硬盘,以提高当硬盘硬件出现故障时数据的安全性。
(2)定期热备份
系统可基于sql Server 2000中的备份和还原组件实现整个数据库周期性地备份与还原,可以将数据库转换成MDF格式的数据,而且该格式可以方便快捷地倒回到原来的系统中。真正做到系统能在数据损坏、丢失等情况下将备份倒回,实现数据恢复。
另外,做好异地备份。
(二)系统完善
当软件开发完成并进入运行维护阶段,在该阶段软件完善主要考虑以下几个方面。
(1)改正性维护
其目的是为了纠正运行阶段发现的软件性能上的缺陷、排除应用中的误用以及软件操作习惯。把“BUG”减少到最少的程度,保证系统长期正常运转。
(2)适应性维护
随着计算机技术的发展,当软件的外部环境或者数据环境发生变化时,用户往往会对软件提出新的功能和性能需求,为了满足这些需求,需要修改或再开发软件。
(3)预防性维护
预防性维护的目的是为了提高软件的可维护性和可靠性等,在发生意外的软、硬件故障等情况下,能够很好地处理并给出错误报告,并且能够得到及时恢复,减少不必要的损失。
(三)数据更新
浙江省农业地质环境数据库的数据更新是一个难题。农业地质环境调查是一项长期公益性工作,需要对农业地质环境进行定期监测和分析,土壤、地下水、农产品监测数据及相关地图数据均要求导入到AGEIS系统数据库中,因此作为浙江省农业地质环境数据管理平台,需要提供能实现数据更新的接口。数据更新主要包括图形数据、属性数据、调查数据的更新3部分。浙江省农业地质环境信息系统是以数据管理和应用为目的,图层数据的更新功能相对薄弱,如果要复杂的编辑还需第三方软件进行辅助解决。本次仅强调属性数据和调查数据的更新。
属性数据的更新有2种情况,数据库字段的变更和数据库属性内容的变更。对于数据库字段的变更,可以直接更改数据库结构,在保证关键字段不变的前提下,任何的改变都不影响系统的正常运行。数据库内容的变化,相对而言比较简单,直接修改字段内容。
调查数据(包括定期监测数据)的更新包括添加、修改及删除等。根据项目的特点,调查数据一般以点的形式存在,系统提供了2种方式实现调查数据的更新,一是将调查数据表转换成空间数据图层,但数据调查表的格式应按《浙江省农业地质环境数据库图层及属性文件格式要求》中相关要求进行编制,系统可以直接读取Access格式的数据;另一种就是借用第三方软件,将数据表转换成以度为单位的ShapeFiles文件格式(也可为Arc/Info或DXF格式),通过系统维护子系统的数据导入功能即可。
‘肆’ 如何维护数据库中的静态表
我认为在任何应用程序、系统的数据库中或多或少都会有一些静态表用来存放系统中一些默认的值,比如说界面上的一些field信息、一些数据模板、界面上的选项设置等等。我们不可能把这些东西都hard code到代码中去,所以必然需要这些静态的数据表来存放这些信息。可能你会觉得手动去维护这些静态表就挺好,但是我认为在任何情况下我们都不应该手动的去修改数据库中的数据,这样可能会导致脏数据或者其他未知问题。设想一下,如果你的系统有开发和测试两个数据库,又同时需要支持SQL-SERVER和ORACLE两种数据库,那么你就需要维护四个数据库,当数据库数量增加手动维护明显是不可能的一件事情。
我认为可以通过将静态数据表中的数据保存在一些文件中,然后通过一些工具将这些文件导入到各个数据库中,同时还可以将这些文件放在版本控制库里,这样就可以追踪到每一个对静态表的修改。我设想了一下这个简单的模型。
如上图所示,更新工具去读配置文件,然后根据配置文件将静态表文件中的数据更新到指定的一些数据库中去。静态表文件中包含了静态表的一些基本数据,数据库配置包含了一些数据库的链接信息。而配置文件则是关键,它包含了一些静态表文件和数据库配置文件,同时也应该包含静态表文件与数据库中表的映射关系。
我觉得通过这种方式可以比较好的控制数据库中静态表,如果是应用程序,在部署的时候只要配置一些数据库和数据库文件,应该就能很快的将静态数据导入数据库表。
‘伍’ 我想学习sql server2000,从基础开始到设计数据库表 备份与还原 维护
弄本邹建的书看看吧
非常实用的书
书上的例子自己练习下,sql就熟悉了
‘陆’ 如何实现多人共同维护同一个数据表格
比如在crm系统中:【客户】和【订单】两个模块之间,每个订单都会对应到一个客户,所以在我们创建一个【订单】的时候通常也需要体现出【客户】中的部分信息(如联系方式、地址等),这样就会产生重复信息的录入,而且还可能因为个人马虎而录错信息。这种情况我们就可以通态搏隐过设置,将【订单】中和客户信息直接从【客户】模块中同步过来,既免除了信息的重复录入,又能保证信息的准确性。
设置方法
信息同步的设置我们需要能过工作帆厅流来实现,在上述需求当中,【订单】是隶属于【客户】的,所以我们需要对【订单】模块设置工银举作流,具体如下图所示
条件设置
下图中,工作流的运行时间我们选用“第次保存记录时”,这代表我们每次编辑并保存记录的时候都会触发工作流; 工作流的执行条件我们设置为用于关联【客户】的隶属于字段“客户模块”不为空的时候执行该工作流;
任务设置
下图中,我们将【订单模块】中需要从【客户模块】同步的字段添加进来
工作流设置完成后,当我们创建一个【订单】的时候,只需要选择关联某个客户,其他与客户相关的信息则不需要填写,保存以后便会自动生成,如下图
‘柒’ 怎么维护数据库 防止核心存储过程被篡改
解决方法:可以在表中加一个MD5的字段,这个字段的值是表中几个主要字段+随机数组合起来通过MD5加密的方式加密后的字符串,获取数据时校验MD5的值是否一致,如果不一致则表示数据被非法篡改了,反之则数据正常。同时修改数据的时候需要更新MD5的值。
‘捌’ sqlserver怎么用sql查看具体那个表被锁住了
查看被锁表:
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName
from sys.dm_tran_locks where resource_type='OBJECT'
--spid 锁表进程
--tableName 被锁表名
解锁:
declare @spid int
Set @spid = 57 --锁表进程
declare @sql varchar(1000)
set @sql='kill '+cast(@spid as varchar)
exec(@sql)
--查询出死锁的SPID
select blocked
from (select * from sysprocesses where blocked>0 ) a
where not exists(select * from (select * from sysprocesses where blocked>0 ) b
where a.blocked=spid)
--输出引起死锁的操作
DBCC INPUTBUFFER (@spid)
--查询当前进程数
select count(-1) from sysprocesses
where dbid in (select dbid from sysdatabases where name like '%telcount%');
‘玖’ 如何处理mysql中表损坏问题
5.9.4. 表维护和崩溃恢复
后面几节讨论如何使用myisamchk来检查或维护MyISAM表(对应.MYI和.MYD文件的表)。
你可以使用myisamchk实用程序来获得有关你的数据库表的信息或检查、修复、优化他们。下列小节描述如何调用myisamchk(包括它的选项的描述),如何建立表的维护计划,以及如何使用myisamchk执行各种功能。
尽管用myisamchk修复表很安全,在修复(或任何可以大量更改表的维护操作)之前先进行备份也是很好的习惯
影响索引的myisamchk操作会使ULLTEXT索引用full-text参数重建,不再与MySQL服务器使用的值兼容。要想避免,请阅读5.9.5.1节,“用于myisamchk的一般选项”的说明。
在许多情况下,你会发现使用SQL语句实现MyISAM表的维护比执行myisamchk操作要容易地多:
· 要想检查或维护MyISAM表,使用CHECK TABLE或REPAIR TABLE。
· 要想优化MyISAM表,使用OPTIMIZE TABLE。
· 要想分析MyISAM表,使用ANALYZE TABLE。
可以直接这些语句,或使用mysqlcheck客户端程序,可以提供命令行接口。
这些语句比myisamchk有利的地方是服务器可以做任何工作。使用myisamchk,你必须确保服务器在同一时间不使用表。否则,myisamchk和服务器之间会出现不期望的相互干涉。
5.9.5. myisamchk:MyISAM表维护实用工具
5.9.5.1. 用于myisamchk的一般选项
5.9.5.2. 用于myisamchk的检查选项
5.9.5.3. myisamchk的修复选项
5.9.5.4. 用于myisamchk的其它选项
5.9.5.5. myisamchk内存使用
5.9.5.6. 将myisamchk用于崩溃恢复
5.9.5.7. 如何检查MyISAM表的错误
5.9.5.8. 如何修复表
5.9.5.9. 表优化
可以使运孝悄用myisamchk实用程序来获得有关数据库表的信息或检查、修复、优化他们。myisamchk适用MyISAM表(对应.MYI和.MYD文件的表)。
调用myisamchk的方法:
shell> myisamchk [options] tbl_name ...
options指定你想让myisamchk做什么。在后面描述它们。还可以通过调用myisamchk --help得到选项列表。
tbl_name是你想要检旁渣查或修复的数据库表。如果你不在数据库目录的某处运行myisamchk,你必须指定数据库目录的路径,因为myisamchk不知道你的数据库位于哪儿。实际上,myisamchk不在乎你正在操作的文件是否位于一个数据库目录;你可以将对应于数据库表的文件拷贝到别处并且在那里执行恢复操作。
如果你愿意,可以用myisamchk命令行命名几个表。还可以通过命名索引文件(用“ .MYI”后缀)来指定一个表。它允许你通过使用模式“*.MYI”指定在一个目录所有的表。例如,如果你在数据库目录,可以这样在目录下检查所有的MyISAM表:
shell> myisamchk *.MYI
如果你不在数据库目录下,可通过指定到目录的路径检查所有在那里的表:
shell> myisamchk /path/to/database_dir/*.MYI
你甚至可以通过为MySQL数据目录的路径指定一个通配符来检查所有的数据库中的所有表:
shell> myisamchk /path/to/datadir/*/*.MYI
推荐的快速检查所有MyISAM表的方式是:
shell> myisamchk --silent --fast /path/to/datadir/*/*.MYI
如果你想要检查所有MyISAM表并修复任何破坏的慎丛表,可以使用下面的命令:
shell> myisamchk --silent --force --fast --update-state \
-O key_buffer=64M -O sort_buffer=64M \
-O read_buffer=1M -O write_buffer=1M \
/path/to/datadir/*/*.MYI
该命令假定你有大于64MB的自由内存。关于用myisamchk分配内存的详细信息,参见5.9.5.5节,“myisamchk内存使用”。
当你运行myisamchk时,必须确保其它程序不使用表。否则,当你运行myisamchk时,会显示下面的错误消息:
warning: clients are using or haven't closed the table properly
这说明你正尝试检查正被另一个还没有关闭文件或已经终止而没有正确地关闭文件的程序(例如mysqld服务器)更新的表。
如果mysqld正在运行,你必须通过FLUSH TABLES强制清空仍然在内存中的任何表修改。当你运行myisamchk时,必须确保其它程序不使用表。避免该问题的最容易的方法是使用CHECK TABLE而不用myisamchk来检查表。
5.9.5.1. 用于myisamchk的一般选项
本节描述的选项可以用于用myisamchk执行的任何类型的表维护操作。本节后面的章节中描述的选项只适合具体操作,例如检查或修复表。
· --help,-?
显示帮助消息并退出。
· --debug=debug_options, -# debug_options
输出调试记录文件。debug_options字符串经常是'd:t:o,filename'。
· --silent,-s
沉默模式。仅当发生错误时写输出。你能使用-s两次(-ss)使myisamchk沉默。
· --verbose,-v
冗长模式。打印更多的信息。这能与-d和-e一起使用。为了更冗长,使用-v多次(-vv, -vvv)!
· --version, -V
显示版本信息并退出。
· --wait, -w
如果表被锁定,不是提示错误终止,而是在继续前等待到表被解锁。请注意如果用--skip-external-locking选项运行mysqld,只能用另一个myisamchk命令锁定表。
还可以通过--var_name=value选项设置下面的变量:
变量
默认值
decode_bits
9
ft_max_word_len
取决于版本
ft_min_word_len
4
ft_stopword_file
内建列表
key_buffer_size
523264
myisam_block_size
1024
read_buffer_size
262136
sort_buffer_size
2097144
sort_key_blocks
16
stats_method
nulls_unequal
write_buffer_size
262136
可以用myisamchk --help检查myisamchk变量及其 默认值:
当用排序键值修复键值时使用sort_buffer_size,使用--recover时这是很普通的情况。
当用--extend-check检查表或通过一行一行地将键值插入表中(如同普通插入)来修改键值时使用Key_buffer_size。在以下情况通过键值缓冲区进行修复:
· 使用--safe-recover。
· 当直接创建键值文件时,需要对键值排序的临时文件有两倍大。通常是当CHAR、VARCHAR、或TEXT列的键值较大的情况,因为排序操作在处理过程中需要保存全部键值。如果你有大量临时空间,可以通过排序强制使用myisamchk来修复,可以使用--sort-recover选项。
通过键值缓冲区的修复占用的硬盘空间比使用排序么少,但是要慢。
如果想要快速修复,将key_buffer_size和sort_buffer_size变量设置到大约可用内存的25%。可以将两个变量设置为较大的值,因为一个时间只使用一个变量。
myisam_block_size是用于索引块的内存大小。
stats_method影响当给定--analyze选项时,如何为索引统计搜集处理NULL值。它如同myisam_stats_method系统变量。详细信息参见5.3.3节,“服务器系统变量”和7.4.7节,“MyISAM索引统计集合”的myisam_stats_method的描述。
ft_min_word_len和ft_max_word_len表示FULLTEXT索引的最小和最大字长。ft_stopword_file为停止字文件的文件名。需要在以下环境中对其进行设置。
如果你使用myisamchk来修改表索引(例如修复或分析),使用最小和最大字长和停止字文件的 默认全文参数值(除非你另外指定)重建FULLTEXT索引。这样会导致查询失败。
出现这些问题是因为只有服务器知道这些参数。它们没有保存在MyISAM索引文件中。如果你修改了服务器中的最小或最大字长或停止字文件,要避免该问题,为用于mysqld的myisamchk指定相同的ft_min_word_len,ft_max_word_len和ft_stopword_file值。例如,如果你将最小字长设置为3,可以这样使用myisamchk来修复表:
shell> myisamchk --recover --ft_min_word_len=3 tbl_name.MYI
要想确保myisamchk和服务器使用相同的全文