我需要使用TOAD搜索Oracle数据库中的所有存储过程.我正在寻找开发人员在序列上使用MAX + 1而不是NEXTVAL来获取下一个ID号的任何地方.
我一直在做SQL Server多年,并且知道有几种方法可以做到这一点,但没有人在这里帮助我.
我试过用了
SELECT * FROM user_source
WHERE UPPER(text) LIKE '%blah%'
Run Code Online (Sandbox Code Playgroud)
返回结果,但仅针对我的默认架构,而不是我需要搜索的架构.
我也尝试了以下但它只是错误
SELECT * FROM SchemaName.user_source
WHERE UPPER(text) LIKE '%blah%'
Run Code Online (Sandbox Code Playgroud) 我知道综合指数总是从左到右使用(例如,如果指数在城市,州,WHERE City ="Blah"或WHERE City ="Blah"AND State ="AA"将正常工作但WHERE State ="AA " 不会).
这个原理是否同样适用于INCLUDE索引?
提前致谢!
粘土
我使用以下命令成功删除了预期的文件;但是,我想知道已删除的项目的数量。
Get-ChildItem $dPath -Filter "*.blah" | Remove-Item
Run Code Online (Sandbox Code Playgroud)
我已经尝试过这个。它始终删除文件,但测量对象在删除后运行,因此始终返回 0 作为计数
Get-ChildItem -Path C:\Temp -Filter "*.blah" | Remove-Item | Measure-Object
Run Code Online (Sandbox Code Playgroud)
然后我尝试了相反的方法,但总是得到:
[删除项目],ItemNotFoundException
Get-ChildItem -Path C:\Temp -Filter "*.blah" | Measure-Object | Remove-Item
Run Code Online (Sandbox Code Playgroud) 我与SQL Server进行了广泛的合作,但对Oracle的经验却很少.我已经被赋予了"清理"Oracle数据库中的序列的任务,并且不确定如何安全地进行此操作.
我需要确定表中实际的最大值(比如ID = 105).然后查看该ID的下一个序列是什么.如果它是106,那么一切都会好的.如果是110,那么我需要将其重置为106.
我可以安全地删除序列然后重新创建它还是会破坏现有的主键?我猜这不会是一个问题,但在我抬起别人的系统之前,我想问一下.
这是我要使用的命令
Drop Sequence blah.foo_seq
Create Sequence blah.foo_seq Start WIth 106 Min 1 Max 2147483647 yada yada
Run Code Online (Sandbox Code Playgroud) oracle ×2
composite ×1
include ×1
indexing ×1
powershell ×1
reset ×1
sequence ×1
sql ×1
sql-server ×1
toad ×1