sql2005技巧
文章平均质量分 75
feng2375
这个作者很懒,什么都没留下…
展开
-
trigger 专题
触发器功能强大,轻松可靠地实现许多复杂的功能,为什么又要慎用呢。 触发器本身没有过错,但由于我们的滥用会造成数据库及应用程序的维护困难。 在数据库操作中,我们可以通过关系、触发器、存储过程、应用程序等来实现数据操作,比如删除 T1 表记录时期望删除 T2 表相关的记录,此时可以建立级联删除的关系,也可以为 T1 表建立触发器使同时删除 T2 表相关记录,也可以自定义存储过程删除 T1 和转载 2008-01-24 09:05:00 · 664 阅读 · 0 评论 -
sql语句优化实例
SELECT TITLE FROM TITLES WHERE NOT EXISTS (SELECT TITLE_ID FROM SALES WHERE TITLE_ID = TITLES.TITLE_ID) 可以改写成: SELECT TITLE FROM TITLES LEFT JOIN SALES ON SALES.TITLE_ID = TITLES.TITLE原创 2008-10-23 16:53:00 · 479 阅读 · 0 评论 -
SQL server锁的机制
SQL server锁的机制 SQL server的所有活动都会产生锁。锁定的单元越小,就越能越能提高并发处理能力,但是管理锁的开销越大。如何找到平衡点,使并发性和性能都可接受是SQL Server的难点。SQL Server有如下几种琐:1、 共享锁用于只读操作(SELECT),锁定共享的资源。共享锁不会阻止其他用户读,但是阻止其他的用户写和修改。2、 更新锁更新锁是一种意图锁,当一个事物已原创 2008-10-24 10:33:00 · 462 阅读 · 0 评论 -
SQL备份与还原经典文档
======================================================================SQL备份======================================================================----------------------------------------------------原创 2008-10-27 22:34:00 · 523 阅读 · 0 评论 -
SQL触发器语法参考
CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ WITH APPEND ] [ NOT FOR REPLICATION ] AS原创 2008-10-28 22:50:00 · 560 阅读 · 0 评论 -
DBCC命令
SELECT dbid FROM master.dbo.sysdatabases WHERE name = db_testselect *From db_test12dbcc checkalloc(db_test)sp_helpextendedproc --显示目前由 SQL Server 加载的 DLL 文件SELECT * FROM sys.tables where原创 2008-10-31 00:03:00 · 599 阅读 · 0 评论 -
了解SQL Server锁争用:NOLOCK 和 ROWLOCK 的秘密
关系型数据库,如SQL Server,使用锁来避免多用户修改数据时的并发冲突。当一组数据被某个用户锁定时,除非第一个用户结束修改并释放锁,否则其他用户就无法修改该组数据。 有些数据库,包括SQL Server,用锁来避免用户检索未递交的修改记录。在这些系统中,如果用户A在修改一组记录,则其他用户只有等用户A修改完毕了,才能检索。 数据库在每个物理层上设置锁:记录行(rows),原创 2008-11-05 09:56:00 · 589 阅读 · 0 评论 -
--动态语句语法
--动态语句语法/******************************************************************************************************************************************************动态语句语法:exec/sp_executesql语法整理人:中国风(Roy)日期原创 2008-11-06 17:42:00 · 1830 阅读 · 0 评论 -
CONVERT函数对日期的全部用法
--功能概述:CONVERT函数全部用法 格式: CONVERT(data_type,expression[,style]) 说明: (datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到的函数的3个参数, 第1个参数为,转换后的大小,第2个为转换日期的字段或函数,第3个为转换的格式,具体如下: 0 | 0 or原创 2009-01-09 12:00:00 · 1284 阅读 · 0 评论 -
建立链接服务器
EXEC sp_addlinkedserver @server=poptv, @srvproduct=, @provider=SQLNCLI, @datasrc=10.1.32.7 @server 链接服务器名称 @datasrc 链接远程地址 1.先在远程建立用户 2.设定用户权限 3.在本地建立原创 2009-01-14 17:37:00 · 509 阅读 · 0 评论 -
sql管理基础语句
1. 查看数据库的版本 select @@version 常见的几种SQL SERVER打补丁后的版本号: 8.00.194 Microsoft SQL Server 2000 8.00.384 Microsoft SQL Server 2000 SP1 8.00.532 Microsoft SQL Server 2000原创 2008-11-25 16:20:00 · 470 阅读 · 0 评论 -
SQL Server 2005利用分区对数据处理
use mastergocreate database Mydataon primary( Name=mydata, filename=E:/DB/mydata.mdf, size=10,maxsize=50,filegrowth=1)Log On (name = mydata_log,filename=E:/DB/mydat原创 2008-11-26 15:52:00 · 444 阅读 · 0 评论 -
sql2005镜像实现
-- =========================================== -- 无论是主体服务器、镜像服务器, 还是见证服务器 -- 除特别说明外,均需要保证下面的操作在master库中执行 USE master GO -- =========================================== --(1) 建立镜像主体数据库原创 2009-02-16 17:35:00 · 2611 阅读 · 3 评论 -
选择SQL Server恢复模型确保正确备份
问题 在管理SQL Server时首先要做的一件事是建立一个合适的备份计划以便将失败事件中任何数据的丢失可能最小化。建立备份计划之后当然要做些数据库配置,这些配置是建立以确保你可以正确地备份数据库。在这篇文章里我们将看看SQL Server所提供的不同恢复模型以及怎样为你的数据库选择恢复模型。 专家解答 对于SQL Server 2000和2005,Microsoft为你原创 2008-12-18 16:39:00 · 509 阅读 · 0 评论 -
ntext,image,text 中的替换
DECLARE @val varbinary(16) declare @n int declare @len int declare @old varchar(8000) declare @new varchar(8000) declare @i int set @i=0 set @old =原创 2009-04-03 11:52:00 · 466 阅读 · 0 评论 -
mysql的备份和恢复
还原或者导入数据库命令:mysql -u root --password=root 备份数据库命令: mysqldump -u root --password=root --database helloworld >helloworld_backup.sql其他用法: 1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u wcnc -原创 2009-06-01 16:54:00 · 590 阅读 · 0 评论 -
存储过程删除局域网文件
exec master..xp_cmdshellnet use z: //IP/盘符$/站点文件/子文件夹 "登录密码" /user:IP/用户名 declare @kh_id varchar(20) declare @return int declare @filepath varchar(500) declare @files varchar(200)原创 2009-12-02 11:04:00 · 852 阅读 · 0 评论 -
时间的获取方法
SQL code <!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DECLARE @dt datetimeSET @dt=GETDATE()DECLARE @number intSET @number原创 2010-03-19 10:44:00 · 544 阅读 · 0 评论 -
探讨SQL Server中Case 的不同用法
CASE 可能是 SQL 中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。例如,你可以在 WHERE 子句中使用 CASE。 首先让我们看一下 CASE 的语法。在一般的 SELECT 中,其语法如下: SELECT = CASE WHEN THEN WHEN THEN ELSE原创 2008-07-08 14:50:00 · 441 阅读 · 0 评论 -
备份和还原数据库
备份:backup database test to disk=E:/test.bak还原:use masterdeclare @mycur cursordeclare @spid intset @mycur = cursor for select spid from master..sysprocesses where原创 2008-07-03 11:57:00 · 493 阅读 · 0 评论 -
bcp远程导出数据
-- =============================================-- Author: -- Create date: -- Description: -- =============================================ALTER PROCEDURE [dbo].[proc_jsmx_out_temp]@sql varchar(5000)原创 2008-09-17 14:17:00 · 2255 阅读 · 1 评论 -
SQL2005如何建立链接服务器
两个 SQL2005 怎么建立链接服务器! --这个是2000的,估计差不多. 不同服务器数据库之间的数据操作 --创建链接服务器 exec sp_addlinkedserver ITSV , , SQLOLEDB , 远程服务器名或ip地址 exec sp_addlinkedsrvlogin ITSV原创 2008-01-24 09:38:00 · 4388 阅读 · 1 评论 -
SQL SERVER 与ACCESS、EXCEL的数据转换
熟悉SQL SERVER 2000的数据库管理员都知道,其DTS可以进行数据的导入导出,其实,我们也可以使用Transact-SQL语句进行导入导出操作。在Transact-SQL语句中,我们主要使用OpenDataSource函数、OPENROWSET 函数,关于函数的详细说明,请参考SQL联机帮助。利用下述方法,可以十分容易地实现SQL SERVER、ACCESS、EXCEL数据转换,详细说明原创 2008-01-23 09:58:00 · 487 阅读 · 0 评论 -
ORACLE SQL and SQL*PLUS 学习
八、概述数据模型和数据库设计1. 系统开发的阶段:Strategy and AnalysisDesignBuild and DocumentTransitionProduction2. 数据模型Model of system in clients mindEntity model of clients modelTable model of entity modelTables on di原创 2008-01-23 14:07:00 · 729 阅读 · 0 评论 -
Sql Server存储过程分页总结
分页方案一:(利用Not In和SELECT TOP分页)语句形式:SELECT TOP 10 *FROM TestTableWHERE (ID NOT IN (SELECT TOP 20 id FROM TestTable ORDER BY id))ORDER BY ID SELECT TOP 页大小 *FROM TestTableWH转载 2008-01-24 12:03:00 · 745 阅读 · 0 评论 -
SQL游标使用及实例
declare my_cursor cursor scroll dynamic /*scroll表示可随意移动游标指针(否则只能向前),dynamic表示可以读写游标(否则游标只读)*/forselect * from t_msgopen my_cursordeclare @name sysnamefetch next from my_cursor into @namewhile(@@fetc原创 2008-01-24 16:34:00 · 38593 阅读 · 4 评论 -
怎么建合适的索引?
先说有问题的索引,可以反过来看建索引的原则: 1、表上没有索引,导致全表扫描。 2、建立索引的表太小,没有必要建索引。 3、索引中的每一行数据对应过多的表中的行,如对性别建索引。 4、对于在WHERE中出现,但总是与函数或操作符一起使用的字段建索引,这样的索引不起作用。 5、表上太多索引,特别是在OLTP系统,造成插入缓慢。 6、索引项太大。 7、不合理的复合索引。 下面是关于索引转载 2008-01-29 17:10:00 · 1176 阅读 · 0 评论 -
left join的总结
EG1:通俗的讲A left join B 的连接的记录数与A表的记录数同A right join B 的连接的记录数与B表的记录数同 A left join B 等价B right join Atable A:Field_K, Field_A1 a3 b4 ctable B:Field_K, Field_B1 x2原创 2008-01-29 15:49:00 · 1129 阅读 · 0 评论 -
sql 2005 创建动态数据报表的整个流程分析.
sql 2005 创建动态数据报表的整个流程分析. SQL Server 2005 联机丛书设计和创建报表Reporting Services 包括两个报表设计工具:报表生成器和报表设计器。报表生成器是一种客户端应用程序,可以基于报表模型生成报表。您可以通过简化的界面来查询数据并创建按需运行报表。您不必了解基础数据库、报表定义或 Reporting Services 存储报表的方式,就可以使用报表原创 2008-02-14 16:14:00 · 912 阅读 · 0 评论 -
用MS SQL Reporting Services生成报表
灵活的报表功能是大多数业务应用程序的一个要求,这些报表功能在集成到 Web 应用程序中之后用途更加广泛。利用 SQL Server® 2000 Reporting Services 的最新版本,您可以轻松地具有来自各种数据源的报表生成功能。在本文中,我将介绍使用 Visual Studio® 和 Reporting Services 来编写报表,并演示如何将报表集成到 Web 应用程序中。原创 2008-03-19 17:38:00 · 1110 阅读 · 0 评论 -
convert函数,日期字段的转换
在查询中加上convert转换。。。convert(varchar(10),字段名,转换格式)如果是为表中字段写默认值,相当于ACCESS中的date().比如:select user_id,convert(varchar(10),date,11) as date from tb_user转换格式:0或100 month dd yyyy hh:miAMPM1 mm/dd/yy2 yy.mm.dd3转载 2008-03-21 14:53:00 · 872 阅读 · 0 评论 -
事务的基本写法
人在职场,不想升职加薪那是假话,年轻人希望自己在最短的时间内快速升职加薪不是一件坏事,但是如何让自己在最短的时间内升职、加薪,这里面有一定的学问。笔者根据当代年轻人的就业观,试从营销的角度探索职场快速升职的奥秘。 一、 选对行:有句古话叫做:男怕入错行,女怕嫁错郎。因此,快速升职加薪的第一步,一定要选对行,这里就要求所有的从业人员在从业之初就要对自己有一个深刻的剖析,一定要搞清楚自己喜欢什原创 2008-04-13 00:25:00 · 870 阅读 · 0 评论 -
sql操作个别语句
set identity_insert db onset identity_insert db offbegin transactioncommit transactiondump transaction test with no_logDBCC SHRINKFILE(test_log,1)backup database原创 2008-07-03 17:31:00 · 510 阅读 · 0 评论 -
有关启用 'Ad Hoc Distributed Queries' 的详细信息
SQL Server 阻止了对组件 /Ad Hoc Distributed Queries/ 的访问 在Sql Server中查询一下Excel文件的时候出现问题:SELECT * FROM OPENROWSET( MICROSOFT.JET.OLEDB.4.0,Excel 8.0;IMEX=1;HDR=YES;DATABASE=D:/a.xls,[sheet1$原创 2008-07-17 17:55:00 · 3888 阅读 · 0 评论 -
SQL Server 游标使用方法
游标使用方法: use db1 declare my_cursor cursor scroll dynamic /*scroll表示可随意移动游标指针(否则只能向前),dynamic表示可以读写游标(否则游标只读)*/ for select 姓名 from 个人资料 open my_cursor declare @name sysname fetch next from my_c原创 2008-05-14 14:51:00 · 490 阅读 · 0 评论 -
MS SQL Server数据库事务锁机制分析
锁是网络数据库中的一个非常重要的概念,它主要用于多用户环境下保证数据库完整性和一致性。各种大型数据库所采用的锁的基本理论是一致的,但在具体实现上各有差别。目前,大多数数据库管理系统都或多或少具有自我调节、自我管理的功能,因此很多用户实际上不清楚锁的理论和所用数据库中锁的具体实现。 Microsoft SQL Server(以下简称SQL Server)作为一种中小型数据库管理系统,已经得原创 2008-09-04 11:00:00 · 441 阅读 · 0 评论 -
sql2005 中捕捉错误
BEGIN TRANSACTIONBEGIN try UPDATE HumanResources.Employee SET BirthDate = 1975-08-25 WHERE EmployeeID = 25 WAITFOR DELAY 00:00:10 SELECT * FROM HumanResources.Employee原创 2008-09-10 16:39:00 · 833 阅读 · 0 评论 -
RESTORE DATABASE命令还原SQLServer 2005 数据库
--返回由备份集内包含的数据库和日志文件列表组成的结果集。--主要获得逻辑文件名USE masterRESTORE FILELISTONLY FROM DISK = g:/back.Bak Go************************************************/**//*利用bak恢复数据库,强制原创 2008-07-03 11:05:00 · 4168 阅读 · 0 评论 -
sql2008日志收缩
USE [master] GO ALTER DATABASE [BI] SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE [BI] SET RECOVERY SIMPLE --简单模式 GO USE [BI-V2.0] GO DBCC SHRINKFILE (N'BI_log'原创 2012-05-11 14:18:45 · 540 阅读 · 0 评论