Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我正在组织更多的表格,非常有趣,很高兴您能超越原始参数。我将等待更长的时间,看看是否有人认为他们值得一提的答案,但这很可能会得到赏赐:“不客气。”我的灵感来自乔·塞尔科。我将在答案中添加一个相关的引用。这是一个很好的答案,但我会在审计数据中包含用户身份(即_Php_Mysql_Sql - Fatal编程技术网

Php 我正在组织更多的表格,非常有趣,很高兴您能超越原始参数。我将等待更长的时间,看看是否有人认为他们值得一提的答案,但这很可能会得到赏赐:“不客气。”我的灵感来自乔·塞尔科。我将在答案中添加一个相关的引用。这是一个很好的答案,但我会在审计数据中包含用户身份(即

Php 我正在组织更多的表格,非常有趣,很高兴您能超越原始参数。我将等待更长的时间,看看是否有人认为他们值得一提的答案,但这很可能会得到赏赐:“不客气。”我的灵感来自乔·塞尔科。我将在答案中添加一个相关的引用。这是一个很好的答案,但我会在审计数据中包含用户身份(即,php,mysql,sql,Php,Mysql,Sql,我正在组织更多的表格,非常有趣,很高兴您能超越原始参数。我将等待更长的时间,看看是否有人认为他们值得一提的答案,但这很可能会得到赏赐:“不客气。”我的灵感来自乔·塞尔科。我将在答案中添加一个相关的引用。这是一个很好的答案,但我会在审计数据中包含用户身份(即请求者)。虽然在上述答案的正文中提到了这一点,但我强烈建议您从第一天开始这样做(注意,您不能及时返回以确定是谁要求提供信息)。 DELIMITER $$ CREATE PROCEDURE `FetchRows`(IN StartID INT,


我正在组织更多的表格,非常有趣,很高兴您能超越原始参数。我将等待更长的时间,看看是否有人认为他们值得一提的答案,但这很可能会得到赏赐:“不客气。”我的灵感来自乔·塞尔科。我将在答案中添加一个相关的引用。这是一个很好的答案,但我会在审计数据中包含用户身份(即请求者)。虽然在上述答案的正文中提到了这一点,但我强烈建议您从第一天开始这样做(注意,您不能及时返回以确定是谁要求提供信息)。
DELIMITER $$
CREATE PROCEDURE `FetchRows`(IN StartID INT, IN EndID INT)
BEGIN
    UPDATE Blah SET ViewCount = ViewCount+1 WHERE id >= StartID AND id <= EndID;
    # ^ Assumes counts are stored in the same table. If they're in a seperate table, do an INSERT INTO ... ON DUPLICATE KEY UPDATE ViewCount = ViewCount+1 instead.
    SELECT * FROM Blah WHERE id >= StartID AND id <= EndID;
END$$
DELIMITER ;
CREATE TABLE AuditTable
(
    ID int 
    IDENTITY -- SQL Server
    SERIAL -- Postgres
    AUTO_INCREMENT -- MySQL
    NOT NULL,
    ItemID int NOT NULL,
    RequestDateTime datetime NOT NULL
)
SELECT ItemID, Col1, Col2, ...
FROM MainTable
WHERE <complex criteria>
CREATE TEMPORARY TABLE TempTable
(
    ItemID int NOT NULL,
    Col1 ..., 
    Col2 ..., 
    ...
)
ENGINE = MEMORY
SELECT ItemID, Col1, Col2, ...
FROM MainTable
WHERE <complex criteria>
;

INSERT INTO AuditTable (ItemID, RequestDateTime)
SELECT ItemID, NOW()
FROM TempTable;

SELECT ItemID, Col1, Col2, ...
FROM TempTable
ORDER BY ...;
MERGE INTO AuditTable
USING
(
    SELECT ItemID, Col1, Col2, ...
    FROM MainTable
    WHERE <complex criteria>
) AS Src
ON 1 = 0
WHEN NOT MATCHED BY TARGET THEN
INSERT
    (ItemID, RequestDateTime)
VALUES
    (Src.ItemID, GETDATE())
OUTPUT
    Src.ItemID, Src.Col1, Src.Col2, ...
;