我有一个MySQL数据库,我经常将我的数据复制到Sap HANA DB中进行分析。但是,MySQL DB还处于开发阶段,它总是会出现新的表。对于每个新表,我在HANA中创建了一个匹配表,并在Pentaho中创建了一个新的ETL管道。这对我来说似乎有点傻。我想应该有一些方法可以在HANA中自动构建新表,并将这个新表的数据从MySQL复制到HANA。这是一个有效的想法,或者我仍然应该按照解释做同样的事情?
我想在某些表插入后创建一个通知。例如,每当用户插入注释时,我都会为管理员创建一个通知,这个用户已经创建了一个注释。
我过去经常在PHP中手工操作,它没有那么糟糕,它是这样的:
// after the comment is created
Notification::create(....);
不错,但有时我给用户添加图片、帖子、..etc的能力。所以我必须记住每次都要插入一个通知。
因此,我正在考虑使用mysql触发器代替。但我担心这会对演出产生怎样的影响?
最后一件事是,在多个表插入后是否可以创建触发器?
谢谢,
我想知道在性能上有什么不同:
query 1: CREATE TEMPORARY TABLE temp_table1 AS SELECT * FROM lookup_table JOIN ...
然后
INSERT INTO dest_table SELECT * FROM temp_table1
vs
query 2: INSERT INTO dest_table SELECT * FROM lookup_table JOIN ...
我担心的是,lookup_table经常被不同的用户访问,当我运行Query2时,大多数用户需要等待更长的时间才能检索到他们的结果。我的想法是将数据写入一个
我们正在实现一个聊天服务,我想要一些关于桌子设计的意见。我们的服务使用MySQL,我们的DB有2个表,Thread和Messages。Threads表存储所有聊天线程,messages表存储所有消息。一个聊天线程可以有多条消息,而一条消息只属于一个线程。每条消息都由Messages表中名为messageId的列标识。
在我们的服务中,我们需要时不时地获取每个线程的最后一条消息的messageId。我可以看到两个选项:
1 add a column called lastMessageId to Threads to keep track of the last message; each ti
我正在编写一个锁定表的MySQL查询:
"LOCK TABLE table_1 WRITE"
在此之后,我正在执行一些函数,在其中一个函数中,我正在对另一个未锁定的表执行另一个查询:
"SELECT * FROM completely_different_table_2"
然后,我得到了以下错误消息:
Table 'completely_different_table_2' was not locked with LOCKED TABLES
实际上,MySql告诉我表没有被锁定是正确的。但是为什么会抛出一个错误呢?有人知道我该怎么解决这个问题吗