MSSQL - 技术教程文章

mssql @@ERROR 使用

mssql 错误日志文件存放位置:C:\Program Files\Microsoft SQL Server\MSSQL\LOG 用记事本查看 @@ERROR返回一个整数 0为正常 sysmessages 存放的错误信息系统表(master) USE master select * from sysmessages where error=错误编号 可查询错误的原因 触发器中可用 RAISERROR (50009, 16, 10) 抛出错误,其中50009就是错误编号,也可以是错误信息说明 16 10 具体的行和列可自已定 也可定义自定义的消息 将自定义的消息添加到 sysme...

MSSQL 构建临时表SQL【代码】

declare @StartQuarter intset @StartQuarter =4 declare @StartYear intset @StartYear=2013 declare @EndQuarter intset @EndQuarter=4 declare @EndYear intset @EndYear=2014declare @StartRange int,@EndRange int,@SYear int,@SQuarter intset @SYear=@StartYear set @SQuarter=@StartQuarter set @StartRange=convert(int,convert(varchar(4),@SYear)+convert(varchar(4),@SQuarter)) set @EndRange=CONVERT(int,CONVERT(va...

SqlServer2008根据现有表,获取该表的分区创建脚本【代码】

1*============================================================== 2 名称: [GetMSSQLTableScript] 3功能: 获取customize单个表的mysql脚本 4创建:2015年3月23日5 参数:@DBName--数据库名称 6@TBName--表名 7@SchemeName--数据库表引用的Scheme 8@PartitionScheme--分区Scheme 9@PartitionField--该表使用的分区字段 10@SQL--输出脚本 11==============================================================*/ 12ALTE...

petapoco-SQLServer模型增加注释【代码】【图】

petapoco 是个基于T4模板的轻量级ORM,好用效率高,具体介绍略了获取注释基本原理是调用数据库::fn_listextendedproperty函数,获取扩展属性MS_Descriptiontechnet 参考资料:sys.fn_listextendedproperty (Transact-SQL)一、首先是 PetaPoco.Core.ttinclude  1、106行原始:publicstring SequenceName; publicbool Ignore;  新建Description字段,这个是表的注释publicstring SequenceName; publicbool Ignore; publicstring ...

好久没写了,SQLSERVER服务丢失后怎么办

服务器突然中了病毒,查杀后,结果两个服务也丢了, 从其他机器上COPY了两个EXE过来,编写这两个服务就搞定了,不用重装MSSQL2005了 sc create MSSQLSERVER binpath= "\"C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe\" -sMSSQLSERVER" displayname= "SQL Server (MSSQLSERVER)" depend= Tcpip start= autosc create SQLSERVERAGENT binpath= "\"C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\B...

SQL Server经典sql语句大全(转)

一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice ‘disk‘, ‘testBack‘, ‘c:\mssql7backup\MyNwind_1.dat‘--- 开始 备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)根据已有的表创建新表:A:...

关于 MongoDB 与 SQL Server 通过本身自带工具实现数据快速迁移 及 注意事项 的探究【图】

背景介绍随着业务的发展、需求的变化,促使我们追求使用不同类型的数据库,充分发挥其各自特性。如果决定采用新类型的数据库,就需要将既有的数据迁移到新的数据库中。在这类需求中,将SQL Server中的数据导入到MongoDB 中显得尤为突出。面对这种需求,大家优先想到的就是百度查找第三方工具,可惜截止目前,还没有一款公认比较满意的数据迁移工具。百度不到,大家可能就要回头自己开发了。如此,更是花费不少人力物力和宝贵的精力...

C# 连接SQL Server数据库的连接字符串<转>

C#连接SQL Server数据库的连接字符串,我们一个一个参数来介绍(注意:参数间用分号分隔):“user id=sa”:连接数据库的验证用户名为sa。他还有一个别名“uid”,所以这句我们还可以写成“uid=sa”。 “password=”:连接数据库的验证密码为空。他的别名为“pwd”,所以我们可以写为“pwd=”。这里注意,你的SQL Server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录。如果你的SQL Server设置为Windows登录,...

(4.39)sql server如何配置分布式事务(MSDTC)

在使用SQL Server时有时会用到分布式事务,下面是我总结的:一、如何配置分布式事务的详细步骤1. 双方启动MSDTC服务  MSDTC服务提供分布式事务服务,如果要在数据库中使用 SQL Server分布式事务,必须在参与的双方服务器启动MSDTC(Distributed Transaction Coordinator)服务。2. 打开双方135端口  MSDTC服务依赖于RPC(Remote Procedure Call (RPC))服务,RPC使用135端口,保证RPC服务启动,如果服务器有防火墙,保证135端口...

SQL Server 2012 T-SQL基础教程--T-SQL查询和编程的背景【代码】【图】

理论背景1. SQL:Structured Query Language, 是RDBMS(Relational Database Management Systems)的查询和管理数据的标准语言。2. 理解集合理论和谓词逻辑,RDBMS基于这两个数学分支。3. SQL语句类别: Data Definition Language, DDL:数据定义语言,处理对象的定义,包括诸如create、alter和drop等语句。 Data Manipulation Language,DML:数据操作语言,用于查询和修改数据,包括诸如select、insert、update、delete、t...

MySQL、Oracle和SQL Server的分页查询语句【代码】

假设当前是第PageNo页,每页有PageSize条记录,现在分别用Mysql、Oracle和SQL Server分页查询student表。1、Mysql的分页查询: 1 SELECT 2 * 3 FROM 4 student 5 LIMIT (PageNo - 1) * PageSize,PageSize;理解:(Limit n,m) =>从第n行开始取m条记录,n从0开始算。2、Oracel的分页查询: 1 SELECT2 *3 FROM4 (5 SELECT6 ROWNUM rn ,*7 FROM8 student9 WHERE 10 ...

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)【代码】【图】

问题:linux服务器中误删mysqlx.sock和mysqlx.sock.lock导致mysql无法远程连接今天在使用navicat连接远程数据库时出现一个错误ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)百度得知是缺少了mysqlx.sock和mysqlx.sock.lock这两个文件在解决之前先了解一下这个mysqlx.sock是个什么东西。连接localhost通常通过一个Unix域套接字文件进行,一般是/tmp/mysql.sock。如果套接字文件...

SQL Server R2 2008中的SQL Server Management Studio 阻止保存要求重新创建表的更改问题的设置方法【图】

在2008中会加入阻止保存要求重新创建表的更改这个选项.症状表现为修改表结构的时候会"阻止"你。SQL Server 2008“阻止保存要求重新创建表的更改”的错误的解决方案是本文我们主要要介绍的内容,情况是这样的:我们在用SQL Server 2008 建完表后,插入或修改任意列时,提示:当用户在在SQL Server 2008企业管理器中更改表结构时,必须要先删除原来的表,然后重新创建新表,才能完成表的更改。如果强行更改会出现以下提示:不允许保存...

Sql Server 使用 SET NOCOUNT { ON | OFF}

作用:阻止在结果中返回受 Transact-Sql 影响的行数。应用:对于一些存储过程或者触发器不返回实际数据(如 插入和删除操作),或者不需要获得 查询得到的数量,那么设置 SET NOCOUNT ON 可以避免向客户端发送 DONE_IN_PROC 消息(也就是不向客户端返回受影响的行数),减少了网络流量,可以显著提高性能。测试:在 Sql Server 2005 设置 SET NOCOUNT ON 那么查询后消息框里显示的是【命令已成功完成。】。如果设置 SET NOCOUNT...

MSSQL 插入数据时候,如果存在则更新的方法分享【代码】

摘要:下文讲述MSSQL中,插入数据时,如果存在则更新,否则就插入数据的方法分享实验环境:sql server 2017 mssql中,我们可以采用 MERGE INTO 关键字实现此功能,当两者匹配成功,则运行***语句,否则运行其它语句,达到插入数据时的判断操作,具体操作方法如下所示: createtable[maomao365.com] (keyId intidentity, info varchar(80) ) goinsertinto[maomao365.com] (info)values(‘sqlblog‘), (‘sqlserver‘),(‘maomao365.com‘...

创建NetCore2.2 Web项目+EFCore Orm+MSSQL(一)【代码】【图】

在空余时间学习下NetCore,记录日常,供参考。1.确保已下载安装NetCore2.2SDK 环境,下载地址:https://dotnet.microsoft.com/download/dotnet-core/2.22.打开VS2017,首先新建一个解决方案,并在解决方案上新建项目操作,选择ASP.NET Core Web 应用程序,点击“确定”。继续,NetCore版本选择ASP.NET Core 2.2,类型选择“Web应用程序”点击确定。3、在appsettings.json添加配置数据库链接字符串,添加后如下图{"Logging": {"Inclu...

SQL Server2005下的安全操作技巧分享

针对与mssql2005的安全,应当针对于2个方面来做,针对于主要的权限及端口。(要是有人说删除不安全的系统存储过程,先说好这个方式只能针对于2000,2005及2008均未发现可以删除的方法,有的话请回复)。 1.端口方面大家都知道mssql默认端口为1433,对于默认端口我一般都有一种想要封掉的冲动,主要是大家只要telnet一下就知道我的数据库是什么了。那么不是主要暴露目标嘛!所以我搭建好mssql后第一件事情就是对1433端口进行修改。修...

msSQL使用表参数【代码】

1使用表参数 2表变量(Table Parameters)可以将整个表数据汇集成一个参数传递给存储过程或SQL语句。它的注意性能开销是将数据汇集成参数(O(数据量))。 3定义了一个表参数jk_users_bulk_insert4 5CREATE TYPE jk_users_bulk_insert AS TABLE ( 6 user_login varchar(60), 7 user_pass varchar(64), 8 user_nicename varchar(50), 9 user_email varchar(100), 10 user_url varchar(100), 11 user_activation_key varchar(60), 12...

SQLServer 的case when语句使用实现统计【代码】

已知有表game_info 如下date_inforesult_info2018-2-4  win      2018-2-4lose2018-2-4win2018-2-4   lose2018-2-5lose2018-2-5  lose2018-2-5lose                                 问如何查询得到如下结果?date_infowinlose2018-2-4222018-2-503 首先创建表create table game_infdate_info not null,result_info varchar(5) check(result_info in(‘win‘,‘lose‘)) );//插入...

Sql Server 中将数字转换为大写金额【代码】

SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER OFF GO CREATE FUNCTION [dbo].[f_numToUpper](@n_LowerMoney numeric(15,2)) RETURNS varchar(200) AS BEGINDeclare @v_LowerStr VARCHAR(200) -- 小写金额 Declare @v_UpperPart VARCHAR(200) Declare @v_UpperStr VARCHAR(200) -- 大写金额Declare @i_I int--四舍五入为指定的精度并删除数据左右空格select @v_LowerStr = LTRIM(RTRIM(STR(@n_LowerMoney,20,2))) ,@i_I = 1,@v_Uppe...

wamp集成环境配置php7.x连接mssql【代码】【图】

一、需准备的文件php7.x支持mssql插件文件:下载地址1(微软官网) 下载地址2(天翼网盘)ODBC Driver FOR SQLSERVER:下载地址1(微软官网) 下载地址2(天翼网盘)WAMP集成环境:php7.x版本均可,5.x的版本需要下载其他的dll文件二、安装流程2.1添加扩展文件运行SQLSRV58 ,点击Browser,选择用于存放dll文件的位置。(放桌面就行,用完直接删,记得要选择指定文件夹,要不然所有的文件全部都会放到桌面,很乱!)程序运行完毕后,...

MSSQLSERVER数据库- LEFT JOIN后面跟着WHERE竟变成内联 解决方法【代码】

在LEFT JOIN后面跟着WHERE竟变成内联。百度后看到这个解决方法。  记录如下: select sre.*, co.description from subscribedratingelement sre leftouterjoin custom_options co on sre.locationInCdr=co.optionvalue where co.optionname=‘LocationInCdr‘; select sre.*, co.description from subscribedratingelement sre leftouterjoin custom_options co on (sre.locationInCdr=co.optionvalue and co.optionname=‘Locat...

将IP地址转换为整型数字的PHP方法、Asp方法和MsSQL方法、MySQL方法

首先我们要先了解一下IP地址转换为整型(严格来说应该说是长整型)的原理~【转换原理】:假设IP为:w.x.y.z,则IP地址转为整型数字的计算公式为:intIP = 256*256*256*w + 256*256*x + 256*y + z【PHP的互转】:PHP的转换方式比较简单,它内置了两个函数int ip2long ( string $ip_address )和 string long2ip ( string $proper_address )可以直接调用使用~【Asp的互转】:自定义函数如下,‘.---------------------------------------...

sqlserver建dblink【代码】

--建立连接exec sp_addlinkedserver‘ITSV‘ ,‘‘ , ‘SQLOLEDB‘ ,‘IP地址不加端口‘exec sp_addlinkedsrvlogin‘ITSV‘ ,‘false‘ ,null , ‘username‘ ,‘password‘ --测试 select* from ITSV.Meetrend.dbo.TcCustomerAuthdrop table TcCustomerAuth从正式库复制数据select * into TcCustomerAuth from ITSV.Meetrend.dbo.TcCustomerAuth; 原文:https://www.cnblogs.com/feifeicui/p/8954395.html

MSSQL 当前数据库中已存在用户或角色,SQLServer2008,错误15023,

原因:sql server中“登录”与“用户”的区别,“登录”用于用户身份验证,而数据库“用户”帐户用于数据库访问和权限验证。登录通过安全识别符 (SID) 与用户关联。将数据库恢复到其他服务器时,数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户。这种情况被称为存在“孤立用户”。此时是不能通过新建登录或者是对同名登录授予对应数据库的“用户”权限来解决登录问题,因为SQL Server会报...

MSSQL-Scripter,一个新的生成T-SQL脚本的SQL Server命令行工具【代码】【图】

这里向大家介绍一个新的生成T-SQL脚本的SQL Server命令行工具:mssql-scripter。它支持在SQL Server、Azure SQL DB以及Azure SQL DW中为数据库生成CREATE和INSERT T-SQL脚本。Mssql-scripter是一个跨平台的命令行工具,功能等同于SQL Server Management Studio中的Generate and Publish Scripts Wizard。咱们能够在Linux、macOS和Windows上使用它生成数据定义语言(DDL-Data Definition Language)和数据操纵语言(DML – Data Man...

原创]access mysql mssql 随机 10条数据的sql语句" target="_blank">[原创]access mysql mssql 随机 10条数据的sql语句

access 随机 10条数据的方法复制代码 代码如下:select * from table order by rnd(id)其中rnd(id)中的id为表中的自增长字段access随机显示记录(不重复)解决方案 复制代码 代码如下:<% ‘-------------------------数据库连接----------------------- Set objConn = Server.CreateObject("ADODB.Connection") objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" &_ "Data Source=" & Server.MapPath("data.mdb") ob...

MSSQL常用函数

declare 定义变量 set 为变量赋值SUBSTRING()函数SUBSTRING ( expression, start, length )expression 字符串、二进制字符串、文本、图像、列或包含列的表达式。请勿使用包含聚合函数的表达式。start 整数或可以隐式转换为 int 的表达式,指定子字符串的开始位置。length 整数或可以隐式转换为 int 的表达式,指定子字符串的长度。CHARINDEX()函数返回字符或者字符串在另一个字符串中的起始位置select * from table_a where charin...

MSSQL case when【代码】

参考链接https://www.cnblogs.com/kevin2013/archive/2010/07/02/1769682.htmlcase when 有两种方式,一个是分支判断,一个是搜索函数。1.分支选择函数select (case(‘a‘) when ‘a‘ then ‘aa‘ when ‘b‘ then ‘bb‘ else ‘无‘ end) 测试 2.搜索函数等待补充原文:https://www.cnblogs.com/Alex-Mercer/p/12785622.html

linux编译安装mssql客户端和配置php连接mssql【代码】【图】

凡是连接数据库,必须安装客户端,我一般写博客都不写原理,但是后来发现回头看自己写的自己都看不懂,所以这章博客会多一点原理性的东西。数据库的连接一般都是在客户端上完成的,MySQL也不例外,安装mysql时一般都会这么安装:#yum install mysql mysql-server上面的mysql就是安装的客户端,mysql-server就是服务端,不安装客户端(mysql)就没办法执行mysql连接命令:mysql -u user -p pass -h -P port 而sqlserver同样需要客户...