随笔分类 -  SQL Server

mssql里sp_MSforeachtable和sp_MSforeachdb的用法
摘要:sql查询所有用户表的列表,详细信息,如:记录数,表占用大小等EXECsp_MSforeachtable"EXECUTEsp_spaceused'?'"mssql里sp_MSforeachtable和sp_MSforeachdb的用法从mssql6.5开始,微软提供了两个不公开,非常有用的系统存储过程sp_MSforeachtable和sp_MSforeachdb,用于遍历某个数据库的每个表和遍历DBMS管理下的每个数据库。mssql里sp_MSforeachtable和sp_MSforeachdb的用法我们在master数据库里执行下面的语句可以看到两个p 阅读全文

posted @ 2011-11-16 11:27 与时俱进 阅读(621) 评论(1) 推荐(1) 编辑

SQLSERVER中统计所有表的记录数
摘要:今天群里的一个朋友问了个问题:如何把数据库里所有表的记录数都统计出来? 由于以前我曾经试着写过一个存储过程,作用就是删除所有表的内容,思路是这样的: 首先通过sysobjects表构造一个sql语句字符串'DELETE 表名',其中表名就是sysobjects中的name列,把这些DELETE语句字符串连接起来的方法一是通过游标,二则是直接利用如下语句: select @sql = @sql + 'DELETE ' + name from sysobjects where xtype='U'; 这是一个很有用的技巧,在合适的地方用会很大程度的优化 阅读全文

posted @ 2011-11-16 11:25 与时俱进 阅读(1221) 评论(2) 推荐(0) 编辑

sql server 2000安全设置
摘要:微软的SQL Server是一种广泛使用的数据库,很多电子商务网站、企业内部信息化平台等都是基于SQL Server上的,多数管理员认为只要把网络和操作系统的安全搞好了,那么所有的应用程序也就安全了。大多数系统管理员对数据库不熟悉,而数据库管理员又对安全问题关心太少,而且一些安全公司也忽略数据库安全,这就使数据库的安全问题更加严峻了。数据库系统中存在的安全漏洞和不当的配置通常会造成严重的后果,而且都比较难以发现。数据库应用程序通常同操作系统的最高管理员密切相关。广泛SQL Server数据库属于“端口”型的数据库,这就表示任何人都能够用分析工具试图连接到数据库上,从而绕过操作系统的安全机制,进 阅读全文

posted @ 2011-06-25 17:42 与时俱进 阅读(704) 评论(0) 推荐(0) 编辑

SQL Server中如何备份到异机
摘要:这里提供两种方法:1,写成存储过程,建立作业定时备份--在sql中映射一下exec master..xp_cmdshell 'net use z: \\computer_name\D$ "密码" /user:computer_name\administrator'/*--说明:z:是映射网络路径对应本机的盘符,与下面的备份对应\\computer_name\D$是要映射的网络路径computer_name是远程的计算机名,administrator是登陆的用户名密码 指定的administrator用户的密码--*/--备份;with init覆盖  阅读全文

posted @ 2011-04-20 11:07 与时俱进 阅读(809) 评论(0) 推荐(0) 编辑

批量删除一些数据的一个存储过程
摘要:一种方式:create proc deletesomerecs (@ids varchar(8000))asexec('delete from inmodify where inmid in ('+@ids+')')另一种方式:create proc deletesomerecs (@ids varchar(8000))asdelete from inmodify where charindex(','+ltrim(inmid)+',', ','+@ids+',')>0 阅读全文

posted @ 2011-03-08 14:03 与时俱进 阅读(308) 评论(0) 推荐(0) 编辑

SQL SERVER 杀死锁进程存储过程
摘要:use master --必须在master数据库中创建goif exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_lockinfo]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)drop procedure [dbo].[p_lockinfo]GO/**//*--处理死锁 查看当前进程,或死锁进程,并能自动杀掉死进程 因为是针对死锁的,所以如果有死锁进程,只能查看死锁进程 当然,你可以通过参数控制,不管有没有死锁,都只查看死锁进 阅读全文

posted @ 2011-03-08 13:42 与时俱进 阅读(3946) 评论(1) 推荐(0) 编辑

SQL Server数据修复常用命令DBCC
摘要:MS Sql Server 提供了很多数据库修复的命令,当数据库质疑或是有的无法完成读取时可以尝试这些修复命令。1. DBCC CHECKDB重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。use masterdeclare @databasename varchar(255)set @databasename='需要修复的数据库实体的名称'exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单 阅读全文

posted @ 2011-03-08 13:39 与时俱进 阅读(488) 评论(1) 推荐(0) 编辑

DBCC命令
摘要:今天把DBCC命令都一一使用了一下,做了笔记,防止忘记. 在调用命令时使用了一些参数,其中'taobaoitem_0003'是表名,'ix_taobaoitem_0003'是索引,'taobao'是数据库名称,'taobao3'是数据库文件.Transact-SQL编程语言提供DBCC语句作为SQL Server的数据库控制台命令。数据库控制台命令语句可分为以下类别。命令类别执行维护对数据库、索引或文件组进行维护的任务。杂项杂项任务,如启用跟踪标志或从内存中删除DLL。信息收集并显示各种类型信息的任务。验证对数据库、表、索引、目录 阅读全文

posted @ 2011-03-08 11:18 与时俱进 阅读(473) 评论(0) 推荐(1) 编辑

释放SQL Server占用的内存
摘要:由于Sql Server对于系统内存的管理策略是有多少占多少,除非系统内存不够用了(大约到剩余内存为4M左右),Sql Server才会释放一点点内存。所以很多时候,我们会发现运行Sql Server的系统内存往往居高不下。这些内存一般都是Sql Server运行时候用作缓存的,例如你运行一个select语句,那么Sql Server会将相关的数据页(Sql Server操作的数据都是以页为单位的)加载到内存中来,下一次如果再次请求此页的数据的时候,就无需读取磁盘了,大大提高了速度。这类的缓存叫做数据缓存。还有一些其他类型的缓存,如执行存储过程时,Sql Server需要先编译再运行,编译后的 阅读全文

posted @ 2011-03-08 11:01 与时俱进 阅读(667) 评论(0) 推荐(0) 编辑

利用SQL语句清理日志
摘要:注:cbd为数据库名--清空日志DUMP TRANSACTION cbd WITH NO_LOG--截断事务日志BACKUP LOG cbd WITH NO_LOG----收缩数据库DBCC SHRINKDATABASE(cbd)--收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfilesDBCC SHRINKFILE(1)--以后能自动收缩EXEC sp_dboption 'cbd', 'autoshrink', 'TRUE' 阅读全文

posted @ 2011-02-23 08:55 与时俱进 阅读(316) 评论(0) 推荐(0) 编辑

sql位运算符&(位与)、~(位非)、|(位或)、^(位异或)
摘要:十进制 170 转二进制为:0000 0000 1010 1010十进制75 转二进制为:0000 0000 0100 10111.&(位与)上下运算,按照与的运算规则:0&0=0 ;0&1=0;1&1=1例如:170 & 75 结果为:0000 0000 0000 1010再把二进制转换为十进制:102.~(位非)运算法则:0变1,1变0~170 的二进制:1111 1111 0101 0101十进制为:-171~75 的二进制:1111 1111 1011 0100十进制为:-763.|(位或)上下运算,按照与的运算规则:0&0=0 ;0&1=1;1&1=1例如:170 & 75 结果为: 阅读全文

posted @ 2011-02-07 11:06 与时俱进 阅读(20260) 评论(1) 推荐(0) 编辑

实现日、周、月排行统计
摘要:在如今很多系统中,都需要进行日、周、月排行统计,但是在网上寻找了一番,发现很多都是相对的周、月排行,即周排行则用当前时间减去7天。这样我个人认为并不恰当。如月排行中,假设今天是4月22日,则从3月22日至4月22日之间都可以算成月排行内,这样的话与我们的月排行不尽相同,我认为月排行应该指当月的排行。概括一下,即两种情况:当前日期往前推一周或者一个月(暂且描述为“相对排行”),当前日期所在周或者所在月(暂且描述为“绝对排行”)。为了好描述和分析,举例说明。示例数据库如下:说明:表名:T_Visit当前日期:2009-4-22表中数据:如下当前日期为星期几(@day):3  相对排行实现办法:日排 阅读全文

posted @ 2010-12-13 17:58 与时俱进 阅读(663) 评论(0) 推荐(1) 编辑

sqlserver replace函数 批量替换数据库中指定字段内指定内容
摘要:语法REPLACE ( 'string_e xpression1' , 'string_e xpression2' , 'string_e xpression3' )参数说明'string_e xpression1'待搜索的字符串表达式。string_e xpression1 可以是字符数据或二进制数据。'string_e xpression2'待查找的字符串表达式。string_e xpress... 阅读全文

posted @ 2010-10-26 12:56 与时俱进 阅读(5871) 评论(0) 推荐(0) 编辑

SQLServer和Oracle常用函数对比
摘要:数学函数在oracle 中distinct关键字可以显示相同记录只显示一条  1.绝对值  S:selectabs(-1)value  O:selectabs(-1)valuefromdual  2.取整(大)  S:selectceiling(-1.001)value  O:selectceil(-1.001)valuefromdual  3.取整(小)  S:selectfloor(-1.00... 阅读全文

posted @ 2010-04-23 21:46 与时俱进 阅读(318) 评论(0) 推荐(0) 编辑

基于SQL几个常用的几个系统表
摘要:SQL数据库中常用的几个系统表1、sysobjects系统对象表。 保存当前数据库的对象,如约束、默认值、日志、规则、存储过程等sysobjects 重要字段解释:sysObjects (Name sysname, --object 名称id int, --object idxtype char(2), -- object 类型 type char(2), -- Object 类型(与xtype... 阅读全文

posted @ 2010-04-11 19:11 与时俱进 阅读(399) 评论(0) 推荐(0) 编辑

常常忘记却又常用的sql
摘要:SQL语句先前写的时候,很容易把一些特殊的用法忘记,我特此整理了一下SQL语句操作。一、基础1、说明:创建数据库CREATEDATABASEdatabase-name2、说明:删除数据库dropdatabasedbname3、说明:备份sql server--- 创建 备份数据的 deviceUSEmasterEXECsp_addumpdevice'disk','testBack','c:\mss... 阅读全文

posted @ 2010-03-10 14:33 与时俱进 阅读(745) 评论(2) 推荐(0) 编辑

查看Sql Server的log文件大小
摘要:SELECT DB_NAME(database_id) AS DatabaseName,Name AS Logical_Name,Physical_Name, (size*8)/1024 SizeMBFROM sys.master_filesWHERE DB_NAME(database_id) = 'AdventureWorks'GO 阅读全文

posted @ 2010-03-02 20:53 与时俱进 阅读(983) 评论(0) 推荐(0) 编辑

sql server日志文件总结及日志满的处理办法
摘要:交易日志(Transaction logs)是数据库结构中非常重要但又经常被忽略的部分。由于它并不像数据库中的schema那样活跃,因此很少有人关注交易日志。   交易日志是针对数据库改变所做的记录,它可以记录针对数据库的任何操作,并将记录结果保存在独立的文件中。对于任何每一个交易过程,交易日志都 有非常全面的记录,根据这些记录可以将数据文件恢复成交易前的状态。从交易动作开始,交易日志就处于记录状... 阅读全文

posted @ 2009-11-25 17:48 与时俱进 阅读(401) 评论(0) 推荐(0) 编辑

MSsql每天自动备份自动清除日志的操作方法
摘要:1、每日自动备份   打开企业管理器,进入“管理”-“数据库维护计划”,在右侧窗口点击右键,选择“新建维护计划”,启动“数据库维护计划向导”;点击“下一步” 选择需要维护的数据库,维护特性数据库时,选择最后一个单选框并勾选需要维护的数据库名称;“下一步”选... 阅读全文

posted @ 2009-11-25 17:46 与时俱进 阅读(941) 评论(0) 推荐(0) 编辑

使用OPENROWSET函数连接并访问远程数据库数据
摘要:我们有时候会遇到要访问的数据不只是在本地服务器上,往往另一部分在远程数据库服务器上,比如我们在两个服务器上存放着表结构一样的数据我们要把两数据合 并起来一起显示怎么办呢,那么这个时候我们用SQL SERVER提供的OPENROWSET函数了,使用起来很方便,记住像引用表名那样引用OPENROWSET 函数就可以了。我们可以这样写:1.SELECT a.* FROM table1 a LEFT JO... 阅读全文

posted @ 2009-10-26 21:30 与时俱进 阅读(348) 评论(0) 推荐(0) 编辑

友情链接:同里老宅院民居客栈