作者归档:admin

视图的定义及其4个优点

视图的定义及其4个优点
【视图的定义】
视图是从一个或几个基本表(或视图)导出的表,它是一个虚表。数据库中存储了视图的定义,视图所显示的数据依然存放在原来的基本表中。
视图和基本表一样可以被查询、删除。在一个视力之上再定义新的视图,此时对视图的更新操作(增加,删除,修改)操作则有一定的限制

ps: 个人觉得视图是一个类似于窗口或接口性的东西

【简化用户操作】
视图可以将用户的注意力集中到所关心的数据上。可以通过定义视图让数据库看起来结构简单清晰,并且可以简化用户的查询操作

【聚集数据】
视图可以让不同的用户以不同的方式看待同一数据,特别是当许多不同的用户共享同一个数据库时

【一定程度的松耦合】
定义视图可以在一定程度上保持基本表的物理独立性,当修改数据的基本表时,只需要修改视图的定义而不用修改用户的应用程序;这里的不影响只是一定程度上的,当应用程序中有修改数据的操作时,则可能需要修改应用程序。这在一定程序让保证了数据的逻辑独立性。

【一定程序的安全保护】
由于视图的聚集数据的作用,对不同的人定义不同的视图,保证用户只能看到他可以看到的数据。也就是说,通过视图将要保密的数据对无权查看地的用户隐藏起来,从而在一定程度上对数据朝代安全保护。

第一次用zend framework遇到的一些问题

1、出现错误 Zend_Controller_Dispatcher_Exception: Invalid controller specified (error) in Standard.php on line 242
此时是应用程序出错,zend framework在默认情况下将错误指向error controller,而此时却没有创建此contraller,所以会出现此问题。
解决方案是在controller下面建立ErrorController.php 加errorAction事件;并在views/scripts建立文件夹error,建立error.phtml文件

2、在apache中使用别名浏览zend framework创建的项目时,可能存在路由不通的情况,
即文件夹的名字要与路径名字对应,如果你是http://localhost/zf/public/customers
这样的访问路径,则项目根目录应该是zf,index.php所在的目录是public

3、.htaccess文件无法生效,可能存在的问题:
apache的mod_rewrite没有开启,
或者.htaccess文件语法错误,比如说在[NC,L]这种格式中加一个空格,出现错误的单词;不过此种情况下会报错:Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.
或者,在apache的配置中 Options 没有设置为FollowSymLinks, AllowOverride 没有设置成All
或者,在apache的错误日志中显示 Invalid command ‘RewriteEngine’, perhaps misspelled or defined by a module not included in the server configuration
这个是没有开启mod_rewrite模块,加载rewrite模块,在httpd.conf文件里最后加上如下代码:
LoadModule rewrite_module modules/mod_rewrite.so
或者原本配置文件中的就有这行代码,只不过是注释了,也可以直接去掉LoadModule rewrite_module modules/mod_rewrite.so前的注释“#”

这些都是有可能出问题的。

4、权限问题
将zend framework的library放在没有权限的目录,比如说放在php.ini中的open_basedir以外的地方等等

5、出现404错误
可能是apache的DocumentRoot设置问题(如果是使用别名调试)

装window7后恢复ubuntu启动项的简单方法

装window7后恢复ubuntu启动项的简单方法
在之前的xp下安装的ubuntu,使用的是五笔安装
正版的window7出来后升级成window7
然后重装后启动项没有了,于是google一通,得到如下答案:
复制五笔安装的ubuntu安装目录下的ubuntu\winboot下面的wubildr.mbr和wubildr到启动盘根目录(我的是C盘)
在此目录下新建boot.ini文件,其内容如下:
[boot loader]
[operating systems]
c:\wubildr.mbr=”grub4dos”

重启机器,就可以看到grub4dos启动项了,正常进入,一切OK

资料参考地址:

http://forum.ubuntu.org.cn/viewtopic.php?f=139&p=1100714

6楼