
数据库引擎
sql_help
这个作者很懒,什么都没留下…
展开
-
SqlServer下数据库链接的使用方法
有时候我们希望在一个sqlserver下访问另一个sqlserver数据库上的数据,或者访问其他oracle数据库上的数据,要想完成这些操作,我们首要的是创建数据库链接。 数据库链接能够让本地的一个sqlserver登录用户映射到远程的一个数据库服务器上,并且像操作本地数据库一样。那么怎么创建数据库链接呢?我现在有两种方法可以实现。 第一种:在 sqlserver 企业管理器中,建立,转载 2008-04-18 09:52:00 · 809 阅读 · 0 评论 -
如何在SQL Server中使用DELETE INNER或UPDATE INNER
在 SQL Server 中使用 DELETE 和 UPDATE 的 INNER JOIN 关键字与 Access 的常规写法不同。Access中写为:delete from t1 inner join t2 on t1.id = t2.tid而SQL Server中须写为:delete from t1 from t1 inner join t2 on t1.id = t2.转载 2009-06-02 15:55:00 · 1078 阅读 · 0 评论 -
对有insert触发器表取IDENTITY值时发现的问题
问题是这样的:T1表上有一个INSERT的触发器,在插入数据的时候,会自动往T2表里面插一条记录这样当我在T1表上插入新的数据时,取@@IDENTITY的时候,返回的id值是T2表里面的新记录的值 赶快查了下msdn,原来@@IDENTITY还有这么多讲究: 在一条 INSERT、SELECT INTO 或大容量复制语句完成后,@@IDENTITY 中包含语句原创 2009-06-04 14:31:00 · 614 阅读 · 0 评论 -
18句话入门SQLServer XML查询
/*sql xml 入门: --by jinjazz --http://blog.youkuaiyun.com/jinjazz 1、xml: 能认识元素、属性和值 2、xpath: 寻址语言,类似windows目录的查找(没用过dir命令的话就去面壁)转载 2009-08-14 13:53:00 · 473 阅读 · 0 评论 -
SQL2005利用ROW_NUMER实现分页的两种常用方式
declare @PageNumber intdeclare @PageSize intset @PageNumber=2set @PageSize=20 --利用betweenselect *from( select row_number() over (order by source_ip,id) as row_num, * from tb) as page_tabl原创 2009-06-29 14:16:00 · 560 阅读 · 0 评论 -
查询速度慢的原因查找
1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源转载 2009-07-10 09:52:00 · 1065 阅读 · 0 评论 -
Excel导入到SQLSERVER的另类方法
比如Excel有两列,A列和B列需要导入到SQL表中在Excel中的新的一列中,直接写公式 =CONCATENATE("Insert into #tmp values(",A1,",",B1,")") 把每一行都设成同样的公式(双击即可完成)。 把整列复制下来,放到查询分析器中直接运行就好了。 这样的好处多 1: 不用管你什么格式,绝对不会乱。 2:快捷方便(列数不太多的话一般一分钟之内可转载 2009-10-26 09:57:00 · 520 阅读 · 0 评论 -
数据库连接大全
-----------MySQL 连接方式-----------MySQL Connector/ODBC 2.50 (MyODBC 2.50)连接方式本地数据库连接Driver={mySQL};Server=localhost;Option=16834;Database=myDataBase; 远程数据连接:Driver={mySQL};Server=myServerAddress;Optio转载 2009-11-06 11:39:00 · 655 阅读 · 0 评论 -
同时安装MSSQL2000与MSSQL2005时所遇到的问题及解决方法
1,因为SQL2000安装过程中无法修改实例名称,故安装过程中必须先安装SQL2000,然后在安装SQL2005.安装SQL2005时必须修改SQL实例名称,否则将和SQL2000的实例名称冲突. (关于此点,本人并不认同。若是先安装sql2005,则在安装sql2000的过程中自会提示你要修改实例名称。)2,安装完SQL2005后,开始准备用SQL2000客户端工具连接SQL2005,转载 2009-12-24 16:16:00 · 864 阅读 · 0 评论 -
大数据量数据删除策略
<br />SETROWCOUNT5000<br />WHILE1=1<br />BEGIN<br /> DELETEfrom T_History where LDate ='2010-06-01'<br /> IF@@ROWCOUNT<5000<br /> BREAK;<br />END<br />SETROWCOUNT0转载 2010-07-12 16:59:00 · 928 阅读 · 0 评论 -
SQL2005防止http://3b3.org/c.js注入
<br />SQL2000的操作方法:<br />1、不要使用sa用户连接数据库。<br />SA帐户拥有所有数据库和数据表的操作权限,在网页中使用SA连接数据库安全隐患非常大。<br />2、新建一个public权限数据库用户,并用这个用户访问数据库。<br />为了增加安全系数,建议每个数据库建立独立的只有public权限管理帐户,并用这个用户访问数据库有利于SQL的安全性。<br />3、[角色]去掉角色public对sysobjects与syscolumns对象的select访问权限。<br />4转载 2010-06-02 17:12:00 · 606 阅读 · 0 评论 -
sql server分布式事务解决方案
<br /><br />适用环境<br /><br />操作系统:windows 2003<br /><br />数据库:sql server 2000/sql server 2003<br /><br />使用链接服务器进行远程数据库访问的情况<br /><br />一、 问题现象<br />在执行分布式事务时,在sql server 2005下收到如下错误:<br /><br />消息 7391,级别 16,状态 2,过程 xxxxx,第 16 行<br /><br />无法执行该操作,因为链接服务器转载 2010-06-12 15:20:00 · 1197 阅读 · 0 评论 -
临时表操作的一些见解(解决了我在存储过程中使用临时表的困惑)
在调试以下存储过程中遇到了很大的困扰(主要是临时表操作):view plainprint?CREATE PROCEDURE [c_readtop] @eachrow int=10 AS declare @tmpcat varchar(16) create table #tmp_result (arid int,cat2 varchar(16),title varchar(100),upday datetime) declare rt_cursor cursor for select cat2 fro转载 2010-09-16 15:33:00 · 1895 阅读 · 0 评论 -
SQL 字段相乘的聚合操作
今天收到一个比较怪异的需求,需要查询数据库中某一字段所有数值的相乘结果我的第一反应是做一个CLR的聚合函数,在每次处理的时候做相乘操作即可但是目标的数据库是sql2000,无法使用CLR函数到网上搜索了一下,发现了一个很不错的解决方案。logx+logy=logx*y这个是一个高中生都学过的对数计算然后呢sum(col)原创 2010-12-01 17:34:00 · 10671 阅读 · 1 评论 -
查每个分组前N条记录(转liangCK)
----------------------------------- Author: liangCK 小梁-- Title : 查每个分组前N条记录-- Date : 2008-11-13 17:19:23--------------------------------- --> 生成测试数据: #TIF OBJECT_ID(tempdb.dbo.#T转载 2009-03-17 11:58:00 · 635 阅读 · 0 评论 -
关于微软SQL Server团队的博客
为了加强与客户的交流,微软SQL Server部门许多小组都维护着自己的博客。在这里你不但能找到内幕开发技巧,认识开发精英,捕获最新产品和技术动态,还有机会把你的问题或者期望直接传递给开发团队!这么多团队博客,总有一个适合你。Microsoft SQL Server Team Blogs List:· SQL Server Storage Engine Team bl转载 2009-03-13 14:21:00 · 576 阅读 · 0 评论 -
锁的概述
一. 为什么要引入锁 多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: 丢失更新 A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统 脏读 A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B得到的数据就与数据库内的数据产生了不一致 不可重复读 A用户读取数据,随后B用户读出该数据并修转载 2008-05-04 17:41:00 · 819 阅读 · 1 评论 -
SQL Server 2005中解决死锁问题
数据库操作的死锁是不可避免的,本文并不打算讨论死锁如何产生,重点在于解决死锁,通过SQL Server 2005, 现在似乎有了一种新的解决办法。 将下面的SQL语句放在两个不同的连接里面,并且在5秒内同时执行,将会发生死锁。 use Northwind begin tran insert into Orders(CustomerId) values(@#ALFKI@#) waitfo转载 2008-05-04 17:42:00 · 924 阅读 · 1 评论 -
SQL基本语句
下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE转载 2008-05-28 12:48:00 · 830 阅读 · 0 评论 -
一个SELECT语句引发的迭代(SELECT @local_variable = expression 的妙用)
在用Transact-SQL编写程序过程中,经常会遇到针对某个查询的每一行记录进行某种迭代运算的操作。通常情况下,我们都会定义一个该查询的游标,然后用循环语句来取出每一行进行迭代处理。但对于某些计算性质的迭代,巧妙使用SELECT @local_variable = expression的形式却能取得更好的效果。 我们来看看一个例子,有表T,只含一个字符字段F1,内容如下 T(F1)转载 2008-06-06 09:54:00 · 1004 阅读 · 0 评论 -
Windows2008常见问题整理
1,如何安装Windows Server 2008 ?可以采取两种方式:一是硬盘安装,二是 光盘安装。无论采取哪种方式,都建议遵循从低版本到高版本的安装顺序,即:Windows XP——Windows VISTA——Windows Server 2008 。否则会相当麻烦的。具体安装办法,与安装VISTA相似,本博客有详细的介绍。2,安装到最后一步提示输入密码,我怎么输了N次都过不去呢?转载 2008-06-12 11:38:00 · 1204 阅读 · 0 评论 -
SQL Server Profiler 模板
除了 Standard(默认)模板以外,SQL Server 事件探查器 还包含几个可监视特定类型的事件的预定义模板。下表列出了预定义模板、其用途以及其捕获何种事件类的信息。 模板名称 模板用途 事件类翻译 2008-06-23 11:44:00 · 1783 阅读 · 1 评论 -
sql server 2005系统表详细说明 - 1
sysaltfiles 主数据库 保存数据库的文件 syscharsets 主数据库字符集与排序顺序 sysconfigures 主数据库 配置选项 syscurconfigs 主数据库当前配置选项 sysdatabases 主数据库服务器中的数据库 syslanguages 主数据库语言 syslogins 主数据库 登陆帐号信息转载 2009-01-20 16:16:00 · 1045 阅读 · 0 评论 -
sql server 2005系统表详细说明 - 2
lcid int 此种语言的 Microsoft Windows NT? 区域设置 ID。 mslangid smallint SQL Server 消息组 ID。 安装了 SQL Server 提供的三十三种语言。下面是语言列表。 用英语表示的名称 NT LCID SQL Server 消息组 ID English 1033 1033 Ger转载 2009-01-20 16:17:00 · 1047 阅读 · 0 评论 -
sql server 2005系统表详细说明 - 3
reserved tinyint 仅限内部使用。 colstat smallint 仅限内部使用。 cdefault int 该列的默认值 ID。 domain int 该列的规则或 CHECK 约束 ID。 number smallint 过程分组时(0 表示非过程项)的子过程号。 colorder smallint 仅限内部使用。 auto转载 2009-01-20 16:19:00 · 1532 阅读 · 0 评论 -
用Log Explorer恢复数据库数据
Log Explorer is the leading transaction analysis and data recovery solution for Microsoft SQL Server. By providing unprecedented access to the SQL Server transaction log, Log Explorer gives you the ab转载 2009-02-06 11:48:00 · 1106 阅读 · 0 评论 -
对已有的数据表进行分区操作
先删除现在索引 drop index.... 接下来将现有的表绑定到分区架构 altert 表名 with(move to 分区架构(分区列)) 然后再创建索引 create index 索引名 on 表名(列) 当然,发果表中有主健,还要在将表绑定到分区架构时去掉主健约束, 绑定完成后,再alter table增加主健约束。原创 2009-02-06 14:27:00 · 1223 阅读 · 0 评论 -
关于临时表和存储过程返回结果
临时表是在TempDB中创建的表。临时表的名称都以“#”开头。临时表的范围为创建临时表的连接。因为,临时表不能在两个连接之间共享,一旦连接关闭,临时表就会被丢弃。如果临时表被创建于存储过程之中,则临时表的范围在存储过程之中,或者被该存储过程调用的任何存储过程之中。如果需要在连接之间共享临时表,则需要使用全局的临时表。全局的临时表以“##”符号开头,它将一直存在于数据库中,直到SQL Serv转载 2008-12-08 14:13:00 · 5854 阅读 · 0 评论 -
SQL SERVER 和EXCEL的数据导入导出
1、在SQL SERVER里查询Excel数据:-- ======================================================SELECT * FROM OpenDataSource( Microsoft.Jet.OLEDB.4.0,Data Source="c:/book1.xls";User ID=Admin;Password=;Ext转载 2008-12-17 13:51:00 · 574 阅读 · 0 评论 -
DBCC CHECKDB 数据库或表修复
1.DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。 use master declare @databasename varchar(255) set @databasename='需要修复的数据库实体的名称' exec sp_dboption @database转载 2012-06-27 15:44:54 · 1154 阅读 · 0 评论