仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 830|回复: 7
打印 上一主题 下一主题

[学习教程] MSSQL网页编程之紧缩数据库

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:18:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Memory所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。但是会占用和数据量成正比的内存空间。并且其内容会在Mysql重新启动时丢失数据库在利用一段工夫后,经常会呈现因数据删除而形成数据库中余暇空间太多的情形,这时候就必要削减分派给数据库文件和事件日记文件的磁盘空间,以避免华侈磁盘空间。当数据库中没无数据时,能够修正数据库文件属性间接改动其占用空间,但当数据库中无数据时,如许做会损坏数据库中的数据,因而必要利用紧缩的体例来缩减数据库空间。能够在数据库属性选项当选择“Autoshrink”选项,让体系主动紧缩数据库,也能够用野生的办法来紧缩。野生紧缩数据库有以下两种体例:

1、用EnterpriseManager紧缩数据库
在EnterpriseManager中在所要紧缩的数据库上单击右键,从快速菜单中的“一切义务(AllTasks)”当选择“ShrinkDatabase(紧缩数据库)”选项,就会呈现如-10所示的对话框。能够在-10所示的对话框当选择数据库的紧缩体例,也能够选择利用紧缩企图或紧缩单个文件。

单击-10中的“Files”按钮,会呈现如-11所示的紧缩数据库文件对话框,能够针对每一个数据库文件举行分歧的紧缩设置。


单击-10中的“Change”按钮,会呈现如-12所示的紧缩企图编纂对话框,能够指定紧缩企图的实行体例。单击-12中的“Change”按钮,会呈现如-13所示的轮回事情企图编纂对话框,能够编纂企图实行的周期或工夫点。设置完成后单击“OK”按钮就入手下手紧缩数据库,在紧缩停止后会显现一个紧缩情形信息框。



2、用Transact-SQL命令紧缩数据库
可使用DBCCSHRINKDATABASE和DBCCSHRINKFILE命令来紧缩数据库。个中DBCCSHRINKDATABASE命令对数据库举行紧缩,DBCCSHRINKFILE命令对数据库中指定的文件举行紧缩。

(1)DBCCSHRINKDATABASE
DBCCSHRINKDATABASE命令语法以下:
DBCCSHRINKDATABASE(database_name[,target_percent]
[,{NOTRUNCATE|TRUNCATEONLY}])
各参数申明以下:<P>

  • target_percent指定将数据库紧缩后,未利用的空间占数据库巨细的百分之几。假如指定的百分比过年夜,凌驾了紧缩前未利用空间所占的比例,则数据库不会被紧缩。而且紧缩后的数据库不克不及比数据库初始设定的容量小。
  • NOTRUECATE
    将数据库缩减后残剩的空间保存在数据库,中不返还给操纵体系。假如不选择此选项,则残剩的空间返还给操纵体系。
  • TRUNCATEONLY
    将数据库缩减后残剩的空间返还给操纵体系。利用此命令时SQLServer将文件缩减到最初一个文件分派,地区但不挪动任何数据文件。选择此项后,target_percent选项就有效了。
    例6-14:紧缩数据库mytest的未利用空间为数据库巨细的20%。
    dbccshrinkdatabase(mytest,20)
    运转了局以下:
    DBCCexecutioncompleted.IfDBCCprintederrormessages,contactyoursystemadministrator.
(2)DBCCSHRINKFILE
DBCCSHRINKFILE命令紧缩以后数据库中的文件。其语法以下:
DBCCSHRINKFILE({file_name|file_id}
{[,target_size]|
[,{EMPTYFILE|NOTRUNCATE|TRUNCATEONLY}]})
各参数申明以下:
<P>

  • file_id
    指定要紧缩的文件的判别号(Identificationnumber,即ID)。文件的ID号能够经由过程FILE_ID()函数或如本章后面所报告的Sp_helpdb体系存储历程来失掉。
  • target_size
    指定文件紧缩后的巨细。以MB为单元。假如不指定此选项,SQLServer就会尽最年夜大概地缩减文件。
  • EMPTYFILE
    指明此文件不再利用,将挪动一切在此文件中的数据到统一文件组中的别的文件中往。实行带此参数的命令后,此文件就能够用ALTERDATABASE命令来删除。
    其他参数NOTRUNCATE和TRUNCATEONLY与DBCCSHRINKDATABASE命令中的寄义不异。
    例6-15:紧缩数据库mydb中的数据库文件mydb_data2的巨细到1MB。usemydbdbccshrinkfile(mydb_data2,1)


在JOIN操作中(需要从多个数据表提取数据时),MySQL只有在主键和外键的数据类型相同时才能使用索引。
admin 该用户已被删除
沙发
发表于 2015-1-19 08:04:05 | 只看该作者
having子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having条件显示特定的组,也可以使用多个分组标准进行分组。
海妖 该用户已被删除
板凳
发表于 2015-1-26 10:53:37 | 只看该作者
索引视图2k就有。但是2005对其效率作了一些改进但是schema.viewname的作用域真是太限制了它的应用面。还有一大堆的环境参数和种种限制都让人对它有点却步。
灵魂腐蚀 该用户已被删除
地板
发表于 2015-2-4 14:53:06 | 只看该作者
呵呵,这就是偶想说的
乐观 该用户已被删除
5#
发表于 2015-2-10 02:17:12 | 只看该作者
至于淘汰的问题,只能说在你的项目周期之内,微软应该都不会倒闭。
飘灵儿 该用户已被删除
6#
发表于 2015-2-28 15:27:12 | 只看该作者
如果我们从集合论(关系代数)的角度来看,一张数据库的表就是一组数据元的关系,而每个SQL语句会改变一种或数种关系,从而产生出新的数据元的关系(即产生新的表)。
第二个灵魂 该用户已被删除
7#
发表于 2015-3-10 01:25:42 | 只看该作者
代替了原来VB式的错误判断。比Oracle高级不少。
小魔女 该用户已被删除
8#
发表于 2015-3-23 19:04:05 | 只看该作者
连做梦都在想页面结构是怎么样的,绝非虚言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-6 21:55

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表