数据库静态数据
① 动态数据库的什么是静态数据库
在静态库情况下,函数和数据被编译进一个二进制文件(通常扩展名为回*.LIB),Visual
C++的编译器在处答理程序代码时将从静态库中恢复这些函数和数据并把他们和应用程序中的其他模块组合在一起生成可执行文件。这个过程称为静态链接,此时因为应用程序所需的全部内容都是从库中复制了出来,所以静态库本身并不需要与可执行文件一起发行。
静态连接库是一种用户模块它提供了函数的完整的目标代码(在静态库*.lib中)如果程序调用中的静态连接库的函数,则在进行连接时连接程序将中所包含的该函数的代码复制到运行文件中.
动态连接库也包含了其所提供的函数的目标代码,但是在程序连接动态连接库中的函数时,连接程序并不拦包含在动态连接库中的函数的目标代码复制到运行文件而只是简单记录了函数的位置信息。
有了这些信息程序在执行时就可找到目标代码!
② 什么是静态数据,什么是动态数据
动态数据是指在系统应用中随时间变化而改变的数据,如库存数据等。动态数据的准备和系统切换的时间有直接关系。
动态数据是常常变化,直接反映事务过程的数据,比如,网站访问量、在线人数、日销售额等等。
静态数据是指在运行过程中主要作为控制或参考用的数据,它们在很长的一段时间内不会变化,一般不随运行而变。动态数据包括所有在运行中发生变化的数据以及在运行中需要输入、输出的数据及在连机操作中要改变的数据。
(2)数据库静态数据扩展阅读
内部生成数据,指向用户或调试人员提供的内部生成数据。数据约定说明对数据要求的制约,应列出对进一步扩充或使用方面的考虑而提出的对数据要求的限制(容量、文件、记录、临界性和数据元素最大值)。
在计算机系统中,各种字母、数字符号的组合、语音、图形、图像等统称为数据,数据经过加工后就成为信息。
在计算机科学中,数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称,是用于输入电子计算机进行处理,具有一定意义的数字、字母、符号和模拟量等的通称。是组成地理信息系统的最基本要素,种类很多。
参考资料来源:网络-静态数据
参考资料来源:网络-动态数据
③ 数据库读取类是静态方法好还是实例化好
页面静态化 + ajax + 缓存复 + 数据库制连接池.
常更新的数据可以使用异步方式从缓存获取, 根据业务需求设定缓存策略. 数据库连接池应该是必须要有的吧.
如果跳出开发的角度, 从运维的角度来看, 可选的技术会更多, 例如反向代理, 负载均衡, 数据库优化等等.
额.自说自话了,
"网站静态化和动态数据库查询的问题,就是使用数据库连接池技术好还是使用页面静态化好",
这两种技术不冲突, "静态化"属于内容缓存范畴,对数据库性能没有直接影响(如果你的页面数据没有直接从数据库获取). 而"连接池"属于数据库优化方面的. 对"数据库并发"有直接的而且较大的影响.
④ 如何维护数据库中的静态表
我认为在任何应用程序、系统的数据库中或多或少都会有一些静态表用来存放系统中一些默认的值,比如说界面上的一些field信息、一些数据模板、界面上的选项设置等等。我们不可能把这些东西都hard code到代码中去,所以必然需要这些静态的数据表来存放这些信息。可能你会觉得手动去维护这些静态表就挺好,但是我认为在任何情况下我们都不应该手动的去修改数据库中的数据,这样可能会导致脏数据或者其他未知问题。设想一下,如果你的系统有开发和测试两个数据库,又同时需要支持SQL-SERVER和ORACLE两种数据库,那么你就需要维护四个数据库,当数据库数量增加手动维护明显是不可能的一件事情。
我认为可以通过将静态数据表中的数据保存在一些文件中,然后通过一些工具将这些文件导入到各个数据库中,同时还可以将这些文件放在版本控制库里,这样就可以追踪到每一个对静态表的修改。我设想了一下这个简单的模型。
如上图所示,更新工具去读配置文件,然后根据配置文件将静态表文件中的数据更新到指定的一些数据库中去。静态表文件中包含了静态表的一些基本数据,数据库配置包含了一些数据库的链接信息。而配置文件则是关键,它包含了一些静态表文件和数据库配置文件,同时也应该包含静态表文件与数据库中表的映射关系。
我觉得通过这种方式可以比较好的控制数据库中静态表,如果是应用程序,在部署的时候只要配置一些数据库和数据库文件,应该就能很快的将静态数据导入数据库表。
⑤ 如何维护数据库中的静态表麻烦告诉我
我们不可能把这些东西都hard code到代码中去,所以必然需要这些静态的数据表来存放这些信息。可能你会觉得手动去维护这些静态表就挺好,但是我认为在任何情况下我们都不应该手动的去修改数据库中的数据,这样可能会导致脏数据或者其他未知问题。设想一下,如果你的系统有开发和测试两个数据库,又同时需要支持SQL-SERVER和ORACLE两种数据库,那么你就需要维护四个数据库,当数据库数量增加手动维护明显是不可能的一件事情。
我认为可以通过将静态数据表中的数据保存在一些文件中,然后通过一些工具将这些文件导入到各个数据库中,同时还可以将这些文件放在版本控制库里,这样就可以追踪到每一个对静态表的修改。我设想了一下这个简单的模型。
如上图所示,更新工具去读配置文件,然后根据配置文件将静态表文件中的数据更新到指定的一些数据库中去。静态表文件中包含了静态表的一些基本数据,数据库配置包含了一些数据库的链接信息。而配置文件则是关键,它包含了一些静态表文件和数据库配置文件,同时也应该包含静态表文件与数据库中表的映射关系。
⑥ 静态的SQL 和动态的SQL有什么区别
表 1. 静态 SQL 和动态 SQL 的比较
静态 SQL
动态 SQL
SQL 语句直接嵌入到宿主编程语言,程序需要预编译处理这些嵌入的 SQL 语句
SQL 语句一般作为宿主语言的变量出现。嵌入式动态 SQL 应用需要预编译,非嵌入式 SQL 应用则无需预编译
SQL 语句在程序被编译时已知,涉及的数据库对象已存在
SQL 语句在程序被编译时未知,涉及的数据库对象可以是运行时才创建的
SQL 语句在程序运行前被编译
SQL 语句在程序运行时被编译
SQL 语句的编译结果在 DB2 的目录 (catalog) 中持久化保存
SQL 语句的编译结果缓存在数据库的内存里
运行时仅读取目录 (catalog)
运行时编译 SQL 语句需对目录 (catalog) 加锁
SQL 语句的优化是根据编译时的数据库统计信息进行的,不能完全反映运行时的情况
SQL 语句的优化是根运行时的数据库统计信息进行的
对 SQL 语句所访问的数据对象的权限检查是在绑定时进行的
对 SQL 语句所访问的数据对象的权限检查是在运行时进行的
权限控制的粒度是包(package,一组 SQL 语句的编译结果),用户仅需要访问包的权限
权限控制的粒度是 SQL 语句,用户需要具有访问 SQL 语句中每个数据对象的权限
如果 SQL 语句中的对象被修改,如 DDL 执行,整个包都需要重新绑定
当 SQL 语句中的对象被修改时,仅执行过的语句在下次运行时需要重新编译
⑦ 如何在静态网页中添加数据库
静态网页加入数据连接,等于直接把数据库连接信息暴露了,需要用 ajax json 异步抛送表单,然后等待返回,因为静态网页并没有服务器端的程序在执行; 仅仅是HTML源代码在客户端执行;若能够使用数据库的话, 岂不是能够对客户端计算机的数据库进行修改了吗。
⑧ 从数据库读取的数据,怎样才能生成静态页面
1. 设定要生成静态页面的模板页,页内包含需要替换的标签--自己定义好即可,方便维护。如文件为static.htm,标签为#title# 表示标题 #content# 表示内容 #creator# 创建人 #createdate# 创建日期2. 从数据库中读取数据,替换模板页的标签,生成文件。如下string filePath = Server.Mappath("/")+\\article\\; string tmpTemplate = ""; FileInfo fi=new FileInfo(Server.Mappath("/")+"static.htm") System.IO.StreamReader sr= fi.OpenText();
tmpTemplate = sr.ReadToEnd(); /* 读取模板文件到字符串变量*/
sr.Close(); string articleContent=""; sql = "select id,title,content,creator,createdate from table1" DataView objDv = SqlHelper.QueryView(sql) /*可参考微软的SqlHelper*/ for(int i=0;i<objDv.Count;i++) { articleContent=""; /* 替换所有标签*/ articleContent = tmpTemplate.Replace("#title#",objDv[i]["title"].ToString()); .............. //写入文件 StreamWriter sw = new System.IO.StreamWriter(filePath+objDv[i]["id"].ToString()+".htm");
sw.Write();
sw.Flush();
sw.Close(); }StreamWriter sw = new
⑨ 什么叫动态数据库,什么叫静态数据库
动态数据库是一个能够被应用程序和其它的DLL调用的过程和函数的集合体,它里面包含的是公共代码或资源。动态数据库提供了一种方法,使进程可以调用不属于其可执行代码的函数。
静态数据
库是一种用户模块。它提供了函数的完整的目标代码。在静态库情况下,函数和数据被编译进一个二进制文件,Visual
C++的编译器在处理程序代码时,将从静态库中恢复这些函数和数据并把他们和应用程序中的其他模块组合在一起生成可执行文件。
(9)数据库静态数据扩展阅读:
动态装入动态数据库,要用到Windows的三个API函数,即Loadlibrary、Freelibrary和GetprocAddress函数。
1、Loadlibrary函数调用格式为:function
loadlobrary
(DdfileName:Pchar):
THandle:。
2、、当不再需要一个动态数据库时,应调用FreeLibrary函数将其释放。
FreeLibrary函数调用格式:procere
FreeLibrary
(Libmole:THandle)。
3、用GetprocAddress函数把动态数据库中函数的地址传递给程序中某个函数变量,再用该变量实现动态数据库函数的调用。
GetprocAddress函数格式:function
GetprocAddress
(Libmole:THandle:procname:pchar):TFarProc:。
参考资料来源:网络-动态数据库
⑩ 什么是对数据库系统的静态动态的描述
【 数据结构】是对数据系统的静态物性的描述,【数据操作 】是以数据库系统的动态特性的描述。