小编DrC*_*sos的帖子

“存储过程”和“存储函数”有什么区别?

所以这个问题的评论提到,PostgreSQL 中的“存储过程”和“存储功能”略有不同。

评论链接到维基百科文章,但其中一些似乎并不适用(例如,它们可以在SELECT声明中使用)。

语法本身似乎有点混乱:

CREATE FUNCTION emp_stamp() RETURNS trigger AS $emp_stamp$
    BEGIN
       [...]
    END;
$emp_stamp$ LANGUAGE plpgsql;

CREATE TRIGGER emp_stamp BEFORE INSERT OR UPDATE ON emp
    FOR EACH ROW EXECUTE PROCEDURE emp_stamp();
Run Code Online (Sandbox Code Playgroud)

您创建了一个FUNCTION但将其称为PROCEDURE.

那么这两者有什么区别呢?

postgresql stored-procedures plpgsql

47
推荐指数
6
解决办法
5万
查看次数

开源商业智能/DWH 解决方案

我想知道这个问题还没有被问过。谷歌对我来说只有很少的结果没有显示高质量的工具

有哪些用于数据仓库的开源(也可以免费)解决方案,更具体地说是商业智能工具?你和他们有什么经历。我在我的硕士课程中有过一门课程,我们使用 MS 商业智能和 MSSQL 作为数据仓库存储。现在我想通过“开放”的工具深入探讨这个话题。

是否有任何可比较的商业智能工具(主要是独立于数据库的),您是否有使用它们的经验?

编辑玛丽安对斯蒂芬妮的回答的评论,我发现我把这个问题表述错了。我知道 DWH 只是“报告优化”数据库,斯蒂芬妮对此的解释非常清楚。我更感兴趣的是如何使用什么类型的 BI 软件/工具/其他技术将数据转换为这种优化的形式。

tools data-warehouse database-agnostic business-intelligence

17
推荐指数
2
解决办法
4213
查看次数

如何监控死锁

您什么时候开始对 SQL Server 2005/2008 死锁进行故障排除以及如何进行?警报通过 SQL Server 性能条件警报打开 SSMS,对象->SQLServer:Locks,Counter->Lock Waits/Sec,Instance:_Total,警报如果 counter: 上升到值 3 以上。这是一种主动监控它的方式吗?可接受的值是多少?我非常感谢你的帮助。谢谢!!!

sql-server deadlock

11
推荐指数
1
解决办法
1万
查看次数

Postgres、MVCC 和锁定

我有一系列 SQL 语句,如下所示:

BEGIN;
SELECT counter FROM table WHERE id=X FOR UPDATE;
REALLY COMPLEX QUERY;
UPDATE table SET counter=Y WHERE id=X;
END;
Run Code Online (Sandbox Code Playgroud)

我想防止在重新计算计数器值时读取计数器,但根据 Postgres 文档“行级锁不影响数据查询;它们只阻止写入者到同一行。”

问题:

  1. 如果不阻止读取,“排他”行锁有什么意义?难道只是为了防止其他事务获取共享锁?
  2. 如果我使用 SELECT ... FOR SHARE 读取该行,是否达到与“排他”锁相同的效果?
  3. 是否可以关闭表/模式/数据库的 MVCC 并允许就地写入?

postgresql locking

9
推荐指数
1
解决办法
2577
查看次数

从查询中排除数据集

我有2张桌子

  • EXAM( StudentID, SubjectID, SchoolYear, Period, Mark) 和
  • CANCELED_考试(StudentID, SubjectID, SchoolYear, Period)。

两个表的主键都是 ( StudentID, SubjectID, SchoolYear, Period)。

当学生想参加考试时,我们在EXAM表格中写一行。但是如果学生通过了考试但不满意,那么他想取消考试,我们需要在 table 中写一行CANCELED_EXAM

我的问题是:如何从 table 中选择未取消的考试EXAM

mysql database-design

3
推荐指数
1
解决办法
130
查看次数