问题标签 [sqldependency]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle10g - 按依赖顺序导入表的代码
我在 Windows 环境中工作,并使用 Oracle SQL Developer。我有一个由大约 50 个 csv 文件组成的组织的整个数据库。每个对应一个表。有两个任务要执行
我需要从头开始将整个数据导入到 oracle 数据库中。所以我需要考虑表的依赖关系,因此按特定顺序加载它们。我想自动化它,就像为它编写脚本或代码一样。我有整个依赖树。
(即使它实际上只会执行一次)。
您能否建议哪种语言适合该目的或我应该如何开始这项工作?完成所有上传后,如果我收到更新表的查询,则应更新所有必要的表。
顺便说一句,必须为许多其他组织完成这个过程。
我是 Oracle 的新手,所以如果你也可以为我提供一个很好的链接来学习
我找到答案的最接近的是 -> Oracle Forms Dependency
c# - SQL Server 2008 R2 查询通知上的死锁 (SqlDependency)
我在 SQL Server 2008 R2 上遇到了死锁问题。在 SQL Profiler 中查看死锁图时,问题似乎源于查询通知:
这些查询通知是使用 SQLDependency 实现的。更新由 SQLDependency 监视的表时似乎发生了死锁。
我不太了解死锁图语法。KeyLock 模式仅在使用可序列化事务隔离级别时为 RangeS-U。, 对 ?
我也读过这个问题......我应该激活 READ_COMMITED_SNAPSHOT 吗?
谢谢...
c# - C# - 如何使用 SqlDependency 检测对 SQL Server 的更改?
我有一个应该等待数据库更改的 Windows 服务。
它查看的数据库表如下所示:
编号 [指南]
名称[文字]
MatchId [Guid] => 这是一个外键
比赛日期时间 [日期时间]
我希望我的服务能够检测到何时有人“清除”了“MatchId”字段(为其分配了 NULL),
然后对于在其“MatchId”字段中具有“NULL”的所有行 - 执行一些算法,为它们找到匹配项并分配“MatchId”字段。
问题是 - 如果我使用“SqlDependency”类,并等待它在“MatchId”字段上触发 - 我只会在新行受到影响时收到通知,但任何现有的“MatchId = NULL”行 - 我不会知道关于。
这意味着如果 Windows 服务加载,并且表中已经有 20 行“MatchId = NULL”,并且在接下来的 5 小时内没有人会“清除”“MatchId”行 - 这意味着我不会知道关于现有的 20 行,不会处理它们。
一种解决方案可能是在我设置“SqlDependency”之前 - 我应该执行快速“选择”以查看是否存在任何现有的“MatchId = NULL”行,如果有的话 - 处理它们,然后才设置依赖关系。
问题是 - 在完成处理这些行和设置 SqlDependency 之间的短暂间隔内 - 可能会发生一个事件,其中有人将行更改为“MatchId = NULL”,然后再一次 - 我不会在Sql依赖。
知道如何解决这个问题吗?
(如果最坏的情况发生,我就不会使用SqlDependency,我只需要每XXX分钟轮询一次数据库......)
c# - C# .NET SqlDependency
我对 .NET 中 SqlDependency 的使用有疑问。我已经阅读了文档,但我仍然不清楚 OnChange 事件是否在其自己的线程中被调用。例如,如果我得到 30 个并发事件,它们每个都有自己的 OnChange 偶数处理程序吗?我问的原因是,如果在 OnChange 处理程序中完成的工作阻止了下一个事件,我不想用这个创建引擎。
例如,我有一个 Orders 数据库的 SqlDependency,每次有新订单时,我都会收到 OnChange 事件,然后我可以处理用户的订单。这不会阻止其他人进来,对吗?
另外,您是否发现使用此方法有任何问题?SqlDependency 似乎是一个非常强大的功能,所以我希望它可以这样工作。;)
谢谢
c# - 在多个进程之间拆分工作队列
我有一种情况,我认为工作队列和 SqlDependency 会很合适,但是我无法将它们拼凑在一起。
假设我有 1000 个实体,每个实体必须以不同的时间间隔(即 15、30 或 45 分钟)“处理”。我想在多个进程之间拆分工作,而不必每分钟轮询 SQL Server 以寻找更多工作。我已经阅读了很多与 SqlDependency / Query 通知相关的文章,但无法弄清楚如何对工作进行排队以及如何将每个进程限制为一组工作项。
我编写了一个 SqlDependency 查询,如下所示:
查询以 0 个结果运行,但是当 15 分钟过去了,这将导致此记录集发生更改(其中有更多项目),不会触发通知。我猜它不会以这种方式工作,所以我坚持如何让工作项排队。
另外..当我将 2 个进程附加到同一个工作队列时,每个进程都会收到通知(当我运行select * from dbo.entity
SqlDependency 查询并更改记录时),但它们都收到相同的工作项。我需要在可用进程之间划分工作项,而不知道有多少个侦听器,可能是 2 个或 12 个,具体取决于哪些服务器在线以及哪些服务器离线以进行维护。
客户端将用 C# 编写。
任何已知的模式、想法或方向将不胜感激。
c# - c# 长轮询与 IIS 不一致的 SQL 依赖项
客户的要求是,只要数据库中的特定表发生任何类型的更改,就能够在屏幕上看到刷新的数据。
我们在数据库中有一个 Job 表,其内容显示在浏览器的 GridView 中。要求是在 Jobs 表中发生任何更新、删除或插入时刷新网格数据。
我们使用 SQL 依赖和长轮询技术来实现这一点。SQL 依赖将通知 asp.net 数据库中的任何更改,长轮询将保持 gridview 异步更新。
我们在 IIS 7.0 中部署了它,并注意到不一致的行为,即 gridview 大部分时间都会刷新,比如 90-95%,但有时虽然 DB 表中的数据已更改,但刷新不会发生。
有没有人遇到过这个问题?IIS 中是否需要为此进行任何特定配置?我确实在几个地方读到了 IIS 不能为彗星编程进行扩展。上述场景发生在只有一个用户的测试环境中。任何帮助将不胜感激。提前致谢。
编辑:该问题似乎也发生在 ASP.Net 开发服务器中,而不是与 IIS 隔离。记录消息后,我们发现 SQLDependency 是由于 OnChange 事件未一致触发而中断的原因。
编辑 2:当我运行查询时,select * from sys.dm_qn_subscriptions
我得到了同一通知订阅的几行,即重复订阅。只有 id 列不同。这可能是一个原因吗?如果是,为什么我会得到重复的订阅行?如何从 ASP.NET 终止订阅?
.net - 为什么 TOP 不能和 SQLDependency 一起使用?
我有一个使用 SQLDependency 的应用程序。我想在插入新行时向用户显示插入数据库表的最新行。
当我的查询是一个简单的选择语句时,这可以按预期工作,但是鉴于我想显示最近插入的行,我将查询编写为SELECT TOP
语句。这导致了多个异常。在查看这个问题后,我了解到这TOP
对 SQLDependency 无效,因此我将不得不找到其他解决方案。
这让我想知道两件事:
A) SQLDependency 不支持TOP
表达式的原因是什么?
B)我想出的解决方案是根据 id 对结果进行排序并只显示最后一个。这工作正常,但我的表目前只有很少的行。我正在使用数据集,所以我预计一旦插入更多行,它就会减慢 - 这就是为什么我想将查询限制为仅最近的行。有一个更好的方法吗?
c# - 使用 SqlDependency 类在 C# 中使用 EntityFramework 填充 ICollectionView
我想在将新产品添加到数据库时刷新具有某些产品的 ICollectionView 对象。
如何在 C# 中实现这一点,我正在使用 DAL 的 EntityFramework。
c# - SqlDependency 可靠性?
我目前的情况是我有一个应用程序需要在新数据到达数据库表时得到通知。数据来自外部来源(我无法控制——这是唯一的集成选项)。当新数据到达时,我的应用程序需要采取某些操作——基本上是查询新数据、处理它、将结果插入本地表等。
如果可能的话,我想避免轮询,因为数据应该是实时处理的。也就是说,确保不会丢失任何数据是第一要务。
我的问题:
- SqlDependency 通常被认为是可靠的吗?
- 我是否需要关注竞争条件,例如当另一个更改到达时我正在处理一个更改?
- 当数据库重新启动时会发生什么?我的应用程序会恢复并再次开始接收更改,还是需要某种故障安全计时器来定期重新订阅通知?
- 我读过的大部分文章都是关于 SQL Server 2005 的主题。我使用的是 SQL Server 2008 R2。是否有比 SqlDependency 更受欢迎的新技术?
- (编辑)另外,如果应用程序出现故障怎么办?我想我必须在启动时查询丢失的数据?
c# - SQLDependency -- 无效的 SQL
从这里我可以看出,我并没有打破这个查询的任何规则,但是 change 事件不断地以无效状态触发。
如果我这样做,一切正常。
但是,我不想返回这么多数据,而且 SqlDependency 似乎需要在每次更改事件触发以设置(或重置)订阅后执行一次查询。
知道我的第一个查询中的缺陷是什么吗?