今天一早,一到公司,被同事告知内部的一个数据库系统发生了问题,更新数据的时候提示失败。

于是开始着手处理,先是找到发生错误的地方,使用输出语句输出了错误Err.number,错误代码为-2147217900,然后又输出了发生错误的SQL语句,复制到查询分析器中执行,被告知错误为:数据库 ‘XXX’ 的日志已满。请备份该数据库的事务日志以释放一些日志空间。

原来是事务日志已满。

解决办法:

阅读全文

需要SQL Server 2000 及其以后的版本才支持~~

其实非常简单的,不用再额外安装什么插件。

首先,确认 SQL Server 2000 的全文检索功能可用,最简单的方法就是在企业管理器中,随便打开一个数据库到表,随便选中一个表,右键–查看 “全文索引表”选项是否为灰色,若为灰色,则此功能尚未开启,如已经可选,跳过下步。

开启全文检索功能:功能的关闭主要是是SQL Server 2000 的全文检索服务关闭了,需要在 我的电脑 上右键—管理—服务,找到 Microsoft Search,右键启动,最好修改其属性,再设置启动类型为自动。然后在查询管理器中 运行 execute sp_fulltext_database 'enable' ,再去企业管理器中右键查看,就会发现已经可以使用SQL Server 2000 的全文检索了(如果在服务中找不到此服务,就是该服务并未安装,需要安装后再开启)。

阅读全文

例句:

现在在这个句子有含有没有用处的span标签,我们需要使用sql语句替换掉这些标签,最后达到这样的效果:

首先需要做如下操作,使SQL支持正则表达式.

1.下载支持所需的文件 sql_xp_regular.7z

2.复制 xp_pcre.dllProgram FilesMicrosoft SQL ServerMSSQLbinn 目录下;

3.运行安装脚本 INSTALL.SQL;

4.然后就可以使用啦,主要有若干function及以下6个SP:

  • xp_pcre_match
  • xp_pcre_match_count
  • xp_pcre_replace
  • xp_pcre_format
  • xp_pcre_split
  • xp_pcre_show_cache

我们使用function 这样进行替换:

阅读全文

来源: http://www.codeproject.com/KB/database/xp_pcre.aspx

An Extended Stored Procedure to use regular expressions in T-SQL.

一个使用正则表达式的存储过程.

存储过程下载地址:

Download source and DLL – 219 Kb

Sql Server 不如Oracle,自带正则表达式,不过还是有办法实现的。使用这个SP就可以啦。

使用方法:

1.复制 xp_pcre.dllProgram FilesMicrosoft SQL ServerMSSQLbinn 目录下;

2.运行安装脚本 INSTALL.SQL;

3.然后就可以使用啦,主要有以下6个SP:

  • xp_pcre_match
  • xp_pcre_match_count
  • xp_pcre_replace
  • xp_pcre_format
  • xp_pcre_split
  • xp_pcre_show_cache

————————————————————–

阅读全文

导入一个Excel到Sql,好方便进行数据的筛选,但是却发现,在导入后,电话字段有很多数据丢失,变成了Null,经过仔细检查,发现丢失的都是包含有字符型的(如区号与号码之间的-),再查看一下导入后的sql表,电话所在字段类型为float类型~~~难怪会有很多数据丢失了。。

将Excel中的该列单元格格式改为 文本 格式,再导入,已经不行。

搜索一番,发现有一个方法,不过这个方法只针对于完全数字格式的字段,如若想导入的是数字格式,而非字符串格式,就需要这样的做法:

1、将导入的过程存为DTS包,将此DTS包找到

2、在刚才保存的DTS包上右键,编辑包

3、在编辑器里右键单击空白处,选择“脱接属性”命令。

4、依次展开“连接”——excel的那个连接——>“OLE DB属性“,找到“Extended Properties”属性。

5、将右边的“Value”属性的值改为“Excel 8.0;HDR=YES;IMEX=1”

阅读全文

在恢复master的备份时要注意:必须在单用户(single user)模式下进行 a.进入单用户模式的方法: 首先,在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m 其中:-c 可以缩短启动时间,SQL Server不作为Windows NT的服务启动; -f 用最小配置启动SQL Server; -m 单用户模式启动SQL Server。 也可以在控制面板-服务-MSSQLServer的启动参数中输入-c -f -m或者输入-m,点击开始 其次,进行master数据库的恢复 a.直接进入查询分析器,有个提示不要理会它。输入恢复语句进行数据库恢复: RESTORE DATABASE master from disk=’具体的备份文件路径和文件名’ b.或者用这个,在命令提示符下输入,注意大小写 使用”windows身份验证”的,输入:isql /E 使用”sql server和windows身份验证”的,输入:isql /U”用户名” /P”密码” 然后在出现的提示符下输入(注意1>,2>是提示符): 1>RESTORE DATABASE master from disk=’c:具体的备份文件名’ 2>go

阅读全文

作者的图片

DigDeeply

Technology Stack: Golang/PHP/Openresty, and so on…

Web Development Engineer

Beijing China