-
delete误删数据使用SCN号恢复(推荐)
问题描述:使用scn号恢复误删数据1.查询系统闪回的scn值以及当前日志的scn值,因为我这个是测试,创建的表是在在后边,所以scn值要大于下边这两个scn值,所以对我恢复数据没有用,如果我创建的数据是在下边这两个SCN值之前,也就是比这两个时间点SCN值小,就可以用这两个scn用来恢复数据,但是我下边这个实验创建的测试表晚,就不行了SQL>selectdbms_flashback.get_system_change_numberfromdual;SQL>selectcurrent_scnfromv$database;2.创建测试数据,SQL>createtableaa(idint,namevarchar2(10),adressvarchar2(10));SQL>insertintoaa2values(111,'steven','beijing');SQL>commit;3.这时候相当于数据创建完了,这之后的scn号码要知道,因为上边那两个scn号没有记录这个表的信息对我没用,如果现在查询current_scn号就有用了,这里测试我也不麻烦了,文档是参考的...
数据库操作教程 2022-09-23 20:43:35 -
SQLorderbyIDdesc/asc加一个排序的字段解决查询慢问题
解决方法就是在orderbyIDdesc再加一个排序的字段,这样子可能会把速度提高很多。再加止排序的字段因查询而异了如表复制代码代码如下:CREATETABLE[dbo].[CMPP_SendCentre]([id][int]IDENTITY(1,1)NOTNULL,[SendType][varchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[SendDate][datetime]NOTNULL,[Port][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL,[Service_ID][varchar](20)COLLATEChinese_PRC_CI_ASNOTNULL,[FeeType][varchar](2)COLLATEChinese_PRC_CI_ASNOTNULL,[FeeCode][varchar](6)COLLATEChinese_PRC_CI_ASNOTNULL,[Msg_Content][varchar](1024)COLLATEChinese_PRC_CI_ASNOTNULL,[SendCoun...
数据库操作教程 2022-09-23 20:43:21 -
利用sys.sysprocesses检查SqlServer的阻塞和死锁
MSDN:包含正在SQLServer实例上运行的进程的相关信息。这些进程可以是客户端进程或系统进程...
数据库操作教程 2022-09-23 20:39:38 -
MSSQL中递归SQL查询语句实例说明-
一张表(ColumnTable)的结构如下图所示当前需要实现的功能:通过Number的值为67来获取当前的节点ID、父节点ID递归实现SQL语句:复制代码代码如下:withznieyuas(selectc.Id,c...
数据库操作教程 2022-09-23 20:39:12 -
mssql存储过程表名和字段名为变量的实现方法
没有使用动态语句直接报错错误的复制代码代码如下:alterproctestpapersasbegindeclare@temsnvarchar(max),@zidaunnvarchar(max)set@tems=select*from@temsorderby@zidaunexec(@tems)endexectestpapers消息156,级别15,状态1,过程testpapers,第1行关键字'select'附近有语法错误。消息1087,级别15,状态2,过程testpapers,第1行必须声明表变量"@tems"...
数据库操作教程 2022-09-23 20:33:48 -
MSSQL优化之探索MSSQL执行计划(转)
网上的SQL优化的文章实在是很多,说实在的,我也曾经到处找这样的文章,什么不要使用IN了,什么OR了,什么AND了,很多很多,还有很多人拿出仅几S甚至几MS的时间差的例子来证明着什么(有点可笑),让许多人不知道其是对还是错。而SQL优化又是每个要与数据库打交道的程序员的必修课,所以写了此文,与朋友们共勉...
数据库操作教程 2022-09-23 20:32:55 -
MSSQL批量替换语句在SQLSERVER中批量替换字符串的方法
方法一:(这种是最常用的,因为很多大段的内容都使用textntext等数据类型,而我们通常也是替换里面的内容)varchar和nvarchar类型是支持replace,所以如果你的text不超过8000可以先转换成前面两种类型再使用replace替换textntext数据类型字段的语句复制代码代码如下:update表名set字段名=replace(cast(与前面一样的字段名asvarchar(8000)),'原本内容','想要替换成什么')方法二:(替换其他数据类型字段的语句,实际应用中不常见)复制代码代码如下:update[表名]set字段名=replace(与前面一样的字段名,'原本内容','想要替换成什么')以下是补充:1。如何批量替换ntext字段里面的数据问题描述:我想把数据库中News表中的字段content中的一些字符批量替换...
数据库操作教程 2022-09-23 20:31:12 -
mssqlserver数据库附加不上解决办法分享
错误15105,从网上找了一些解决方案,一般都是说文件的权限不足的问题,当然附加的时候必须是有数据库附加权限才可以操作的。解决办法1:给相应的MDF文件给FullControl的权限,如果不知道是什么用户可以去SqlServer的配置中心去找但是我遇到这个用上述方法就不可以...
数据库操作教程 2022-09-23 20:30:55 -
MSSQL转MYSQL,gb2312转utf-8无乱码解决方法
使用软件:MySQLMigrationTool提示数据过大,无法导入。修改my.cnf文件的max_allowed_packet=100M以上...
数据库操作教程 2022-09-23 20:30:19 -
MSSQLSERVER2005数学函数整理
MSSQLSERVER2005数学函数1.求绝对值ABS()selectFWeight-50,ABS(FWeight-50),ABS(-5.38)fromT_Person2.求幂POWER(X,Y)用来计算X的Y次幂selectFWeight,POWER(FWeight,-0.5),POWER(FWeight,2),POWER(FWeight,3),POWER(FWeight,4)fromT_PersonselectPower(2,2)3.求平方根SQRT()selectFWeight,SQRT(FWeight)fromT_Person4.求随机数RAND()支持有参数,也可以没参数selectRAND()selectRAND(123)5.舍入到最大整数CEILING()selectFName,FWeight,CEILING(FWeight),CEILING(FWeight*-1)fromT_Person6.舍入到最小整数FLOOR()selectFName,FWeight,FLOOR(FWeight),FLOOR(FWeight*-1)fromT_Person7.四舍五入ROUND(...
数据库操作教程 2022-09-23 20:29:52 -
MSSQLSERVER中的BETWEENAND的使用
資料CustomerIdNameRegisterDate1澎澎2007/1/500:00:002丁丁2007/1/600:00:003亞亞2007/1/700:00:00aspx頁面查詢條件:最小日期:[2007-01-06] 最大日期:[2007-01-06]使用的sql:SELECTID,Name,RegisterDateFROMCustomerWHERE(RegisterDateBETWEEN'2007-01-06'AND'2007-01-06')結果是傳回1筆:丁丁,符合我的預期但是如果丁丁的RegisterDate的時間不是00:00:00呢?如果資料是這樣IdNameRegisterDate1澎澎2007/1/500:00:002丁丁2007/1/604:37:003亞亞2007/1/700:00:00一樣的sqlSELECTID,Name,RegisterDateFROMCustomerWHERE(RegisterDateBETWEEN'2007-01-06'AND'2007-01-06')傳回來的是0筆 ...
数据库操作教程 2022-09-23 20:29:40