-
实用的银行转账存储过程和流水号生成存储过程
银行转账存储过程USE[BankInfor]GOSETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERPROCEDURE[dbo].[Transfer](@inAccountint,@outAccountint,@amountfloat)asdeclare@totalDepositfloat;beginselect@totalDeposit=totalfromAccountwhereAccountNum=@outAccount;if@totalDepositisnullbeginrollback;print'转出账户不存在或账户中没有存款'return;endif@totalDeposit<@amountbeginrollback;print'余额不足,不能操作'return;endupdateAccountsettotal=total-@amountwhereAccountNum=@outAccount;updateAccountsettotal=total+@amountwhereAccountNum=@inAccount;print'转...
数据库操作教程 2022-09-23 17:56:20 -
非常好用的sql语句(日常整理)
1./*得到trace文件路径和名称*/SELECTd.VALUE||'/'||LOWER(RTRIM(i.INSTANCE,CHR(0)))||'_ora_'||p.spid||'.trc'trace_file_nameFROM(SELECTp.spidFROMv$mystatm,v$sessions,v$processpWHEREm.statistic#=1ANDs.SID=m.SIDANDp.addr=s.paddr)p,(SELECTt.INSTANCEFROMv$threadt,v$parametervWHEREv.NAME='thread'AND(v.VALUE=0ORt.thread#=TO_NUMBER(v.VALUE)))i,(SELECTVALUEFROMv$parameterWHERENAME='user_dump_dest')d2./*显示产生锁定的sql语句*/select/*+NO_MERGE(a)NO_MERGE(b)NO_MERGE(c)*/a.username,a.machine,a.sid,a.serial#,a.last_call_et"Secon...
数据库操作教程 2022-09-23 17:50:51 -
常用SQL语句查询分享
--创建数据库(文件:主要数据文件mdf==1,次要数据文件ndf>=0,日志文件ldf>=1)--文件组:当1mdf,5个ndf(1,2,2),10个ldf(3,3,4),将它们分成多个组存放CREATEdatabasestudb;--创建表teacher,studentcreatetableteacher(tidint(10)primarykeyauto_increment,tnamevarchar(20),tageint(10));usestudb;createtablestudent(sidint(10)primarykeyauto_increment,snamevarchar(20),sageint(10),tidint(10)REFERENCESteacher(tid));--外键约束:你问张三的老师是谁??--selectteacher.tnamefromteacher,studentwherestudent...
数据库操作教程 2022-09-23 17:47:28 -
SqlServer异常处理常用步骤
SQLServer常见的问题主要是SQL问题造成,常见的主要是CPU过高和阻塞。一、CPU过高的问题1、查询系统动态视图查询执行时间长的sql语句WITHProcessCTE(blocked)AS(SELECTspidFROMsys.sysprocessesWHEREcpu>500)SELECTdistincta.*FROM(SELECTTEXT,AA.*FROMsys.sysprocessesAACROSSAPPLYsys.dm_exec_sql_text(AA.sql_handle))aJOINProcessCTEbucteWITH(NOLOCK)ONbucte.blocked=a.spid--whereloginame='TCScenery'ORDERBYa.CPU二、阻塞问题1、查询系统动态视图查询阻塞的sql语句WITHProcessCTE(blocked)AS(SELECTblockedFROMsys.sysprocessesWHEREblocked>0unionSELECTblockedFROMsys.sysprocessesWHEREblocked>0...
数据库操作教程 2022-09-23 17:47:03 -
日常收集常用SQL查询语句大全
常用sql查询语句如下所示:一、简单查询语句1.查看表结构SQL>DESCemp;2.查询所有列SQL>SELECT*FROMemp;3.查询指定列SQL>SELECTempmo,ename,mgrFROMemp;SQL>SELECTDISTINCTmgrFROMemp;只显示结果不同的项4.查询指定行SQL>SELECT*FROMempWHEREjob='CLERK';5.使用算术表达式SQL>SELECTename,sal*13+nvl(comm,0) FROMemp;nvl(comm,1)的意思是,如果comm中有值,则nvl(comm,1)=comm;comm中无值,则nvl(comm,1)=0。SQL>SELECTename,sal*13+nvl(comm,0)year_salFROMemp;(year_sal为别名,可按别名排序)SQL>SELECT*FROMempWHEREhiredate>'01-1月-82';6.使用like操作符(%,_)%表示一个或多个字符,_表示一个字符,[charlist]表示字符...
数据库操作教程 2022-09-23 17:38:33 -
sqlserver常用命令行操作(启动、停止、暂停)
启动sqlserverNetStartMSSqlServer暂停sqlserverNetPauseMSSqlServer重新启动暂停的sqlserverNetContinueMSSqlServer停止sqlserverNetstopMSSqlServer命令行方式修改sqlserversa的密码一直都是使用企业管理器操作sql的,昨天帮一朋友部署网站,租的国外vps主机,登陆上去只看到sql的图标正常运行的,企业管理器和查询分析器的影都没看到,汗一个。...
数据库操作教程 2022-09-23 17:37:29 -
SqlServer中常用的6个自定义函数分享
在日常应用中,往往根据实际需求录入一些值,而这些值不能直接使用,所以Sql中经常会对字段值进行一些常规的处理。这里搜集了(提取数字、英文、中文、过滤重复字符、分割字符的方法),方便日后查询使用...
数据库操作教程 2022-09-23 17:30:34 -
SQLServerDBA维护常用语句
1、检查数据库完整性复制代码代码如下:dbcccheckdb(test)--通过加tablock提高速度dbcccheckdb(test)withtablock2、数据库重命名、修改恢复模式、修改用户模式复制代码代码如下:--数据库重命名 ALTERDATABASEWC MODIFYNAME=test--设置数据库为完整恢复模式alterdatabasetestsetrecoveryfull--只允许一个用户访问数据库 alterdatabasetest setsingle_user withrollbackafter10seconds--指定多少秒后回滚事务 --只有sysadmin,dbcreator,db_owner角色的成员可以访问数据库 alterdatabasewc setrestricted_user withrollbackimmediate --立即回滚事务 --多...
数据库操作教程 2022-09-23 17:23:38 -
SQLServerDBA日常检查常用SQL
1、数据库复制代码代码如下:--所有数据库的大小 execsp_helpdb --所有数据库的状态 selectname, user_access_desc, --用户访问模式 state_desc, --数据库状态 recovery_model_desc, --恢复模式 &...
数据库操作教程 2022-09-23 17:18:18 -
在SQLServer中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
这个问题对于规模稍微大些的项目而言,显得尤其重要了,数据库中如果有几百个存储过程,难道还一个个找不成,即使自己很了解业务和系统,时间长了,也难免能记得住。如何使用SQL语句进行查询呢?下面就和大家分享下SQL查询的方法:复制代码代码如下:selectdistinctnamefromsyscommentsa,sysobjectsbwherea.id=b.idandb.xtype='p'andtextlike'%pro_GetSN%'上面的蓝色字体部分表示要查询的存储过程的名称...
数据库操作教程 2022-09-23 17:16:50 -
SQLSERVER编译与重编译发生场景及重用的利弊介绍
编译的含义--------------------------------------------------------------------------------当SQLSERVER收到任何一个指令,包括查询(query)、批处理(batch)、存储过程、触发器(trigger)、预编译指令(preparedstatement)和动态SQL语句(dynamicSQLStatement)要完成语法解释、语句解释,然后再进行“编译(compile)”,生成能够运行的“执行计划(executionplan)”。在编译的过程中,SQLSERVER会根据所涉及的对象的架构(schema)、统计信息以及指令的具体内容,估算可能的执行计划,以及他们的成本(cost),最后选择一个SQLSERVER认为成本最低的执行计划来执行...
数据库操作教程 2022-09-23 17:14:17