-
SQLSERVER日志进行收缩的图文教程
前言最近经历了一次服务器SQLSERVER数据库服务器端事务日志爆满,导致服务器数据库写入不进数据的宕机事件,经过此次事件的发生,奉劝各位同仁一句,如果没有绝对的充足存储空间,数据库事务日志文件千万不要采取完整备份,备份出的数据量是你无法承受的,简单备份就可以了,以下是收缩数据库事务日志的操作,希望可以帮助到大家!数据库事务日志收缩通过图形界面进行操作如下:第一步:右键数据库属性第二步:更改数据库恢复模式,将模式从“完整”改为“简单”第三步:右键数据库,“任务”->“收缩”->“文件” 第四步:收缩数据库日志,选择文件类型“日志”,并将收缩操作内的,“将文件收缩到”最小大小 注意:如若磁盘空间已满,无法进行收缩数据库事务日志文件,可采取先分离出部分暂未使用的数据库,然后将MDF文件及LDF文件进行拷贝到其他空余盘,进行释放磁盘空间,待日志收缩后,再次将分离出的数据库文件进行附加。分离数据库操作,右键单击选择“任务”—>“分离”如下图:总结以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持...
数据库操作教程 2022-09-23 16:42:12 -
SqlServer中批量update语句
现在我有两张表分别是S_PERSON,S_USERS_PERSON S_USER我现在想把S_USER表中的ACCOUNT批量修改成S_PERSON的ACCOUNT我们可以发现S_USER表中有个跟S_PERSON表关联的字段那就是PERSON_ID这也是我们要update的条件找到这个关系以后我们就不难写sql了updateS_USER setaccount=p.accountfromS_PERSON pwherep.id=S_USER.person_id;结果为:sqlserveras语法举例1、使用表名称别名有两个表分别是:"Persons"和"Product_Orders"。分别为它们指定别名"p"和"po"...
数据库操作教程 2022-09-23 16:42:12 -
SQLServer中row_number函数的常见用法示例详解
一.SQLServerRow_number函数简介ROW_NUMBER()是一个Window函数,它为结果集的分区中的每一行分配一个连续的整数。行号以每个分区中第一行的行号开头...
数据库操作教程 2022-09-23 16:42:08 -
SQLServer开窗函数Over()代替游标的使用详解
前言:今天在优化工作中遇到的sql慢的问题,发现以前用了挺多游标来处理数据,这样就导致在数据量多的情况下,需要一行一行去遍历从而计算需要的数据,这样处理的结果就是数据慢,容易卡死。语法介绍:1、与Row_Number()函数结合使用,对结果进行排序,这个是我们使用的非常多的 2、与聚合函数结合使用,利用over子句的分组和排序,对需要的数据进行操作例如:SUM()Over()累加值、AVG()Over()平均数MAX()Over()最大值、MIN()Over()最小值具体介绍:下面模拟工作中通过开窗函数代替游标的例子,通过期初余额与单据的预收金额、应收金额、实收金额来计算截止本单的期末余额,在以往就是通过游标一行一行去遍历,计算需要的期末余额,现在使用SUM()Over()来代替,最终要实现的效果图如下:第一行表示标题;第二行表示客户,是一行空行;第三行是期初余额,只显示期末余额的数据,第四至第六行表示的是每种单据的余额情况,并逐步汇总当前行的期末余额数据;最后一行表示的是对客户的合计...
数据库操作教程 2022-09-23 16:42:05 -
SQLServer使用joinall优化or查询速度
比如:,master,test,表示该用户为test的下级代码,test登录后可以看到test名下的业务和所有下级代理的业务。相关表的结构如下:user表大约10万条记录|-uid-|-user-|----site------||1|test|,master,||2|user|,master,test,|product表大约30万条记录|-pid-|-product-|-puser-||1|order01|test||2|order02|user||3|order03|user|优化前的SQL语句如下:select*fromproductaspleftjoinuserasuonp.puser=u.userwhereuser='test'orsitelike'%,test,%'不使用or单独查询时,都不超过100毫秒,排除索引的问题...
数据库操作教程 2022-09-23 16:42:03 -
SQLServer如何通过创建临时表遍历更新数据详解
前言:前段时间新项目上线为了赶进度很多模块的功能都没有经过详细的测试导致了生成环境中的数据和实际数据对不上,因此需要自己手写一个数据库脚本来更新下之前的数据。(线上数据库用是SQLServer2012)关于数据统计汇总的问题肯定会用到遍历统计汇总,那么问题来了数据库中如何遍历呢?好像并没有for和foreach这种类型的功能呀,不过关于数据库遍历最常见的方法当然是大家经常会想到的游标啦,但是这次我并没有使用游标,而是通过创建临时表的方式来更新遍历数据的...
数据库操作教程 2022-09-23 16:42:01 -
hive中将string数据转为bigint的操作
使用CAST函数将STRING转为BIGINT:SELECTCAST('00321'ASBIGINT)FROMtable;AsaBIGINTitwillshowonthescreenandindelimitedtextfilesas321.参考:Hive-Convertingastringtobigint补充知识:hive中bigint和varchar字段做关联,关联数据错误的解决方法把bigint和varchar都隐式转换成String类型的就可以关联出正确的结果了cast(t1.PARTY_NUMasstring)=cast(t12.customerIdasstring)以上这篇hive中将string数据转为bigint的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。...
数据库操作教程 2022-09-23 16:42:01 -
Zabbix监控SQLServer服务状态的方法详解
SQLServer数据库的服务(SQLServer(MSSQLSERVER)、SQLServerAgent(MSSQLSERVER)等服务)一般配置成自动启动,但是有时候有些服务组件也会突然停止。有些是因为异常或Bug,有些是因为配置缘故、有些是因为非规范操作(例如重启SQLServer(MSSQLSERVER)时关闭了SQLServerAgnt服务,但是没有检查或重启这个服务)...
数据库操作教程 2022-09-23 16:41:58 -
SqlServer生成连续数字根据指定的数字操作
需求是使用sqlserver根据指定的数字和表生成一串连续的数字,类似于oracle中ROWNUM的功能,具体实现如下:一、Oracle使用ROWNUM实现方式SELECTROWNUMnumber_listFROM表名WHEREROWNUM<=10;二、SqlServer实现上述功能的三种方式1.使用MASTER…spt_values方式SELECTnumberFROMMASTER..spt_valuesWHERETYPE='P'ANDnumber>0ANDnumber<=10;spt_values是master数据库中的一张系统表,number的数值范围是0~20472.使用String_Split函数实现selectrow_number()over(orderby(select1))fromString_Split(space(6),'')String_Split是SQLServer2016的新函数,这个方法只对2016及后续版本有效。(我的数据库版本是2008,此方式未验证)3.使用top+ROW_NUMBER()OVER方式实现SELECTTOP10ROW_N...
数据库操作教程 2022-09-23 16:41:57 -
MicrosoftSQLServer数据库各版本下载地址集合
SQLServer2019Enterprise(x64)-DVD(Chinese-Simplified)企业版ed2k://|file|cn_sql_server_2019_enterprise_x64_dvd_2bfe815a.iso|1632086016|58C258FF0F1D006DD3C1F5F17AF3EAFD|/SQLServer2019Developer(x64)-DVD(Chinese-Simplified)开发版ed2k://|file|cn_sql_server_2019_developer_x64_dvd_c21035cc.iso|1632086016|7AFACB434CF9716CA7818F39F06BE0F5|/SQLServer2019Standard(x64)-DVD(Chinese-Simplified)标准版ed2k://|file|cn_sql_server_2019_standard_x64_dvd_2bfe815a.iso|1632086016|893DBEF7DDA20592405163E69E12DF40|/SQLServer2016S...
数据库操作教程 2022-09-23 16:41:54 -
SQLServerTop语句参数化方法
declare@TopCountintset@TopCount=100selecttop(@TopCount)*fromAdventureWorks.HumanResources...
数据库操作教程 2022-09-23 16:41:50 -
三步堵死SQLServer注入漏洞
SQL注入是什么? 许多网站程序在编写时,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码(一般是在浏览器地址栏进行,通过正常的www端口访问),根据程序返回的结果,获得某些想得知的数据,这就是所谓的SQLInjection,即SQL注入...
数据库操作教程 2022-09-23 16:41:50