问题标签 [extensible-storage-engine]

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.

0 投票
1 回答
223 浏览

.net - 是否有支持 ESE 的 ORM?

好吧,我开始基于ESE 互操作项目为ESE编写托管 ORM 。

我想知道是否有人知道其他支持 ESE 的 ORM?

0 投票
1 回答
96 浏览

c++ - 使用 Microsoft 可扩展存储引擎创建唯一的自动分配变量

我正在使用可扩展存储引擎并想要一个唯一的列(32 位宽)。我需要此列中的值由数据库自动分配

我希望找到像 JET_bitIndexUnique 这样我可以掩盖的东西?

如果没有这样的面具,那么实现目标的正确方法是什么?

0 投票
2 回答
773 浏览

c++ - 如何在代码中进行可扩展存储引擎(JetBlue)修复?

我在应用程序中使用 ESE (JetBlue),当调用 JetAttachDatabase 时,它​​返回 JET_errDatabaseDirtyShutdown。我应该在我的应用程序中做什么?我希望删除任何未完成的交易

0 投票
1 回答
186 浏览

c# - 用于 XmlSerialize 任意对象的 ESE 列类型

将对象 XmlSerialize 到我的 ESE DB 的最佳 ESE 列类型是什么?

“长二进制”和“长 ASCII 文本”都可以正常工作。

长二进制的原因:绝对确定没有字符对话。

长文本的原因:XML 是文本。

似乎 MSDN 说这两种类型仅在排序和搜索时有所不同。显然我不会在该列上创建任何索引。需要可搜索和/或可排序的字段存储在适当类型的单独列中。

假设任何 UTF8 文本(小于 2GB)可以保存到 ESE“长 ASCII 文本”列值并从其加载,是否安全?

0 投票
2 回答
277 浏览

c++ - 如何在可扩展存储引擎 (JetBlue) 中的 JetUpdate() 之后获取 AutoIncrement 值

在调用 JetSetColumns() 然后 JetUpdate() 我如何检索任何新分配的自动增量值的值?

0 投票
1 回答
242 浏览

extensible-storage-engine - 我可以访问已在使用的 ESE 数据库吗?

Windows ESE 引擎 API 调用 JetAttachDatabase 有一个只读选项。我可以用它来挂载一个已经被另一个进程挂载的数据库吗?

0 投票
1 回答
602 浏览

database - 如何通过可扩展存储引擎(JetBlue)限制内存使用量?

我有一个应用程序,它经常非常严重地访问 ESE 数据库,然后停止很长时间。在达到数据库内存使用率之后(超过 150MB)并保持高位。我假设 ESE 有很多缓存数据。

有没有办法限制 ESE 的内存使用量?我很高兴遭受任何性能打击

我见过的减少内存使用的唯一方法是关闭数据库

0 投票
1 回答
714 浏览

database - 在 ESE (JetBlue) 中有没有办法限制使用多个键的搜索?

在 Extensbile Strage Engine (ESE/JetBlue) 中,我有一个表,其中包含我想使用两个索引定位的数据

假设每一行都有三个整数 X、Y 和 Z。我想快速找到 X=10 和 Y=20 的所有行(例如)

结果集将包含 X=10、Y=20 和 Z= 的所有条目,只要 Z 恰好是

这可能吗?

的顺序

JetSetCurrentIndex()、JetMakeKey()、JetSeek() 和 JetMove() 让我感到困惑。我不是 100% 这甚至可以不搜索 X=10 然后过滤所有 Y!=20 我自己的值?

谢谢!

0 投票
1 回答
628 浏览

database-restore - 恢复完整的外部 ESENT 备份

我使用 JetBeginExternalBackup API 编写了创建 ESENT 数据库完整备份的代码。

按照 MSDN 指南,我备份了 JetGetAttachInfo 和 JetGetLogInfo 返回的每个文件。

我已经进行了备份,删除了旧数据库,并将备份数据复制到数据库文件夹中。DB 引擎无法启动,JetInit 错误代码为“JET_errMissingLogFile”。

我检查了备份,它只包含数据库文件和“<inst>XXXXX.log”日志文件。它缺少当前的日志文件(我正在使用循环日志,顺便说一句)。

有没有办法恢复这样的备份?

我不想使用 JetExternalRestore API,因为它太复杂了:我不需要恢复到另一个位置,我不明白为什么有 3 个输入文件夹而不是 2 个,而且我不知道要提供的值在 genLow 和 genHigh 参数中。

我确实需要外部备份:ASP.NET 在远程服务器上使用 ESENT 数据库,我正在通过 Internet 对其进行备份。

或者,也许有一种方法可以检索当前日志文件的名称,我应该将它添加到备份中?

提前致谢!

PS 我没有权限跨我的网络服务器上的进程,所以使用 eseutil.exe 不是一个选项。

0 投票
2 回答
1559 浏览

database - 将一百万条小记录插入可扩展存储引擎 (JetBlue) - 快速

我希望 Laurion Burchall 能读到这个:-)

我需要尽快插入一百万条小记录。

现在我处于一个非常紧张的循环中,对于每条记录,我

现在,在这个过程中,我在一个处理器上处于一个紧密的循环中。目标机器有多个 CPU、大磁盘和大量可用 RAM。

我想知道如何获得更好的性能。

就交易而言,我做了一些实验,如果我在一个交易中放入太多数据,就会出现错误回来的麻烦。我想更好地了解那里发生了什么 - 我是否有错误,或者交易的大小是否有上限,如果有上限,我可以扩大上限吗?我只是对此进行调查,因为我猜测事务使 ESE 能够在 RAM 中进行更多缓存,最大限度地减少磁盘刷新?- 这只是一个猜测?

一般来说,我如何利用多个处理器/大量 RAM/和漂亮的磁盘?我要打开数据库两次然后从那里去吗?我不太确定在线程安全和事务方面会发生什么。如果我有两个数据库句柄,每个句柄都在一个事务中,那么在提交之前,第二个句柄是否可以立即写入,还是我需要先提交?

任何提示表示赞赏

谢谢!