回归

Shadow

  DonewsBlog  |  Donews首页  |  Donews社区  |  Donews邮箱  |  我的首页  |  联系作者  |  聚合   |  登录
  307篇文章 :: 0篇收藏:: 16篇评论:: 1个Trackbacks

文章

收藏

相册

论坛

软件

存档


正在读取评论……


4)Sql


    摘要:

declare my_cursor cursor scroll dynamic /*scroll表示可随意移动游标指针(否则只能向前),dynamic表示可以读写游标(否则游标只读)*/
for
select userid,com_sex from wj_user_move where com_reg_time<'2007-10-14 11:15:37'

open my_cursor
declare @userid sysname
declare @comsex sysname

fetch next from my_cursor into @userid,@comsex
while(@@fetch_status=0)
  begin
    print '姓名: ' + @userid
    update wj_user set 此处阅读全文



    摘要: 

游标使用方法:
use db1
declare my_cursor cursor scroll dynamic /*scroll表示可随意移动游标指针(否则只能向前),dynamic表示可以读写游标(否则游标只读)*/
for
select 姓名 from 个人资料

open my_cursor
declare @name sysname
fetch next from my_cursor into @name
while(@@fetch_status=0)
  begin
    print '姓名: ' + @name
    fetch next from my_cursor into @name
  end
fetch first fro    (全文共723字)——点击此处阅读全文



    摘要:

1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。

清除Log有两种方法:

  1.自动清除法

  开放数据库选项 Trunc Log on Chkpt,使数据库系统每隔一段时间自动清除Log。此方法的优点是无须人工干预,由SQL Server自动执行,并且一般不会出现Log溢满的情况;缺点是只清除Log而不做备份。

  2.手动清除法

  执行命令“dump transaction”来清除Log。以下两条命令都可以清除日志:

dump transaction with truncate_only
dump transaction with no_log     (全文共1001字)——点击此处阅读全文


事务日志文件Transaction Log File是用来记录数据库更新情况的文件,扩展名为ldf。
在 SQL Server 7.0 和 SQL Server 2000 中,如果设置了自动增长功能,事务日志文件将会自动扩展。
一般情况下,在能够容纳两次事务日志截断之间发生的最大数量的事务时,事务日志的大小是稳定的,事务日志截断由检查点或者事务日志备份触发。
然而,在某些情
事务日志文件Transaction Log File是用来记录数据库更新情况的文件,扩展名为ldf。
在 SQL Server 7.0 和 SQL Server 2000 中,如果设置了自动增长功能,事务日志文件将会自动扩展。
一般情况下,在能够容纳两次事务日志截断之间发生的最大数量的事务时,事务日志的大小是稳定的,事务日志截断由检查点或者事务日志备份触发。
然而,在某些情况下,事务日志可能会变得非常大,以致用尽空间或变满。通常,在事务日志文件占尽可用磁盘空间且不能再扩展时,您将收到如下错误消息:
Error:9002, Severity:17, State:2
The log file for database ’%.*ls’ is full.
除了出现此错误消息之外,SQL Server 还可能因为缺少事务日志扩展空间而将数据库标记为 SUSPECT。有关如何从此情形中恢复的其他信息,请参见 SQL Server 联机帮助中的“磁盘空间不足”主题。
另外,事务日志扩展可能导致下列情形:
· 非常大的事务日志文件。
· 事务可能会失败并可能开始回滚。
· 事务可能会用很长时间才能完成。
· 可能发生性能问题。
· 可能发生阻塞现象。
原因
事务日志扩展可能由于以下原因或情形而发生:
· 未提交的事务
· 非常大的事务
· 操作:DBCC DBREINDEX 和 CREATE INDEX
· 在从事务日志备份还原时
· 客户端应用程序不处理所有结果
· 查询在事务日志完成扩展之前超时,您收到假的“Log Full”错误消息
· 未复制的事务
解决方法
日志文件满而造成SQL数据库无法写入文件时,可用两种方法:
一种方法:清空日志。
1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。
1: 删除LOG
分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K。
注意:建议使用第一种方法。
如果以后,不想要它变大。
SQL2000下使用:
在数据库上点右键->属性->选项->故障恢复-模型-选择-简单模型。
或用SQL语句:
alter database 数据库名 set recovery simple

另外,如上图中数据库属性有两个选项,与事务日志的增长有关:
Truncate log on checkpoint
(此选项用于SQL7.0,SQL 2000中即故障恢复模型选择为简单模型)
当执行CHECKPOINT 命令时如果事务日志文件超过其大小的70% 则将其内容清除在开发数据库时时常将此选项设置为True
Auto shrink
定期对数据库进行检查当数据库文件或日志文件的未用空间超过其大小的25%时,系统将会自动缩减文件使其未用空间等于25% 当文件大小没有超过其建立时的初始大小时不会缩减文件缩减后的文件也必须大于或等于其初始大小对事务日志文件的缩减只有在对其作备份时或将Truncate log on checkpoint 选项设为True 时才能进行。

注意:一般立成建立的数据库默认属性已设好,但碰到意外情况使数据库属性被更改,请用户清空日志后,检查数据库的以上属性,以防事务日志再次充满。


    摘要:
在Windows2003中ASP上传的附件大小的限制为200K,所以经常会出现这样的错误提示:Request 对象 错误 'ASP 0104 : 80004005'。要解决这个问题,请按下面的方法进行:
  1、在Internet 信息服务(IIS)管理器中使所有的网站(包括FTP服务器)都停止运行;
  2、在开始->管理工具->服务,在服务里关闭iis admin service服务;
  3、找到windows\system32\inesrv\下的metabase.xml, 打开,找到ASPMaxRequestEntityAllowed 把它修改为你需要的值(以字节为单位)(默认为204800,即200K);
  4、在开始->管理工具->服务,然后重启iis admin service服务。
  这样就可以在ASP中上传大于200K的附件了
    (全文共475字)——点击此处阅读全文


    摘要:DECLARE @TABLENAME VARCHAR(100)
SELECT @TABLENAME='.......'  ---使其形如:AAAA20020812
--建表
exec('
CREATE TABLE '+ @tablename +' (
........)

')
--插入
EXEC ('
insert into '+ @tableName+'
     select * from S_tableName
')

再把上面代码保存为存储过程,定期用JOB运行它就 OK了。    (全文共326字)——点击此处阅读全文


    摘要:SQL语法查询文档    (全文共7680字)——点击此处阅读全文


    摘要:xp_cmdshell    (全文共4848字)——点击此处阅读全文


    摘要:返回 table 数据类型的用户定义函数    (全文共3852字)——点击此处阅读全文


    摘要:查询语言(SQL)函数    (全文共7228字)——点击此处阅读全文

第1页,共3页