返回介绍

Q语言 - 维护功能(Maintenance Functions)

发布于 2021-05-31 13:43:28 字数 1427 浏览 789 评论 0 收藏 0

.Q.en

.Q.en是一个二元函数,它通过枚举符号列来帮助扩展表。 当我们处理历史数据库(splayed,分区表等)时,它尤其有用。 -

.Q.en[`:directory;table]

其中directorysym file所在的历史数据库的主目录, table是要枚举的表。

手动枚举表不需要将它们保存为splayed表,因为这将通过 -

.Q.en[`:directory_where_symbol_file_stored]table_name

.Q.dpft

.Q.dpft函数有助于创建分区和分段表。 它是.Q.en高级形式,因为它不仅会.Q.en表,还会创建分区表。

.Q.dpft使用了四个参数 -

  • 我们要创建分区的数据库的符号文件句柄,

  • q我们将用于对表进行分区的数据值,

  • 将要应用parted(`p#)属性的字段的名称(通常是`sym),和

  • 表名。

让我们举个例子看看它是如何工作的 -

q)tab:([]sym:5?`msft`hsbc`samsung`ibm;time:5?(09:30:30);price:5?30.25)
q).Q.dpft[`:c:/q/;2014.08.24;`sym;`tab]
`tab
q)delete tab from `
'type
q)delete tab from `/
'type
q)delete tab from .
'type
q)delete tab from `.
`.
q)tab
'tab

我们已从内存中删除了表格tab 。 现在让我们从db加载它

q)\l c:/q/2014.08.24/
q)\a
,`tab
q)tab
   sym      time      price
-------------------------------
  hsbc    07:38:13   15.64201
  hsbc    07:21:05   5.387037
  msft    06:16:58   11.88076
  msft    08:09:26   12.30159
 samsung  04:57:56   15.60838

.Q.chk

.Q.chk是一个monadic函数,其单个参数是根目录的符号文件句柄。 它通过检查根中的每个分区子目录,在必要时在分区中创建空表。

.Q.chk `:directory

其中directory是历史数据库的主目录。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文