为了组织简化的数据库基于计时器的轮询,每次更新数据库表时,我都需要更新SQL Server 2008数据库中的时间戳字段(然后轮询,读取其值,与前端的值进行比较,并决定是否读取整个表)。
关于这一切,我如何读取系统时间来写入时间戳?要使用哪种SQL Server字段的数据格式(DataTime或Time)?如何比较这种格式的值?
我正在创建一些表,希望在其中存储创建记录的时间和上次更新记录的时间。我想我可以有两个时间戳字段,其中一个字段的值是CURRENT_TIMESTAMP,另一个字段的值是CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP。但是我想我不能这样做,因为在一个表中只能有一个带有默认值的时间戳字段?
你建议我如何获取和存储这两个时间?谢谢!
我的数据库里有一张有两千多万张记录的桌子。该表每天平均增长100.000条记录。我需要在那张桌子上进行计数,最多只需要扫描24小时的记录(平均100 K),我的一般方法是:
获取表上的最新id (Long maxId = SELECT MAX(acc.id) FROM MyTable as acc WHERE 1),因为这是非常fast.Calculate的间隔:Long tolerableMin = maxId - 100000.Then做第二个SELECT count(*) FROM MyTable as acc " + " WHERE a
我有一个表,其中有一个名为product_price的DEC字段,我想添加一个名为price_updated_date的字段。在更新product_price字段时,是否有一种方法可以将表设置为自动插入当前时间戳?
如果没有,是否有方法将其设置为在条目更新时插入当前时间戳?
最新情况:
在这里,使用触发器似乎是最好的选择。我是新的触发器,并有一些困难,创造它。这是我的代码:
CREATE TRIGGER price_update
AFTER UPDATE ON cart_product
FOR EACH ROW
IF(OLD.product_price != NEW.product_price
一些迁移的内容需要将“更新”的时间戳设置为原始时间戳,而不是节点保存持续时间迁移的时间。
设置数据库中的“更改”字段似乎对节点更新时间没有影响吗?
下面是一个示例查询:
update node_field_data set changed = 1535805325 where nid = 2148716;
Query OK, 1 row affected (0.01 sec)
...
select nid,changed,from_unixtime(changed) from node_field_data where nid = 2148716;
+---------+-----------
对于我的数据库,我必须在存储在数据库中的某个unix时间戳上存档一个视频。因此,我认为很容易创建一个触发器,该触发器在插入到表后运行,然后创建一个事件来安排视频的归档。我编写了以下SQL语句:
CREATE TRIGGER `ArchiveVido_onInsert` AFTER INSERT ON `tableName`FOR EACH ROW
CREATE EVENT archiveVideo
ON SCHEDULE AT inserted.Time_to_Archive
DO
UPDATE MediaPage SET is_archived
我有两个通过m2m关系连接的表。
CREATE TABLE words
(
id INT PRIMARY KEY,
word VARCHAR(100) UNIQUE,
counter INT
)
CREATE TABLE urls
(
id INT PRIMARY KEY,
url VARCHAR(100) UNIQUE
)
CREATE TABLE urls_words
(
url_id INT NOT NULL REFERENCES urls(id),
word_id INT
我有两张表: 1个捐赠-包含amount和pet_id字段 2个宠物-带有id和总捐款字段 我正在尝试创建一个触发器,它将更新总捐赠字段,每当一个新的行是插入到捐赠表。我试过这个: create trigger update_donations
on sponserships
for insert
as
update dbo.Pets
set tot_donations = (
select new_val = inserted.amount + pets.tot_donations
from inserted
where inserted.