当前位置:首页 » 编程语言 » 历史库sql使用
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

历史库sql使用

发布时间: 2022-07-11 08:17:26

㈠ 求一个sql语句,解决查询历史库存的问题

如果数据库是SQLSERVER的话可以这样
USEtempdb
GO
IFOBJECT_ID('TA')ISNOTNULL
DROPTABLETA
GO
CREATETABLETA
(cInvCodeNVARCHAR(20)NOTNULL,
cInvCode1NVARCHAR(20)NOTNULL,
dDateDATETIMENOTNULL,
iQtyINTNOTNULL
)
GO
INSERTINTOTA
SELECT'A','1000','20130101',10UNIONALL
SELECT'A','1000','20130201',20UNIONALL
SELECT'A','1000','20130301',30UNIONALL
SELECT'A','1000','20130501',50UNIONALL
SELECT'A','1000','20130601',60UNIONALL
SELECT'B','1000','20130401',100UNIONALL
SELECT'A','1001','20121201',10UNIONALL
SELECT'B','1001','20130101',20UNIONALL
SELECT'C','1002','20130301',20UNIONALL
SELECT'C','1002','20130401',20UNIONALL
SELECT'C','1002','20130501',30
GO
--查询数据
DECLARE@dDateDATETIME
SET@dDate='20130401'

SELECTcInvCode,cInvCode1,CONVERT(NVARCHAR(20),DDATE,23),iQtyFROM(
SELECT*,ROW_NUMBER()OVER(PARTITIONBY
cInvCode,cInvCode1ORDERBYiFlag)ASiRow

FROM(
SELECTCASEWHENdDate=@dDateTHEN1
WHENDDATE>@dDateTHEN2
WHENDDATE<@dDateTHEN3
ENDASiFlag
,*FROMTA
)T
)TBWHEREiRow=1

㈡ sql 如何查询历史操作语句

打开Log Explorer -> Attach Log File -> 选择SQL Server服务器和登陆方式 -> Connect -> 在Database Name中选择数据库 -> Attach-> 左面对话框中Browse-> View Log-> 就可以看到log记录了
想恢复的话: 右键Log记录 Undo Transation-> 选择保存文件名和路径-> 然后打开该文件到查询分析器里执行 T-sql代码就可以了
例如 如果Log是delete table where ...的话,生成的文件代码就是insert table .... 然后将此insert table的代码放到查询分析器里执行.就可以恢复数据.
Log Explorer使用的一个问题
1)对数据库做了完全 差异 和日志备份 备份时选用了删除事务日志中不活动的条目 再用Log Explorer打试图看日志时 提示No log recorders found that match the filter,would you like to view unfiltered data 选择yes 就看不到刚才的记录了
如果不选用了删除事务日志中不活动的条目 再用Log Explorer打试图看日志时,就能看到原来的日志
2)修改了其中一个表中的部分数据,此时用Log Explorer看日志,可以作日志恢复
3)然后恢复备份,(注意:恢复是断开Log Explorer与数据库的连接,或连接到其他数据上, 否则会出现数据库正在使用无法恢复) 恢复完后,再打开Log Explorer 提示No log recorders found that match the filter,would you like to view unfiltered data 选择yes 就看不到刚才在2中修改的日志记录,所以无法做恢复.

㈢ 如何查看SQL SERVER的操作历史记录

sql server profiler 只能监视当前的操作,而不能查询历史的操作吧
可以保存你的监视记录啊。
还是使用log explorer

㈣ 怎么查询SQL数据库的历史数据,并调用出来做报表

  1. SQL关键字 where,类型转换Convert

  2. 历史数据,多久后的数据,假如有表A,有2个字段a,b

  3. a 为int 类型,b 为日期类型

  4. 转换日期以及日期范围SQL 如下:

  5. select * from A where b between convert(datetime,'2015-08-01 08:08:08' ) and convert(datetime,'2015-08-01 08:12:08')

  6. 以上SQL 就是查询历史记录,日期为'2015-08-01 08:08:08'与 '2015-08-01 08:12:08'

    之间的数据

  7. 创建报表可以通过MicrosoftSQLServer2008R2中的创建,也可以在Microsoftvisualstudio中通过使用ReportView控件来创建报表。本实例采用MicrosoftSQLServer2008R2中的创建报表。

  8. 创建报表服务器项目

  9. 在制作报表之前,要先创建一个报表服务器项目,在其中可以存放若干报表供用户调用。在中创建报表服务器项目的操作步骤如下。

  10. 选择【开始】|【所有程序】|【MicrosoftSQLServer2008R2】|【】,启动商业智能开发环境。在菜单栏中选择【文件】|【新建】|【项目】命令,弹出【新建项目】对话框。在【项目类型】列表中选择【商业智能项目】选项,在【模板】列表中选择【报表服务器项目向导】选项,在【名称】文本框中输入【报表项目4】,单击【确定】按钮以创建项目。

㈤ 怎么SQL执行历史记录

查看用户的SQL执行历史的语句如下:
select * from v$sqlarea t where t.PARSING_SCHEMA_NAME in ('用户名') order by t.LAST_ACTIVE_TIME desc
select * from v$sqlarea t order by t.LAST_ACTIVE_TIME desc

注意 :执行此语句等等一些相关的语句 必须具有DBA 的权限 虽然这条语句很普通 但是需要的时候很管用 能够及时查出一个人执行sql语句情况
-------oracle 查看已经执行过的sql 这些是存在共享池中的 --------->
select * from v$sqlarea t order by t.LAST_ACTIVE_TIME desc
-----------查看oracle会话----------------------------》
select * from v$session t order by t.LAST_ACTIVE_TIME desc
-------------查看oracle的权限角色------------------------------>
select * from dba_role_privs; 授予用户和其他角色的角色
select * from dba_sys_privs; 授予用户和其他角色的系统权限
select * from dba_tab_privs; 数据库中对象的所有授权
select * from user_role_privs; 查看当前用户的角色

㈥ 如何用pl/sql查询历史库存

题:如何知道一个session都执行过哪些SQL语句?(查看当前比较容易,历史的呢?怎么复原sql的执行场景——事务关系、执行序列、单SQL还是存储过程)

除了PL/SQL的ctrl+e的查看方法外还有如下方法:

【方法一】查询v$sql、v$sqltext、v$sqlarea、v$sqlstats视图
select * from v$sqlarea t where t.PARSING_SCHEMA_NAME in ('schema') order by t.LAST_ACTIVE_TIME desc;
#对v$sqltext、v$sqlarea查看的是shared pool中的SQL,其时间索引是其解析历史,因为共享的问题这个查询可能并不能完整地反映出执行的历史。
#v$sqlstats反应的是实例启动起来的sql执行统计,sql语句本身比v$sqltext/area完整,因为后者有可能失效换出缓存

【方法二】
联合v$active_session_history和v$sqlarea
#v$active_session_history 这个表只是个取样数据,按秒进行,只有在那一秒采样点处于on cpu或非idle等待的session统计在内。所以可能会不全,有些执行很短的SQL会忽略。这个视图无法还原完整的session历史。
#v$sqlarea中有执行过的SQL语句,但并无到session的关联信息,v$session中只关联了当前的sql,所以也不行。

从v$sqlstat可以查看到数据库启动起来的所有SQL信息,但是没有时间顺序关系、没有执行用户信息,只有执行次数与资源统计。
从dba_hist_sqlstat可以看到AWR snapshot之间的SQL统计信息,与v$sqlstats比不受实例重启的影响,因为实例重启之后v$sqlstats中的信息就清除了。

㈦ SQL Server2005如何设置将数据导入历史数据库

直接使用数据导入 导出的功能就可以了

㈧ 博途V15 hmi下,历史数据如何调用是存储来sql数据库吗

1安装SQL Server20OO WindowsXP下应安装SQL
ServerZ《XK)的个人版,在安装时应选择本地计算机作为数据服务器,服务器名设为Localserver(默认值),设服务管理器为开机自动启动(默认值)。如果CimPlicity.HMI正在运行应使其停止。2建立数据库SQL
ServerZ《X刃安装完成后,可以启动SQL
serve口口阳建立自己存储历史数据的数据库。
例如我们建立一个名为CIM的数据库来存储Cimplicity~HMI
DateBase的历史数据。这里只为数据库定义名称,不必建立表,当amPlicity- HMI DateBase和数据库建立连接时,会自动创建各种表