数据库相关 - 军军小站|张军博客
SqlServer

Sql Server触发器的原理及应用技巧

触发器是一种特殊的存储过程,它不能被显式地调用,而是在往表中插入记录、更改记录或者删除记录时,当事件发生时,才被自动地激活。2、这样做带来的'功能':触发器可以用来对表实施复杂的完整性约束,保持数据的一致性,当触发器所保护的数据发生改变时,触发器会自动被激活,响应同时执行一定的操作(对其它相关表的操作),从而保证对数据的不完整性约束或不正确的修改。触发器可以查询其它表,同时也可以执行复杂的T-SQL语句。触发器和引发触发器执行的命令被当作一次事务处理,因此

系统 2019-08-12 01:52:14 2270

SqlServer

SQL Server 事务嵌套

原文:SQLServer事务嵌套示例代码:DECLARE@TranCounterINT;SET@TranCounter=@@TRANCOUNT;IF@TranCounter>0--Procedurecalledwhenthereis--anactivetransaction.--Createasavepointtobeable--torollbackonlytheworkdone--intheprocedureifthereisan--error.SAVE

系统 2019-08-12 01:32:20 2270

SqlServer

SQL Server 无法修改表,超时时间已到

SQLServer一张表存储大量数据的时候,对表结构作修改就非常耗时了。其实耗时还好说,我们年轻,有的是时间……最怕的是它觉得太耗时就放弃给你修改了。这几天想给某个表加个字段,就遇到了这样的问题。点了保存后过一段时间,就会弹出个对话框说:无法修改表。超时时间已到,在操作完成之前超时时间已过或服务器未响应解决办法:在SQLServerManagementStudio里,通过菜单“工具-选项”打开选项对话框。在左侧寻找“设计器-表设计器和数据库设计器”,然后在

系统 2019-08-12 01:54:16 2269

数据库相关

适合才是正确的 之 “关于业务逻辑加入存储过程

业务逻辑在一个系统中可放的地方很多,有的人选择放在存储过程中,有的人会选择放在业务组件中,这些方式都可以进行业务逻辑的判断。既然提供了这些方式都可以实现业务逻辑的判断,就证明它们存在的合理性。就像在设计的过程中,很多人会将进行条件选择语句封装到不同的类的重构,以满足设计中的”开-闭“原则,这样做有他的道理。但并不是说以后就不用条件转移语句了,要不开发语言怎么会支持条件转移语法呢。我们要根据具体的情况选择是否重构,比如我们只需要创建一个对象,如果进行重构,试

系统 2019-08-12 01:53:48 2269

数据库相关

SQL增加、删除、更改表中的字段名

1.向表中添加新的字段altertabletable_nameaddcolumn_namevarchar2(20)notnull2.删除表中的一个字段deletetabletable_namecolumncolumn_name3.修改表中的一个字段名altertabletable_namerenamecolumnoldnametonewname4.添加主键约束altertable表名addconstraint约束名primarykey(列名)5.添加唯一约

系统 2019-08-12 01:53:31 2269

Oracle

oracle如何导出导出

问题:1、使用oracledump方式导出的数据在导入的时候不能随意选择一张表的数据进行导入;一般业务的表的数量都有1000左右,在出现由于某张表数据异常导致的故障时,用dump文件进行恢复基本不可行或者很费事;2、表存在外键约束和触发器,使用oracledumpimport方式导入表的时候不能非常简单的禁止触发器和外键,导致大量错误产生,导入的表的数据不全,部分表数据没有导入;3、当修改了某些表的数据后需要将这些表的数据恢复到测试环境搭建时的数据,imp

系统 2019-08-12 01:53:21 2269

数据库相关

数据库随机取几条记录

Access:selecttopn*fromtableorderbyrnd(id)‘id为数据库的自动编号字段SqlServer:selecttopn*fromtableorderbynewid()MySQL:SELECT*FROMtableorderbyrand()limit20;Oracle:select*fromtableorderbydbms_random.value()数据库随机取几条记录

系统 2019-08-12 01:52:44 2269

Oracle

Oracle数据库SQL语句操作大全汇总

数据库各个表空间增长情况的检查:SQL>SELECTA.TABLESPACE_NAME,(1-(A.TOTAL)/B.TOTAL)*100USED_PERCENTFROM(SELECTTABLESPACE_NAME,SUM(BYTES)TOTALFROMDBA_FREE_SPACEGROUPBYTABLESPACE_NAME)A,(SELECTTABLESPACE_NAME,SUM(BYTES)TOTALFROMDBA_DATA_FILESGROUPBYT

系统 2019-08-12 01:52:36 2269

数据库相关

MongoDB学习笔记(8)--索引及优化索引

MongoDB提供了多样性的索引支持,索引信息被保存在system.indexes中,且默认总是为_id创建索引,它的索引使用基本和MySQL等关系型数据库一样。其实可以这样说说,索引是凌驾于数据存储系统之上的另一层系统,所以各种结构迥异的存储都有相同或相似的索引实现及使用接口并不足为奇。基础索引在字段age上创建索引,1(升序);-1(降序)db.t3.ensureIndex({age:1})db.t3.getIndexes();_id是创建表的时候自动

系统 2019-08-12 01:33:38 2269

数据库相关

wp7 中Panorama控件 title 字体大小 样式的设置

摘要:如果我们建立一个新的Panorama控件.如果title是中文默认会是下面这个样子,上面部分会被截断.英文看起来还好.中文的话很不爽.如果我们想把字体放小一些,或是像下移动一些.我们可以编缉title的模板.controls:Panoramac...如果我们建立一个新的Panorama控件.如果title是中文默认会是下面这个样子,上面部分会被截断.英文看起来还好.中文的话很不爽.如果我们想把字体放小一些,或是像下移动一些.我们可以编缉title的模

系统 2019-08-12 01:32:52 2269

Oracle

Oracle数据库常用命令(数据库的基本信息)

1、得到数据库名和创建日期SELECTname,created,log_mode,open_modeFROMv$database;2、ORACLE数据库的计算机的主机名,ORACLE数据库的实例名及ORACLE数据库管理系统的版本信息SELECThost_name,instance_name,versionFROMv$instance;3、为了知道oracle数据库版本的一些特殊信息select*fromv$version;4、获取控制文件名字select

系统 2019-08-12 01:52:20 2268

数据库相关

多层次的Group

本文讲述了对一个ItemsControl中的Items如何实现多个层次的Group。要注意的几个地方是:1.ItemContainerStyle

系统 2019-08-12 01:33:57 2268

数据库相关

SQL游标原理和使用方法

在数据库开发过程中,当你检索的数据只是一条记录时,你所编写的事务语句代码往往使用SELECTINSERT语句。但是我们常常会遇到这样情况,即从某一结果集中逐一地读取一条记录。那么如何解决这种问题呢?游标为我们提供了一种极为优秀的解决方案。1.1游标和游标的优点在数据库中,游标是一个十分重要的概念。游标提供了一种对从表中检索出的数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标总是与一条T_SQL选

系统 2019-08-12 01:51:37 2267

数据库相关

用mmap()共享内存 - 我的天地

用mmap()共享内存-我的天地用mmap()共享内存rurutiaposted@2007年4月28日07:48in编程笔记withtags共享内存mmap,3775阅读接口:void*mmap(void*start,size_tlength,intport,intflags,intfd,off_toffset)正常返回映射区的地址,出错返回-1。start为映射区域的首地址,一般赋值NULL通过系统自动分配。length为区域大小。fd为映射文件的文件描

系统 2019-08-12 01:51:28 2267

数据库相关

SQL基础4

--局部临时表:--临时表的表名有一个前缀#--临时表只对当前会话有效,只要将连接断开,再次打开则临时表就没有了。--如果临时表是在存储过程中创建的,则当存储过程执行完毕,则自动销毁。类似于c#变量的作用域范围。----全局临时表:--前缀##--多个会话中可以共享全局临时表--只有创建该表的会话断开时才会删除全局临时表,如果这时,正有其他会话在访问该临时表,则会等待该会话结束后删除临时表。createtable#student(usernamenvarc

系统 2019-08-12 01:32:55 2267