sqlserver锁机制(转载)
[导读: 各种大型数据库所采用的锁的基本理论是一致的,但在具体实现上各有差别。SQL Server更强调由系统来管理锁。在用户有SQL请求时,系统分析请求,自动在满足锁定条件和系统性能之间为数据库加上适当的锁,同时系统在运行期间常常自动进行优化处理,实行动态加锁。对于一般的用户而言,通过系统的自动锁定管理机制基本可以满足使用要求,但如果对数据安全、数据库完整性和一致性有特殊要求,就需要了解SQL Server的锁机制,掌握数据库锁定方法。] 锁是数据库中的一个非常重要的概念,它主要用于多用户环境下保证数据库完整性和一致性。
架构师培训入门知识体系树
架构师培训入门知识体系树本课程针对软件团队中的架构师和专业设计人员,全面阐述架构的范围,把握方法,以及关键实践。涉及:应用架构,逻辑架构,实现架构。在课程中,将结合实际案例,讲解架构设计的技术:变化分解,模式,分层,分解,抽象,封装,接口隔离,扩展配置,美学素质等等。在每个技术层面,都将结合案例深入地讲解。同时,结合项目关键风险,讲解如何根据项目目标和环境进行架构的权衡与取舍。课程还将针对软件开发中的比较常见的通用性的架构机制进行深入实践性的剖析:数据持久化框架的设计,表示层框架设计,控制逻辑层
系统架构师的修炼
系统架构师的修炼首先,何谓系统架构师?IBM工程师的说明是:架构师的主要责任是提供开发人员和项目经理之间的共用沟通媒体。他们负责让业务规则及需求与工程实践及限制相适应,以确保成功中文Wiki上的说明是:系统架构师负责设计系统整体架构,从需求到设计的每个细节都要考虑到,把握整个项目,使设计的项目尽量效率高,开发容易,维护方便,升级简单这两个解释,加起来基本说明了系统架构师的定义。JAVA系统架构师应该看的几本书Thinking in JavaEffective JavaUML基础、案例与应用UML入门提高软件工匠设计模式——可复用面向对象软件的
performance-tuning
1.web环境,具体框架的一些与性能相关的设置http://struts.apache.org/2.0.11/docs/performance-tuning.html 2.distributed ehcache设置在一次项目中,有一位同事配置了distributed ehcache,没有通知我,当时我们的应用在局域网内好几台机器上布署了,测试在A机器上一天,或者一个上午,会发现有几次服务很慢,接下来就不能进行其他任何操作同时,再到另一台机器上测试也有同样的问题,但是在我们开发环境下就没有这个问题。我找来性能测试工具,却测试不出到底哪个模块中有资源泄露的问题,日志中就看到,有自动去查找并访问局域网内其他
人月神话
1. 编程的快乐在于它不仅满足了我们内心深处进行创造的渴望,而且还唤醒了每个人内心的情感(人月神话--焦油坑) A ship on the beach is a lighthouse to the sea. DUTCH PROVERBGood cooking takes time.If you are made to wait,it is to server you better,and please you.MENU OF RESTAURANT ANTOINE, NEWORLEANS2. 人月神话(人月神话)向进度落后的项目中增加人手只会使进度更加落后Adding manpower to a late software project makes it later.[@more@]
一个伤心的梦
昨天晚上做了一个梦,梦见和弟弟,堂兄堂弟们一起上山看牛,结果走散了,这时候伯找我们找得很着急,好不容易都找到了,回到家坐在一桌,我看到伯父感觉十分眼熟,但是又好久不见了,我对他说“伯伯,好久没看到你这张脸了”刚准备好好跟他聊聊家常,这时候他说“我要去田里打药水了”。我心里一酸,就大哭了起来,有眼泪,十分伤心,因为我知道他一去我就再见不到这么真实的一张脸了,因为伯伯已经去世好整整四年了。结果从梦中哭醒了。醒来后又哭了许久。好久没有这种伤心的感觉。[@more@]
jetty,tomcat URI传中文参数乱码的解决办法
tomcat: server.xml中connector中加上:useBodyEncodingForURI="true"example:<Connector port="8089" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="1000" connectionTimeout="20000" disableUploadTimeout="true" useBodyEncodingForURI="true"/>Jett
sqlserver大数批量update时死锁的问题及解决方案
大数据量sqlserver 出现并发死锁 UPDATE recruit_allocate SET remark ='学生的学籍号与姓名不匹配',flag = 1 WHERE unitivecode IS NOT NULL AND len(unitivecode)>0 AND NOT EXISTS(SELECT 1 FROM student_info WHERE stuname = recruit_allocate.stuname AND unitivecode = recruit_allocate.unitivecode) AND is_allocate = 0 AND section = 2 AND operateguid = '516E1637-7895-4020-A8FD-73353AD4B5B3'AND rst_subject_id = '80EB6C0B-C506-4556-9A05-4C191970D7A5我这种写法不能并发因为里面有个exists子句访问的是张大表并发以
sqlserver查询时不加锁
sqlserver查询时不加锁: 因为sqlserver查询时会自动加上锁,这样会经常导致死锁发生,我们可以查询时不加锁写法如下: select * from fpf_appsync with (NOLOCK) [@more@]
sqlserver 改名
if exists (select 1 from sysobjects a,syscolumns b where a.id = object_id('recruit_allocate') and a.id = b.id and b.name = 'modify_date') exec sp_rename N'recruit_allocate.modify_date',N'allocate_date',N'column' go[@more@]
ORACLE数据库里表导入SQL Server数据库
ORACLE数据库里表导入SQL Server数据库1、在目的SQL Server数据库服务器上安装ORACLE Client软件或者ORACLE ODBC Driver.通过oracle客户端,在netmanager中建立“服务(TNS server)”,并测试连接上oracle数据库正常2、在sqlserver的DTS(导入和导出数据工具)进行(1)选择数据源: 数据源:oracle in oracle9i 选择:用户/系统DSN: 点击新建DSN:选择数据源类型:系统数据源, 下一步:选择驱动程序:oracle in oracle9i,下一步,完成 , 进入oracle odbc driver configration页面 再输入:datasorce name:GZDS TNS server
oracle 9i的数据库的dmp导入到10G数据库
9i的数据导入到10G数据,要用9i的客户端来导,先安装9i的客户端,然后通过net manager建立一个“服务命名”,连接到10G的数据库,并测试连通,(10G安装库的服务器防火墙要关掉)再到cmd命令行模式下通过imp命令导入,两端数据库字符集要一样,再创建好一个用户,zengal,并分配足够大小的表空间给他,同时赋给相关权限imp username/password@sid fromuser=username touser=username file=dmp_file_path log=logfile.log buffer=3000000 commit=y imp zengal/zengalpass@gz fromuser=testman touser=zengal file=f:/gz/20070612.dmp buffer
同一个server内将数据从A数据库导到B数据库
同一个server内将数据从A数据库导到B数据库1> insert into b..b_column select * from a..a_column2> go(31 rows affected)[@more@]
Rename a column in sybase
> Is there anyway to rename a column in sybase?> Thankssp_rename 'your_table.old_name', 'new_name'go3> sp_rename 'est_information.mm', 'modify_user'4> go列名已被改变。(return status = 0)[@more@]
Use case driven" means writing the user manual first, then writing the code
Use case driven" means writing the user manual first, then writing the code. This practice reinforces the fundamental notion that a system must conform to the needs of the users, instead of your users conforming to the system. by Doug Rosenberg and Kendall Scott这个10种UML常见**错误列表是由UML领域的绝对专家Doug Rosenberg总结出的。 Doug Rosenberg目前在ICONIX软件工程公司工作,有近20年的设计系统开发工具培训经验。他于1993年开发了一种统一的 Booch/Rumbauge/Jacobson设计方法,这比Rational的UML早了
好书心得:用UML进行用况对象建模--一种实践的方法--ICONIX软件过程方法
用UML进行用况对象建模--一种实践的方法我买这本书的原因在于前言中有一句话:软件开发领域的残酷现实是:它从来不会为留出足够的时间。网上书评:(说出了我的心声)很好很实用的一本书。虽然比较薄,内容却很精炼。书中介绍了一种软件方法ICONIX,介于轻量级的XP和重量级的RUP之间;和别的软件方法不同的是,ICONIX更强调需求到设计之间的自然的、有章可循的,同时也适合迭代的过渡;按照它自己的软件方法思想,它对UML符号集在可扩充的前提下作了一定的取舍,所以这本书的读者不需要费脑筋去记一些UML特别高深的用法和符号。它的一些观
业务用例+概念用例+系统用例
业务用例,概念用例和系统用例现实中只画了系统用例,完了直接归档用例(即描述用例细节)[@more@]
关于写死namespace与拦截器结合使用导致死循环的问题
关于写死namespace与拦截器结合使用导致死循环的问题:在xxxx的项目中,我们需要根据不同的单位来换namespace因此在Authorier这个拦截器中会根据当前用户所在的单位,将/zenzuguo这个namespace换成用户所在单位的namespace如:(company-zenzuguo)但是在webappdecoratorszenzuguoleft.htm文件中有一句:<@ww.action name="bookAction" id="bookAction" namespace="/zenzuguo"></@ww.action>当碰到这个的时候,就自动解释成:="/zenzuguo/bookAction.action但这个action又会被Authorier拦截
BCP基本使用-sybase数据备份
BCP是SYBASE公司提供专门用于数据库表一级数据备份的工具。 一般存放在所安装的ASE或者Open Client 的BIN目录中。 12版本以前的ASE,bcp存放目录为 $SYBASE/bin 12版本(含12版本)以后存放目录为 $SYBASE/OCS-12_x/bin 其中$SYBASE为SYBASE安装目录,12_x代表12.0、12.5版本,显示为12_0或者12_5 可执行文件名称为bcp.EXE 参数列表如下:(可用 bcp 得到) usage: bcp [[database_name.]owner.]table_name[:slice_number] {in | out} datafile [-m maxerrors] [-f formatfile] [-e errfile] [-F firstrow] [-L lastrow] [-b batchsize]
create adapative server碰到的问题
1. 安装的过程中碰到过字符集不对的问题,删除后重新选择语言,再安装就可以了。选择英文安装2. create adapative server第一步:输入adaptive server name: sybasedb(这个名字如果用过一次以后,最好换一个,重名会出现新的server创建不成功的奇怪错误)第二步:server page size:2K第三步:D:sybase_dbdatamaster.dat (配置失败后要删除文件才能再用,或者重命名数据文件名)30M第四步:D:sybase_dbdatasybprocs.dat(同master)12M第五步:(1)network address: 192.168.1.21,5000(2)config default XP server: System accountnet