【发布时间】:2015-05-07 03:55:08
【问题描述】:
我对存储过程完全陌生,但我知道这可能比每次需要执行此类操作时都尝试编写 PHP+MySQL 代码更有效。
我有两张桌子。 CapitalAssets、系统 我想找到所有不为空的 CapitalAssets.ServerName
我必须将这两个表链接在一起,Systems 表有 IP 地址,hostname。
我想(逐行)抓取 CapitalAssets.ServerName 并搜索 Systems.hostname,如果找到我想链接/打印
CapitalAssests:Systems.id、Systems.hostname、Systems.IP、CapitalAssets.id、CapitalAssets.ServerName
这是我的存储过程的开始,这是错误的。我现在不知道如何通过 Systems.hostname 进行搜索(?在哪里)
begin
declare GSATcur cursor for
'select id,NEName,ManagementAddress FROM GSAT WHERE NEName like ?';
declare CapitalCurr CURSOR FOR
'SELECT id,SystemName FROM CapitalAssets WHERE SystemName != ""';
DECLARE start INT DEFAULT 0;
DECLARE sysname_not_found BOOL DEFAULT FALSE;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET sysname_not_found = TRUE;
OPEN GSATcur;
OPEN CapitalCur;
loop1:
WHILE start < 5 do
FETCH SystemName INTO NEName;
IF sysname_not_found THEN
LEAVE loop1;
END IF;
END WHILE;
CLOSE CapitalCur;
CLOSE GSATcur;
END;
这两个表的 dB 相同。
【问题讨论】: