`
lesorb
  • 浏览: 123461 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

sql server存储过程注意点点

阅读更多
sql server存储过程是利用其提供的Transact-SQL语言所编写的程序。
    它所遵循的几个原则:
 1)、变量说明
 2)、ANSI兼容的SQL命令(Select,Update….)
 3)、一般流程控制命令(if…else…、while….)
 4)、内部函数

    它所需要注意的几个常用设置:
  a).      SET ANSI_NULLS {ON | OFF}
  b).      SET QUOTED_IDENTIFIER ON
    这些是 SQL-92 设置语句,使 SQL Server 2000/2005 遵从 SQL-92 规则。SQL-92 标准要求对空值的等于 (=) 或不等于 (<>) 比较取值为 FALSE。当 SET ANSI_NULLS 为 ON 时,即使 column_name 中存在空值,使用 WHERE column_name = NULL 的 SELECT 语句仍返回零行。即使 column_name 中存在非空值,使用 WHERE column_name <> NULL 的 SELECT 语句仍返回零行。
    当 SET ANSI_NULLS 为 OFF 时,等于 (=) 和不等于 (<>) 比较运算符不遵从 SQL-92 标准。使用 WHERE column_name = NULL 的 SELECT 语句返回 column_name 中含有空值的行。使用 WHERE column_name <> NULL 的 SELECT 语句返回列中含有非空值的行。
    当 SET QUOTED_IDENTIFIER 为 ON 时,标识符可以由双引号分隔,而文字必须由单引号分隔。当 SET QUOTED_IDENTIFIER 为 OFF 时,标识符不可加引号,且必须符合所有 Transact-SQL 标识符规则。

如果涉及到事务,事实上,在实际开发中这是不可避免的,我们应该备加小心:
   c). BEGIN TRANSACTION     开始事务
   d). COMMIT TRANSACTION    提交事务
   e). ROLLBACK TRANSACTION  回滚事务
   f). SET IMPLICIT_RANSACTION ON   隐式事务
脏读 (dirty read):一个事务读取了另一个事务尚未提交的更新,就叫做脏读。
不可重复读(nonrepeatable read):如果事务二能够看到事务一所提交的数据更新,就意味着出了不可重复读型事务缺陷。
幻影行(phantom rows):当一个事务的select语句返回的结果受到另一个事务的影响而发生改变的现象叫做幻影行。

执行事务的步骤
1.数据库开始状态
2.数据更新命令
3.记录事务日志
4.事务提交
5.更新数据文件
6.事务结束
0
0
分享到:
评论

相关推荐

    车站售票管理系统【SQLServer数据库+课程设计文档】

    车站售票管理系统【SQLServer数据库+课程设计文档】 1. 系统需求分析 1.1系统调查 1.2用户需求 2.系统逻辑方案 2.1数据流图(简称为DFD) 2.2数据字典(简称为DD) 2.2.1数据项 3.系统总体结构设计 3.1软件...

    剑儿SQL Server内存释放器 V3.3

    还有一些其他类型的缓存,如执行存储过程时,Sql Server需要先编译再运行,编译后的结果也会缓存起来,下一次就无需再次编译了。 这个软件就是为了解决大家的这个问题. 2012年8月11日 3.3版本 1.修正一些软件错误...

    SQL Server内存释放器 v3.3

    软件介绍 大家都知道 sql的使用时间越长.其占用的内存数就越大.由于Sql Server对于...还有一些其他类型的缓存,如执行存储过程时,Sql Server需要先编译再运行,编译后的结果也会缓存起来,下一次就无需再次编译了。

    剑儿SQL Server内存释放器 v3.3.zip

    还有一些其他类型的缓存,如执行存储过程时,Sql Server需要先编译再运行,编译后的结果也会缓存起来,下一次就无需再次编译了。 这个软件就是为了解决大家的这个问题。 剑儿SQL Server内存释放器 v3.2更新内容: ...

    剑儿SQL Server内存释放器1.0

    还有一些其他类型的缓存,如执行存储过程时,Sql Server需要先编译再运行,编译后的结果也会缓存起来,下一次就无需再次编译了。 这个软件就是为了解决大家的这个问题. ========== 作者:剑儿 QQ:157322145 ★...

    SqlServer+jsp+mvc三层架构实现的易买网购物商城平台

    综上所述,"SqlServer+jsp+mvc三层架构实现的易买网购物商城平台"是一个综合运用了现代Web开发技术的项目,它利用SQL Server作为数据存储,JSP和MVC模式实现前后端分离,同时借助JSON和Ajax优化用户体验。...

    Java SQL server 数据库课程设计 图书馆管理系统

    在图书馆管理系统中,SQL Server将存储图书信息(如书名、作者、出版社、库存量等)、借阅记录、会员信息等数据。SQL语句将被用来创建、查询、更新和删除数据库中的记录。 课程设计的核心部分将是数据库设计。这...

    SQLserver+C#实现的KTV点歌系统 有数据库歌手图片 各种样式

    在本项目中,"SQLserver+C#实现的KTV点歌系统 有数据库歌手图片 各种样式",我们主要探讨的是如何利用Microsoft SQL Server数据库和C#编程语言来构建一个功能完备的KTV点歌系统。这个系统不仅包含基础的点歌功能,还...

    SQLServer系统表研究论文.doc

    例如,如果需要打印出整个数据库的所有表结构,SQL Server的内置系统存储过程`SP_COLUMNS`只能查询单个表,这在处理大量表时显得效率低下。为了克服这个问题,可以通过编写自定义的存储过程,利用`SYSOBJECTS`、`...

    USF_Aviation_Project:USF Aviation项目SQL Server代码

    在这个项目中,SQL Server被用作核心的数据存储和管理平台,为用户提供高效、稳定的数据服务。以下是对该项目中涉及的SQL Server相关知识点的详细解析: 1. **数据库设计**:项目可能包含了多个数据库表,每个表...

    (免费)Net实战源码--Asp.Net点点旅游网.rar

    【SqlServer】 Sql Server是微软公司开发的关系型数据库管理系统,支持多种数据库操作,包括数据存储、查询、备份、恢复等。在Asp.Net应用中,通常使用Sql Server来存储和管理应用的数据,如用户信息、订单数据等。...

    基于SQL人事管理系统设计与实现数据库课程设计.doc

    而SQL SERVER 2005作为数据库管理系统,具备图形化的管理工具,支持集中式管理、多客户端应用程序、数据复制和分布式事务处理等功能,提供了强大的数据存储和处理能力。 在开发环境中,ASP技术允许开发者使用如C#、...

    一点点成就感

    数据库系统如Oracle、MySQL、SQL Server等提供了丰富的功能,包括ACID(原子性、一致性、隔离性和持久性)属性以保证数据的完整性,事务处理以确保数据操作的正确性,以及索引和查询优化来提升数据访问速度。...

    毕业设计:图书馆管理信息系统(源代码)

    本文理论部分主要针对数据库设计技术、存储过程技术、ADO.NET技术以及用SQL Server .NET Framework 数据提供程序访问SQLserver2000数据库技术这四个方面进行了研究和探讨。 图书馆管理信息系统的每一行代码都是...

    mysql学习笔记,记录生活点点滴滴

    关系型数据库有Oracle、DB2、SQL Server、MySQL等,非关系型数据库有memcached、mongodb、redis等。 关系型数据库 关系型数据库是一种建立在关系模型上的数据库。关系模型包含三个方面:数据结构、操作指令集合、...

    高校系统的学籍管理论文.doc

    数据库设计是系统的核心部分,使用Microsoft SQL Server 2008作为数据存储工具。数据库包含了多个关键表,如教师信息、教学计划、学生信息、成绩、课程等,这些表之间存在数据完整性约束。为了提升系统性能和安全性...

    毕业设计:数据存储与交换系统设计(源代码)

    该系统综合运用了.NET框架的System.IO命名空间的文件与目录类来对文件的上传目录、路径操作和下载删除操作,再运用ADO.NET技术访问SQL Server数据库对文件信息的查询、插入、修改、删除操作。通过ADO.NET提供的3个...

    reddit-dhtk-ps:Reddit数据收集工具包

    下载Reddit链接和注释数据的PowerShell模块,将它们存储在SQL Server中以供以后查看和分析。 无需登录帐户。 先决条件 SQL服务器 这主要是为了在本地运行SQL Server实例上运行。 我已经使用LocalDB(Visual Studio...

Global site tag (gtag.js) - Google Analytics