MSSQL - 技术教程文章

sqlserver两种分页方法比较

-- 3000 page(从1开始) 10 pagesize -- 方法1(效率不高):SELECT TOP 10 * FROM [xxx].[oooo] WHERE id NOT IN (SELECT TOP (10*(3000-1)) id FROM [xxx].[oooo] ORDER BY createtime DESC)ORDER BY createtime DESC; 方法2(效率高):SELECT TOP 10 * FROM (SELECT ROW_NUMBER() OVER (ORDER BY createtime DESC) AS RowNumber,* FROM [xxx].[oooo]) as A WHERE RowNumber > 10*(3000-1) ORDER BY createtime DESC...

SQLServer导出导出单表数据

1.SQLServer导出单表数据为TXT文件数据库--任务--导出数据这样,导出会带列名称。。 导入数据: 原文:http://www.cnblogs.com/niuge/p/4597992.html

本地jsp连到服务器上的sqlserver【代码】【图】

1.首先通过远程桌面连接到自己的服务器   方法很简答,打开远程桌面连接,然后输入服务器ip(外网ip),然后输入登录名和密码。 可以参考腾讯云给的教程:http://bbs.qcloud.com/forum.php?mod=viewthread&tid=2384&page=1&extra=#pid112462.然后打开浏览器,关闭IE的安全增强   打开服务器管理器,点左侧的服务器管理器  然后找到 配置IE ESC打开,然后都选择关闭,确定  这样就可以通过IE上网了。3.通过IE下载SQL S...

SQLServer创建约束

--创建数据库create database studentson primary( name=stu_data, filename=‘f:\SQL\stu_data.mdf‘, size=1, maxsize=10, filegrowth=1)log on ( name=stu_log, filename=‘f:\SQL\stu_log.ldf‘, size=1, maxsize=10, filegrowth=1)--删除数据库drop database students--使用数据库use students--删除表drop table scoredrop table studentdrop table class--自定义类型Exec sp_addty...

sqlserver相关问题

解决方案用户 ‘sa‘ 登录失败。该用户与可信 SQL Server 连接无关联问题一、忘记了登录Microsoft SQL Server 2005 的sa的登录密码解决方法:先用windows身份验证的方式登录进去,然后在‘安全性’-‘登录’-右键单击‘sa’-‘属性’,修改密码(sa的密码不能太简单,最好要有数字,字母,下划线字符组成,且长度最好大于10个字符);点击确定就可以了。问题二、已成功与服务器建立连接,但是在登录过程中发生错取。(provider:共享...

Sql Server系列:自定义函数

用户自定义函数可以像系统函数一样在查询或存储过程中调用,可以接受参数、执行操作并将操作结果以值的形式返回。返回值可以是单个标量或结果集。1. 标量函数  标量函数返回一个确定类型的标量值,对于多语句的标量函数,定义在BEGIN END块中的函数体包含一系列返回单个值的T-SQL语句。2. 表值函数  表值函数是返回数据类型为table的函数,返回的表值是单个SELECT语句查询的结果。原文:http://www.cnblogs.com/libingql/p/416...

SQL Server 存储过程【代码】

Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句。这样就可以提高存储过程的性能。? 存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 存储过程中可以包含逻辑控制语句和数据操纵语句,它可以接受参数、输出参数、返...

SqlServer简单数据分页【代码】【图】

手边开发的后端项目一直以来都用的.NET MVC框架,访问数据库使用其自带的EF CodeFirst模式,写存储过程的能力都快退化了闲来无事,自己写了条分页存储过程,网上类似的文章多的是,这里只列了一种情况,依据分析函数生成行号来实现分页查询 环境:sqlServer 2014创建数据库过程不再敖述,这里直接进入重点:1、首先创建了一张TestAdmin表,主键为ID字段int类型且自增1createtable TestAdmin ( 2 Id intidentity(1,1) primaryKey, 3...

MySQL和MsSQL实时自动数据同步

使用SyncNavigator轻松实现数据库异地同步、断点续传、异构同步最近碰到一个项目php和asp程序之间数据如何共享导出和导入所以一直在研究数据库同步的问题,在网上查了很多资料,也请教了很多人,找到了一种通过快照复制的方法。研究了一番后发现之前就是用的这个方法,效果不是很好,果断放弃。经过了一番寻觅和他人指点,最后从一位热心网友那里得知一款很好用的软件—— SyncNavigator。<特别感谢QQ网友会爬的猪猪提供的技术支持...

SQL Server 数据库的使用技巧

use master; #显示数据库select top 3 * from spt_values; #显示去前3行select * from test where id2 like ‘%1010%‘; #查询test表中的id2字段 中带有1010的列==================================================================create table test(id1 varchar(10),id2 varchar(10),name varchar(20));insert into test values(‘100‘,‘1001‘,‘ccc‘);insert into test values(‘100‘,‘1002‘,‘bbb‘);insert into test...

sql server在执行批处理时出现错误。错误消息为: 目录名无效

今天在客户服务器上的sql server上执行脚本,报错提示“在执行批处理时出现错误。错误消息为:目录名无效”,第一反应就是客户是不是在服务器装了360,因为之前有类似问题,360把数据库的文件给隔离了导致出错。的确,客户装了360。然后找了下解决方案,找到了解决方案,特别记录下来。C:\Users\Administrator\AppData\Local\Temp\ 下新建 文件夹 命名为2 即可。。原文:http://www.cnblogs.com/soundcode/p/8034684.html

SQL SERVER中如何格式化日期

1. SELECT convert(varchar, getdate(), 100) -- mon dd yyyy hh:mmAM (or PM) -- Oct 2 2008 11:01AM SELECT convert(varchar, getdate(), 101) -- mm/dd/yyyy - 10/02/2008 SELECT convert(varchar, getdate(), 102) -- yyyy.mm.dd -- 2008.10.02 SELECT convert(varchar, getdate(), 103) -- dd/mm/yyyySELECT convert(varchar, getdate(), 104) -- dd.mm.yyyySELECT convert(varchar, getdate(), 105) -- dd-mm-yyyySELECT co...

SQL Server 数据库表修改主键字段长度

-- 删除索引 ALTER TABLE createworkflow DROP CONSTRAINT pk_createworkflow_id;-- 修改字段长度Alter table createworkflow alter column id varchar(64) not null;-- 添加主键Alter table createworkflow add constraint pk_createworkflow_id primary key (id); 注意:修改字段类型时要加上 not null,否则第三句添加主键索引时报错,报错原因是,可为空的字段不允许添加主键索引。————————————————版权声明:...

SQL server常用操作命令【代码】

use mytest go--nchar类型与char类型完全相同,除了nchar是以Unicode格式而非ANSI格式来存储字符。 --Unicode格式比ANSI格式有更大的字符集范围。ANSI字符集仅有256个字符,Unicode字符集有65536个不同的字符。 --在SQL server中,Unicode数据类型要占用更多的存储空间,SQL server将为Unicode数据类型分配双倍的内部 --存储空间,因此,除非数据库中的确需要以这种格式保存字符,否则应使用ANSI。--新建数据库 --create database ...

深入SQL Server中定长char(n)与变长varchar(n)的区别详解

char(n)是定长格式,格式为char(n)的字段固定占用n个字符宽度,如果实际存放的数据长度超过n将被截取多出部分,如果长度小于n就用空字符填充。varchar(n)是变长格式,这种格式的字段根据实际数据长度分配空间,不浪费对于的空间,但是搜索数据的速度会麻烦一点。一般地说,只要一个表有一个字段定义为varchar(n)类型,那么其余用char(n)定义的字段实际上也是varchar(n)类型。如果你的长度本身不长,比如就3~10个字符,那么使用cha...

SQL SERVER 查看并结束某个进程【代码】

1--it will give you the SPID‘s for all your processes. 2EXEC sp_who 34--which will terminate SPID 425KILL422015,fighting for myself,my dear darling,my family, ~O(∩_∩)O~。原文:http://www.cnblogs.com/L-may/p/4629151.html

安装完毕后VS2012(2013)中找不到ADO.NET Entity Data Model模板或 sql server database project模板

Ado.net entity data model 解决:具体:在C:\ProgramData\Package Cache\ 搜索到相应的EFTools.msi .注意:先执行UnInstall(remove),再执行install。 对应版本:VS2012 对应EFTools V11 VS2013 对应EFTools V12sql server database project 模板找不到解决:做法类似1、将三个与SSDT相关的msi文件 执行uninstall(remove)再install。注意对应的版本即VS的语言:中文对应中文、英文对应英文即:SSDTDBSvcExternal...

Winserver2008r2 64位系统上将oracle11g中表格及数据定时同步到sqlserver2005中

:本文出自 “10635265” 博客,请务必保留此出处http://10645265.blog.51cto.com/10635265/1772661原文:http://10645265.blog.51cto.com/10635265/1772661

SQLSERVER中正则表达式封装使用

原文:SQLSERVER中正则表达式封装使用封装好的正则表达式供SQLSERVER调用打开数据库->可编程性->函数->标量值函数->新建标量值函数名USE [数据库]GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER function [dbo].[标量值函数名](@source ntext, --原字符串@regexp varchar(1000), --正则表达式@replace varchar(1000), --替换值@globalReplace bit = 1, --是否是全局替换@ignoreCase bit = 0 --是否忽略大小写)returnS varch...

SQLServer2008备份时发生无法打开备份设备【图】

如下图所示,在执行SQL一个简单的备份命令时发生下面的情况问题分析:1:可能是文件夹目录权限问题2:可能是登录SQLServer服务器用户策略问题于是就查看了E:\dw_backup的文件夹权限是对所属用户具有写入权限的,所以排除问题可能1那么问题就是发生在用户策略上面了于是打开SSCM找到SQLServer服务,右键属性,默认内置账户策略是Network Service ,我们修改为Local System,确定注意上面操作会重启SQLServer服务,可能包括SQLServer...

如何解决MSSQL中文数据乱码问题

今天遇到了在数据库中直接写SQL语句,语句中包含中文,但是数据库的表里是包含“?” 的乱码。我程序代码中,调试时得到的SQL不是乱码,在控制台中也不是乱码。但是在数据库中却出现了乱码。当用MSSQL控制台去插入或更改中文数据时,中文字符可能会被显示成问号(??),以下提供2种解决办法:1.在SQL里加上‘N’强制转换编码 a.把所有字符字段都改成无符号类型,如:nchar,ntext,nvarchar b.用查询分析器进行数据管理,在中文数据前...

SQL Server 2008——SQL命令INSERT【图】

T-SQL的INSERT命令的语法:INSERT [INTO] {table_name|view_name} [{(column_name,column_name,…)}] {VALUES (expression,expression,…)}方括号内是可选的。列名的列表必须用圆括号包围住,逗号分隔。关键字VALUES是必须的,数据值用圆括号包围,逗号分隔。最好是尽量避免在名称中包含空格;如果表或视图的名称与保留字相同或包含空格,则必须用方括号或双引号将名称包围起来。不过,如果确实需要,那么最好使用方括号,...

SQL Server 索引中包含查询字段 (INCLUDE索引)

这种索引无法通过数据的设计视图进行设计(也可能是没找到方法!) [sql] view plain copy CREATE INDEX IX_ContractDetail_Quantity ON ContractDetail (CostID, SubStatus, Note ) INCLUDE (Quantity); 和普通的索引唯一的区别就是后面加个了 Include标示 表示索引中包含的字段,单不会再上面建立查询索引。也就是说可以直接通过 CostId,SubStatus,Note三个字段查找Quantity的值,而不用去查询ContactDetail表效...

SQLServer基本操作

打开SQLServer客户端,连上服务端先建立数据库,点击新建查询建表,输入数据可以点击输入,也可以命令输入基本操作如下base父类中的构造函数名字this 同类中构造函数名字一条语句引用两条构造函数来自为知笔记(Wiz)原文:http://www.cnblogs.com/wuqingzangyue/p/5770032.html

SQL Server 取日期时间部分

SELECT CONVERT(varchar(100), GETDATE(), 0) 05 9 2011 9:12AM SELECT CONVERT(varchar(100), GETDATE(), 1) 05/09/11SELECT CONVERT(varchar(100), GETDATE(), 2) 11.05.09SELECT CONVERT(varchar(100), GETDATE(), 3) 09/05/11SELECT CONVERT(varchar(100), GETDATE(), 4) 09.05.11SELECT CONVERT(varchar(100), GETDATE(), 5) 09-05-11SELECT CONVERT(varchar(100), GETDATE(), 6) 09 05 11SELECT CONVERT(varchar(100), GET...

Excel文件导入SQL Server数据库表

--office 2003--如果接受数据导入的表已经存在insert into DemoTable select * from OPENROWSET(‘MICROSOFT.JET.OLEDB.4.0‘,‘Excel 5.0;HDR=YES;DATABASE=d:/Demo.xls‘,sheet1$)--如果导入数据并生成表select * into DemoTable from OPENROWSET(‘MICROSOFT.JET.OLEDB.4.0‘,‘Excel 5.0;HDR=YES;DATABASE=d:/Demo.xls‘,sheet1$)/***********************/--office 2010--如果表已存在,SQL语句为:insert into DemoTable se...

SQL Server获取下一个编码字符实现继续重构与增强【代码】【图】

我在SQL Server获取下一个编码字符实现的博文中,虽然实现了这个问题,但是感觉维护起来比较麻烦,例如如果调整编码字符串的固定长度,就需要变更三个函数,这样的为何成本确实比较大。面向对象编程很重视讲究开放封闭原则,我认为数据库对象特别函数、存储等对象也要尽量封装成实现单一功能,维护起来简单,也方便后续人员的维护,便利别人也是便利自己。 针对编码字符串的规则,继续延伸总结如下:1、第一个字符必须是字母A-...

SqlServer 查询死锁,杀死死锁进程【代码】

-- 查询死锁 select request_session_id spid, OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_type=‘OBJECT‘ --杀死死锁进程 kill spid原文:http://www.cnblogs.com/ydj0208/p/6036897.html

SQLServer覆盖索引【代码】【图】

为了更好地理解覆盖索引,在正式介绍覆盖索引之前,首先稍微来谈一谈有关索引的一些基础知识。数据页和索引页  在SQLServer中,数据存储的基本单位是页,一页的大小为8KB,分别由页首,数据行和行偏移量组成,如下图结构:  页首固定占用96个字节,用来存储相关的页面系统信息,例如所属的数据库表对象Id等。数据行是真实数据的存储区域,每一行的大小是不固定的。行偏移量是一个数组,数组的每个位置占2个字节,用来存储数据行...

MSSQL取得或删除重复数据【代码】

1.取得不重复的数据select*from Persons where Id in ( SELECTMAX(Id) AS Expr1 FROM Persons GROUPBY Name, Gender )2.删除重复的数据【MAX换成MIN会有不同的效果】deletefrom Persons where Id notin ( SELECTMAX(Id) AS Expr1 FROM Persons GROUPBY Name, Gender )原文:http://www.cnblogs.com/zuqing/p/4878856.html