SQL SERVER 数据库
文章平均质量分 51
jiatongtong
这个作者很懒,什么都没留下…
展开
-
SQL Server链接服务器查询慢处理
检查连接服务器以下属性:原创 2023-11-27 15:53:48 · 298 阅读 · 0 评论 -
SQLSERVER NULL值的XML处理
介绍数据库中的null值如何正确生成xml,以及xml中的某些null值如何被正确的识别到sqlserver中。原创 2022-07-14 15:44:36 · 1058 阅读 · 1 评论 -
SQL Server 2000 获取错误信息(不是在catch块中,以及在2000以下数据库)
在sqlserver 2000数据库中,没有像sqlserver 2005一样的try...catch语句,然后可以在catch语句中获取错误信息,针对这种情况需要开发一个过程来获取错误信息,具体如下:set ANSI_NULLS ONset QUOTED_IDENTIFIER ONGO--Mudassar Khan/*PRINT 1/0DECLARE @err_num INTSELECT @err_num=@@ERRORDECLARE @errMsg VARCHAR(1000)EX原创 2021-09-22 09:26:01 · 725 阅读 · 0 评论 -
SQL Server获取数据库服务器相关信息
在实际开发过程中,可能会遇到动态根据当前服务器版本版本不同来执行不同代码;所以,需要一个函数可以检测当前数据库服务器的相关信息,具体代码如下:/******************************************* 文 件 名:UDF_GetServerInfo 创 建 人:jiazhitong 创建时间:2021/9/20 修 改 人:原创 2021-09-22 09:25:08 · 400 阅读 · 0 评论 -
SQL Server获取指定长度的单字节字符。(注意:可能实际长度比指定长度短,将截断字符串或二进制数据处理)
在数据库代码开发过程,会有时遇到将一个nvarchar的字段(或者即含有双字节字符,又包含单字节字符的字段)赋值给一个varchar的字段。这时如果varchar字段不是足够长,比如:nvarchar字段和varchar字段都是100个长度,我们在使用nvarchar字段给varchar赋值的时候,会报字符串被截断的错误(即:将截断字符串或二进制数据。),所以有必要写一个函数来保证不使得插入的字符超出varchar字段的最大长度。代码如下:CREATE FUNCTION UDF_GetSelByt原创 2021-09-22 09:04:01 · 743 阅读 · 0 评论 -
SQL Server CHAR Data Type
原文地址:https://www.sqlservertutorial.net/sql-server-basics/sql-server-char/Summary: in this tutorial, you will learn how to use the SQL Server CHAR data type to store the fixed-length, non-Unicode character strings in the database.Overview of the SQL Ser转载 2020-12-18 00:18:09 · 171 阅读 · 0 评论 -
客户端存储空字符串后,为什么返回的数据却是一串空格?
在后台使用SQL Server数据库时,如果一个表格列定义为了Char类型,比如:Char(3);这时如果前端传过来的字符串长度小于3时,那么sqlserver会自动在字符串后面补上缺少个数的空格,然后进行存储;比如:create test table(name char(3))insert test(name)values('ab')实际上后台存储的是 ab+一个空格;这一点尤其要引起前台注意,特别是在有用到这个存储的值进行逻辑判断时,一定要记得有可能后面跟着若干个空格原创 2020-12-18 00:04:23 · 436 阅读 · 0 评论 -
客户端存储空字符串后,为什么返回的数据却是一串空格?
在后台使用SQL Server数据库时,如果一个表格列定义为了Char类型,比如:Char(3);这时如果前端传过来的字符串长度小于3时,那么sqlserver会自动在字符串后面补上缺少个数的空格,然后进行存储;比如:create test table(name char(3))insert test(name)values('ab')实际上后台存储的是 ab+一个空格;这一点尤其要引起前台注意,特别是在有用到这个存储的值进行逻辑判断时,一定要记得有可能后面跟..原创 2023-11-27 15:49:37 · 237 阅读 · 0 评论 -
SQL Server Connection flow under DMV
原创 2020-03-06 11:29:16 · 612 阅读 · 0 评论 -
SQL SERVER中获取错误号
使用ERROR_NUMBER函数;Return TypesintReturn ValueWhen called in a CATCH block,ERROR_NUMBERreturns the error number of the error that caused the CATCH block to run.ERROR_NUMBERreturns NULL when...原创 2019-11-21 17:30:21 · 632 阅读 · 0 评论 -
SQL SERVER中的几种连接,以及各自的最终效果
SqlServer中包含以下几种连接:Inner Join:要求指定字段的值,必须在关联的两个数据中同时存在; Left Join:要求指定字段的值,在两个数据集中同时存在,或者在左边数据集中存在,但是在右边数据集中不存在的; Right Join:要求指定字段的值,在两个数据集中同时存在,或者在右边数据集中存在,但是在左边数据集中不存在的; Full Join :最终结果是,指定字段值...原创 2019-10-17 11:48:27 · 411 阅读 · 0 评论 -
SQL Server DDL Triggers to Track All Database Changes(用SQLServer DDL 触发器跟踪所有数据库变化)
https://www.mssqltips.com/sqlservertip/2085/sql-server-ddl-triggers-to-track-all-database-changes/By: Aaron Bertrand | Last Updated: 2010-08-09 | Comments (50) | Related Tips: More > ...转载 2018-11-22 09:28:35 · 289 阅读 · 0 评论 -
查看SqlServer数据库上面脚本修改信息以及修改日志
只是查看简单的修改时间信息,参照下面语句:SELECT name , create_date --创建时间 , modify_date --修改时间FROM YarnStoreDB.sys.objectsWHERE type = 'P' --注意如果是函数则为fn AND NAME='存储过程名字'ORDER BY modify_date DESC...原创 2018-11-21 18:12:30 · 6936 阅读 · 0 评论 -
SQLServer如何在批量插入后,获取批量插入的自增列的值
解决方法如下:Use the OUTPUT functionality to grab all the INSERTED Id back into a table.使用output 功能获取所有插入的id,然后插入一个表中注:如果不想用批量插入id做关联的其他业务逻辑,而只是简单的返回给前台,那么可以直接使用output功能返回这些id,不需要插入表。 例子如下:DECL...原创 2018-11-07 16:04:09 · 3823 阅读 · 0 评论 -
SQL Server中空记录记录集与NULL
经过试验,在SQL Server中使用select进行取值判断时,空记录集和NULL值,在与NULL进行比较时,结果都是true。参见以下示例脚本:1、返回空记录集与null进行比较IF (SELECT 1WHERE 1=0) IS NULLBEGIN PRINT 'NULL'END执行结果: NULL 2、返回null与null进行比较IF (SELE...原创 2018-09-27 09:58:21 · 502 阅读 · 0 评论 -
sqlserver join多条明细记录更新主记录
首先、这样的更新是可以被执行的,即,可以写出一个这个样update语句,但是实际执行过后,主记录究竟被更新为从记录的那个值,并不能明确确定。退一步讲,即便在SQL Server相关语法及规则的规定的前提下可以确定主记录被从记录的那个值更新了,但是实际中也不要这样用,这样用,太艰涩,后续维护让人很难理解,再有也不能保证这样潜在隐含的语法规则将来会不会变掉,所以不要这样写。DECLARE @...原创 2018-08-08 15:58:43 · 502 阅读 · 0 评论 -
关于SqlServer数据库连接串在config文件中问题总结
web.config中配置sqlserver 连接字符串1、如果连接字符串中含有特殊字符应该如何处理?因为config文件是xml文件,所以一些xml保留的关键字是不能直接写在连接串中的。那么如果在连接串中含有了这些特殊字符,我们应该怎样处理呢?比如:<add name="DefaultConnection" connectionString="Data Source=datab...原创 2018-08-03 13:55:09 · 1784 阅读 · 0 评论 -
关于sp_executesql
SQL的参数顺序,和存储过程定义时的参数顺序一致,否则会导致参数赋值混乱如下:exec sp_executesql --SQLN'EXEC AISDB.dbo.USP_GetMessgeInfo @Order_Type, @Module_Name, ...原创 2018-06-19 05:28:53 · 249 阅读 · 0 评论 -
How to get month name from date in Sql Server(如何从时间中获取月份名称)
June 7, 2015Sql Serverconvert date to month name, DATENAME, DateName for Month Name, DATENAME function, FORMAT, FORMAT function, Month name from date, Month name from date in sql, Monthname from date,...转载 2018-06-15 17:19:43 · 793 阅读 · 0 评论 -
如何在sqlserver可空列中创建唯一约束,但是允许多个null值
SQL Server 2008 +You can create a unique index that accept multiple NULLs with a WHERE clause. See the answer below.What you're looking for is indeed part of the ANSI standards SQL:92, SQL:1999 and SQ...转载 2018-05-31 14:58:01 · 5145 阅读 · 0 评论 -
处理:SqlServer FOR XML 无法对节点 'NoName' 的数据进行序列化,因为它包含在 XML 中不允许出现的字符(0x0000)。
处理:SqlServer FOR XML 无法对节点 'NoName' 的数据进行序列化,因为它包含在 XML 中不允许出现的字符(0x0000)。原创 2016-11-23 19:22:01 · 2961 阅读 · 0 评论 -
列类型与unpivot列表中其他列类型冲突
列类型与unpivot列表中其他列类型冲突原创 2016-10-24 17:01:18 · 10280 阅读 · 0 评论 -
返回动态SQL语句中执行结果值
返回动态SQL语句中执行结果值原创 2016-05-16 18:18:36 · 2371 阅读 · 0 评论 -
Handling special characters with FOR XML PATH('')(处理xml输出的特殊字符,如<等)
Handling special characters with FOR XML PATH('')(处理xml输出的特殊字符,如<等)转载 2016-04-13 15:15:21 · 1325 阅读 · 0 评论 -
Get Information About DDL Triggers(sqlserver 获取数据库、服务器级触发器)
sqlserver 获取数据库或者服务器级触发器转载 2016-03-24 18:44:51 · 496 阅读 · 0 评论 -
关于SQLServer中过程执行中,对过程进行修改的说明
如果Sql server 正在执行存储过程,还没有结束;如果这时对存储过程进行修改是可以成功的,即使用alter procedure可以修改存储过程,但是对于正在执行的存储过程会报错,提示“在存储过程执行过程中,原始的过程发生了改变”。...原创 2018-12-13 10:22:37 · 523 阅读 · 0 评论 -
SQLServer按行循环表
1、使用While...循环一个表首先保证表有一个唯一值的列,注意只需要值唯一,不需要保证值连续; 如果列中存在重复的值,那么重复的值,只会有一个会被循环到;declare @au_id char( 11 )select @au_id = min( au_id ) from authorswhile @au_id is not nullbegin select * fr...原创 2018-12-06 16:52:20 · 3426 阅读 · 0 评论 -
SQL SERVER 中的Schema详解
原文:http://bhxkb2009.diandian.com/post/2012-04-01/18522093 以往 SQL Server 内的对象命名是“服务器.数据库.用户名.对象”,但新版的对象命名改为“服务器.数据库.Schema.对象”。这让你规划数据库对象命名时更有弹性。 架构是形成单个命名空间的数据库实体的集合。命名空间是一个集合,其中每个元素的名称都是唯一的转载 2013-07-26 19:01:42 · 1654 阅读 · 0 评论 -
明明字符串完全一样,为什么条件不执行?
在sqlserver中检查字符串的时候,切忌使用select输出的表格中数据(这些数据有时会误导你);如下面脚本:DECLARE @tmpVar1 VARCHAR(200)='55057400@WARM ORANGE 011 SP09 011'DECLARE @tmpVar2 VARCHAR(200)='55057400@WARM ORANGE 011 SP09 011'SELEC...原创 2019-09-27 16:45:56 · 430 阅读 · 0 评论 -
Why SQL Updates Fail – Five Reasons(为什么SQL SERVER更新失败-五个原因)
"The SQL command ran, there's no error message but nothing changed! What's going on? Do you think it's a virus? Maybe there's a bug in .NET!"The junior programmer was almost in tears when he came to...翻译 2019-09-25 17:39:55 · 632 阅读 · 0 评论 -
LEN() vs DATALENGTH() in SQL Server
When usingT-SQLinSQL Server(or Azure) theLEN()andDATALENGTH()functions will often return the same result, but not always. There are some cases where these functions will return completely diff...转载 2019-08-17 20:27:59 · 322 阅读 · 0 评论 -
Converting Between Base 2, 10 and 16 in T-SQL
There are manynumeral systems, the most common ones in computer science beingbinary(base 2),decimal(base 10) andhexadecimal(base 16). All numbers can be expressed in either system and you may n...转载 2019-08-17 20:25:59 · 215 阅读 · 0 评论 -
Is Sybase DB Syntax Same As Sql Server Database
原文地址:https://www.mypassionfor.net/2016/04/21/is-sybase-db-syntax-same-as-sql-server-database/Sybase is another Relational Database Management System (RDBMS), it has long well established history. T...转载 2019-07-26 11:35:46 · 149 阅读 · 0 评论 -
Microsoft SQL Server, Sybase Adaptive Server, and Oracle Compared
原文:https://docs.oracle.com/cd/B10501_01/win.920/a97248/ch2.htmThis chapter contains information comparing the Microsoft SQL Server and Sybase Adaptive Server database and the Oracle database. It ...转载 2019-07-26 11:29:57 · 945 阅读 · 0 评论 -
SET ANSI_NULLS, NOCOUNT and QUOTED_IDENTIFIER.
ermrlehkara,2015-12-30(first published:2015-12-17)Hi Guys,When you generate ascript to create a Stored Procedure, belowthree statements are generate by default.SET ANSI_NULLS onSET NOCOU...转载 2019-07-24 18:16:31 · 202 阅读 · 0 评论 -
SET Statements (Transact-SQL)
APPLIES TO:SQL ServerAzure SQL DatabaseAzure SQL Data WarehouseParallel Data WarehouseThe Transact-SQL programming language provides several SET statements that change the current session handli...转载 2019-07-24 18:13:56 · 488 阅读 · 0 评论 -
Hash Algorithms – How does SQL Server store Passwords?
https://sqlity.net/en/2460/sql-password-hash/IntroductionI am often asked how SQL Server protects the passwords for SQL Logins. We know already that the passwords are hashed and that the hashed va...转载 2019-08-17 20:21:33 · 260 阅读 · 0 评论 -
SELECT 失败,因为下列 SET 选项的设置不正确: 'QUOTED_IDENTIFIER'。问题处理
错误提示:SELECT 失败,因为下列 SET 选项的设置不正确: 'QUOTED_IDENTIFIER'。请确保 SET 选项正确无误,可以用于 计算列上的索引视图和/或索引和/或筛选的索引和/或查询通知和/或 XML 数据类型方法和/或空间索引操作。。错误再现:--SET QUOTED_IDENTIFIER ON --GOCREATE PROCEDURE usp_tes...原创 2019-07-23 20:46:59 · 7217 阅读 · 1 评论 -
Data types (Transact-SQL)
APPLIES TO:SQL Server (starting with 2008)Azure SQL DatabaseAzure SQL Data WarehouseParallel Data WarehouseIn SQL Server, each column, local variable, expression, and parameter has a related dat...转载 2019-07-10 11:02:28 · 200 阅读 · 0 评论 -
SQL Server Rounding Methods
byGeorge Mastros (gmmastros)on December 11, 2008 in categoryData Modelling and Designhttps://blogs.lessthandot.com/index.php/datamgmt/datadesign/sql-server-rounding-methods/There are various wa...转载 2019-07-12 17:51:19 · 245 阅读 · 0 评论