-
sql判断函数、存储过程是否存在的代码整理
下面为您介绍sql下用了判断各种资源是否存在的代码,需要的朋友可以参考下,希望对您学习sql的函数及数据库能够有所帮助。--库是否存在ifexists(select*frommaster..sysdatabaseswherename=N'库名')print'exists'elseprint'notexists'--判断要创建的表名是否存在ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[表名]')andOBJECTPROPERTY(id,N'IsUserTable')=1)--删除表droptable[dbo].[表名]GO--判断要创建临时表是否存在IfObject_Id('Tempdb.dbo.#Test')IsNotNullBeginprint'存在'EndElseBeginprint'不存在'End--判断要创建的存储过程名是否存在ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[存储过程名]')andOBJECTPROPERTY(id...
数据库操作教程 2022-09-23 18:00:00 -
五种SQLServer分页存储过程的方法及性能比较
在SQLServer数据库操作中,我们常常会用到存储过程对实现对查询的数据的分页处理,以方便浏览者的浏览。本文我们总结了五种SQLServer分页存储过程的方法,并对其性能进行了比较,接下来就让我们来一起了解一下这一过程...
数据库操作教程 2022-09-23 17:57:15 -
实用的银行转账存储过程和流水号生成存储过程
银行转账存储过程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 -
SQLSERVER数据库的作业的脚本及存储过程
IFEXISTS(SELECTnameFROMsysobjectsWHEREname=N'cg_DoBackupJob'ANDtype='P')DROPPROCEDUREcg_DoBackupJobGOCREATEPROCEDURE[cg_DoBackupJob]@DataBaseNamevarchar(100),@FileHeadvarchar(50),@isFullBackupbit,--0差量备份1完整备份@FolderPathvarchar(50)='f:db_backup',@BackNamevarchar(100)='unknown',--描述字串@isAppendMediabit=1--0覆盖媒体1追加到媒体ASdeclare@filePathvarchar(150)declare@sqlvarchar(1000)select@filePath=@FolderPath+@FileHead+'_'+case@isFullBackupwhen1then'FullBackup'when0then'DifferBackup'end+'_'+convert(nvarchar(11)...
数据库操作教程 2022-09-23 17:55:55 -
SQLSERVER调用存储过程小结
在SQLServer数据库的维护或者Web开发中,有时需要在存储过程或者作业等其他数据库操作中调用其它的存储过程,下面介绍其调用的方法一、SQLSERVER中调用不带输出参数的存储过程SQL代码--存储过程的定义createprocedure[sys].[sp_add_product](@m_viewcountint=0,@m_hotcountint=0)asgo--存储过程的调用declare@m_viewcountintdeclare@m_hotcountintexecsp_add_product@m_viewcount,@m_hotcount二、SQLSERVER中调用带输出参数的存储过程SQL代码--定义存储过程createprocedure[sys].[sp_add_product](@m_viewcountint=0,@m_hotcountintoutput)--存储过程的调用declare@m_viewcountint=0declare@m_hotcountintexecdbo.sp_add_product@m_viewcount,@m_hotcountoutputps:...
数据库操作教程 2022-09-23 17:54:39 -
通过系统数据库获取用户所有数据库中的视图、表、存储过程
复制代码代码如下:--设置sql可以获取实例名称sp_configure'xp_cmdshell',1;goreconfigure;go--获取实例名EXECsys.xp_cmdshell'sqlcmd-Lc'--获取所有数据库Select*FROMMaster..SysDatabasesorderbyName--获取数据库所有表useyeekang---数据库名称select*fromsysobjectswhere type='U'orderbyname--获取指定表字段select*fromsyscolumnswhereid=OBJECT_ID('Userinfo')SELECT表名=casewhena.colorder=1thend.nameelse''end,表说明=casewhena.colorder=1thenisnull(f.value,'')else''end,字段序号=a.colorder,字段名=a.name,标识=casewhenCOLUMNPROPERTY(a.id,a.name,'IsIdentity')=1then'√'else''en...
数据库操作教程 2022-09-23 17:54:37 -
Sql存储过程游标循环的用法及sql如何使用cursor写一个简单的循环
用游标,和WHILE可以遍历您的查询中的每一条记录并将要求的字段传给变量进行相应的处理==================DECLARE@A1VARCHAR(10),@A2VARCHAR(10),@A3INTDECLARECURSORYOUCURNAMEFORSELECTA1,A2,A3FROMYOUTABLENAMEOPENYOUCURNAMEfetchnextfromyoucurnameinto@a1,@a2,@a3while@@fetch_status<>-1beginupdate…set…-a3where………您要执行的操作写在这里fetchnextfromyoucurnameinto@a1,@a2,@a3endcloseyoucurnamedeallocateyoucurname—————————————在应用程序开发的时候,我们经常可能会遇到下面的应用,我们会通过查询数据表的记录集,循环每一条记录,通过每一条的记录集对另一张表进行数据进行操作,如插入与更新,我们现在假设有一个这样的业务:老师为所在班级的学生选课,选的课程如有哲学、马克思主义政治经济学、毛泽东思想...
数据库操作教程 2022-09-23 17:53:26 -
asp.net中如何调用sql存储过程实现分页
首先看下面的代码创建存储过程1、创建存储过程,语句如下:CREATEPROCP_viewPage@TableNameVARCHAR(200),--表名@FieldListVARCHAR(2000),--显示列名,如果是全部字段则为*@PrimaryKeyVARCHAR(100),--单一主键或唯一值键@WhereVARCHAR(2000),--查询条件不含'where'字符,如id>10andlen(userid)>9@OrderVARCHAR(1000),--排序不含'orderby'字符,如idasc,useriddesc,必须指定asc或desc--注意当@SortType=3时生效,记住一定要在最后加上主键,否则会让你比较郁闷@SortTypeINT,--排序规则1:正序asc2:倒序desc3:多列排序方法@RecorderCountINT,--记录总数0:会返回总记录@PageSizeINT,--每页输出的记录数@PageIndexINT,--当前页数@TotalCountINTOUTPUT,--记返回总记录@TotalPageCountINTOUTPUT--返...
数据库操作教程 2022-09-23 17:51:09 -
SQLServer存储过程中事务的使用方法
本文为大家分享了SQLServer存储过程中事务的使用方法,具体代码如下createprocusp_Stock@GoodsIdint,@Numberint,@StockPricemoney,@SupplierIdint,@EmpIdint,@StockUnitvarchar(50),@StockDatedatetime,@TotalMoneymoney,@ActMoneymoney,@baseIdint,@Descriptionnvarchar(255)asdeclare@errorint=0--事务中操作的错误记录--开启事务begintransaction--实现进货信息的添加insertintoStockInfovalues(@GoodsId,@Number,@StockPrice,@SupplierId,@EmpId,@StockUnit,@StockDate,@TotalMoney,@ActMoney,DEFAULT,@Description,@baseId)set@error+=@@ERROR--记录有可能产生的错误号--获取当前进货信息的标识列--判断当前商品有没有进货记...
数据库操作教程 2022-09-23 17:49:02 -
SQLServer中数据行批量插入脚本的存储实现
无意中看到朋友写的一篇文章“将表里的数据批量生成INSERT语句的存储过程的实现”。我仔细看文中的两个存储代码,自我感觉两个都不太满意,都是生成的单行模式的插入,数据行稍微大些性能会受影响的...
数据库操作教程 2022-09-23 17:47:36