--表结构发生过变化?
--try
exec sp_refreshview 'vi_test'
用
exec sp_refreshview 'vi_test'
命令刷新
或者
alter
修改视图
⑵ SQL SERVER中如何进行缓存设置
可以不要设置,如果不设置的话,SQL SERVER会动态调整使用的内存。
⑶ mysql中视图功能会节省SQL解析时间吗
视图功能,只是把多个表,按照自已的需求,东一块西一块,逻辑拼在一起,形成一个逻辑表。
调用的时候直接操作这个逻辑表视图就可以了,其它分析解释的操作就交给mysql引擎去处理,最终查询还是要经原来的物理表的。
用视图是不会节省sql执行时间的,反而会增加解析时间,减少效率的。
⑷ navicate执行sql后会有缓存
有缓存的。
在使用数据库的时候,我们可能需要导入创建表的SQL文件执行,执行之后是有缓存的。打开电脑上的Navicat,点击左侧的连接,在下拉选项中选择你是用的数据库,然后相应的信息,例如用户名,用户密码,连接名,创建就完成了。
⑸ sql配置缓存大小原因
数据缓存和执行缓存的控制。
SQLServer占用的内存主要由三部分组成:数据缓存(DataBuffer)、执行缓存(ProcereCache)、以及SQLServer引擎程序。SQLServer引擎程序所占用缓存一般相对变化不大,则我们进行内存调优的主要着眼点在数据缓存和执行缓存的控制上。
SQL语句在执行前首先将被编译并通过查询优化引擎进行优化,从而得到优化后的执行计划,然后按照执行计划被执行。对于整体相似、仅仅是参数不同的SQL语句,SQLServer可以重用执行计划。但对于不同的SQL语句,SQLServer并不能重复使用以前的执行计划,而是需要重新编译出一个新的执行计划。同时,SQLServer在内存足够使用的情况下,此时并不主动清除以前保存的查询计划。这样,不同的SQL语句执行方式,就将会大大影响SQLServer中存储的查询计划数目。如果限定了SQLServer最大可用内存,则过多无用的执行计划占用,将导致SQLServer可用内存减少,从而在执行查询时尤其是大的查询时与磁盘发生更多的内存页交换。如果没有限定最大可用内存,则SQLServer由于可用内存减少,从而会占用更多内存。
⑹ sql中用临时表 或 创建视图那个效率比较快!
1,存在方式:
临时存在于
服务器内存中
视图
无存在形式
2,
生命周期:
临时表
Sql服务关闭就消失
视图
你不删它就不会消失
3,用途
临时表
经常作为
中间转接层
视图
作为物理表的窗口
4,效率
临时表因为在缓存中,所以执行效率比较高
视图
效率一般,但是节省I/O操作,节约资源
5,在存储过程使用时:
临时表,效率很高{可能是数据量少,再加上临时表是在缓存中,所以执行效率高}
视图
一般
⑺ 如何清除SQL SERVER缓存和释放内存
1.打开Sql
Server
Management(企业管理器);2.打开Sql
Server实例的属性面板;3.找到内存设置,改变其中的最大服务器内存使用即可
。
⑻ SQL 创建的视图会存放到硬盘上吗
对是保存在数据库中,视图是一张虚拟表,保存在数据库中的是SQL语句
应该在.mdf文件中
⑼ navicate执行sql后会有缓存
有缓存的。
在navicate使用SQL文件执行,执行之后是有缓存的。默认情况下,SQL会动态增长,并缩小其缓存的大小,具体取决于操作系统报告的物理内存负载。
⑽ 如何使用脚本清楚Sql Server 2005 的缓存
sp_recompile [ @objname = ] 'object'
参数
[@objname =] 'object' 是当前数据库中的存储过程、触发器、表或视图的限定的或非限定的名称。object 是 nvarchar(776) 类型,无默认值。如果 object 是存储过程或触发器的名称,那么该存储过程或触发器将在下次运行时重新编译。如果 object 是表或视图的名称,那么所有引用该表或视图的存储过程都将在下次运行时重新编译。