var oAdo, oMap, oRs, sSQL, bRes, aValues;
oAdo = pMe.Pm("../PmaAdo");
sSQL = "select * from table1";
// Otevření databáze, pokud není otevřená:
if (!oAdo.DbIsOpen())
{
bRes = oAdo.DbOpen();
}
else
{
bRes = true;
}
// Pokud databáze je otevřená, pak lze pokračovat dál
if (bRes)
{
// Otevření příslušné tabulky
oMap = oAdo.RsOpen("", sSQL, "return:map;");
// Zjistí, zda otevření proběhlo úspěšně
if (oMap.ErrorCode == 0)
{
oRs = oMap.Result;
// Zjistí, zda tabulka není prázdná
if (oRs.EOF && oRs.BOF)
{
// Pm.Debug("Tabulka (recordset) neobsahuje žádné záznamy");
return -3;
}
else
{
// Pokud tabulka není prázdná, pak je ji možné načíst jako 2-rozměrné pole
aValues = Pm.CreatePmArray();
aValues.LoadFromVbArray(oRs.GetRows());
return aValues;
}
}
else
{
// Pm.Debug("Chyba otevření tabulky");
return -2;
}
}
else
{
// Pm.Debug("Chyba otevření databáze");
return -1;
}
"select * from table1 where ctime = (select max(ctime) from table1)"
var oAdo, oMap, sSQL, bRes, sTime;
oAdo = pMe.Pm("../PmaAdo");
// Formát času pro databázi MS SQL
sTime = Pm.FormatDate(Pm.Time, 20);
// Formát času pro databázi Oracle
sTime = Pm.FormatDate(Pm.Time, 21);
// Formát času pro databázi MySQL
sTime = Pm.FormatDate(Pm.Time, 22);
sSQL = "insert into table1(ctime, ctemperature, cpress, cstatus, cnote) values (" + sTime + ", 12.5, 1.5, 5, 'New record - INSERT')";
// Otevření databáze, pokud není otevřená:
if (!oAdo.DbIsOpen())
{
bRes = oAdo.DbOpen();
}
else
{
bRes = true;
}
// Pokud databáze je otevřená, pak lze pokračovat dál
if (bRes)
{
// Provedení SQL příkazu
oMap = oAdo.DbExecute("", sSQL, "return:map;");
// Ověření, zda přidání skončilo úspěšně
if (oMap.ErrorCode == 0)
{
// Pokud výsledkem dotazu je množina záznamů, pak ji lze dále zpracovat
// Pm.Debug("Nový záznam byl úspěšně zapsán do databáze");
return 1;
}
else
{
// Pm.Debug("Chyba zapsání nového záznamu do databáze");
return -2;
}
}
else
{
// Pm.Debug("Chyba otevření databáze");
return -1;
}
var oAdo, oMap, sSQL, bRes, sTime;
oAdo = pMe.Pm("../PmaAdo");
// Formát času pro databázi MS SQL
sTime = Pm.FormatDate(Pm.Time, 20);
// Formát času pro databázi Oracle
sTime = Pm.FormatDate(Pm.Time, 21);
// Formát času pro databázi MySQL
sTime = Pm.FormatDate(Pm.Time, 22);
sSQL = "update table1 set ctemperature = 26.5, cPress = 1.83, cstatus = 8, cnote = 'change record UPDATE' where ctime = " + sTime;
// Otevření databáze, pokud není otevřená:
if (!oAdo.DbIsOpen())
{
bRes = oAdo.DbOpen();
}
else
{
bRes = true;
}
// Pokud databáze je otevřená, pak lze pokračovat dál
if (bRes)
{
// Provedení SQL příkazu
oMap = oAdo.DbExecute("", sSQL, "return:map;");
// Ověření, zda přidání skončilo úspěšně
if (oMap.ErrorCode == 0)
{
// Pokud výsledkem dotazu je množina záznamů, pak ji lze dále zpracovat
// Pm.Debug("Stávající záznam byl úspěšně změněn v databázi");
return 1;
}
else
{
// Pm.Debug("Chyba změny stávajícího záznamu v databázi");
return -2;
}
}
else
{
// Pm.Debug("Chyba otevření databáze");
return -1;
}
var oAdo, oMap, oRs, sSQL, bRes;
oAdo = pMe.Pm("../PmaAdo");
sSQL = "select * from table1";
// Otevření databáze, pokud není otevřená:
if (!oAdo.DbIsOpen())
{
bRes = oAdo.DbOpen();
}
else
{
bRes = true;
}
// Pokud databáze je otevřená, pak lze pokračovat dál
if (bRes)
{
// Otevření příslušné tabulky
oMap = oAdo.RsOpen("", sSQL, "lock:optimistic;return:map;");
// Zjistí, zda otevření proběhlo úspěšně
if (oMap.ErrorCode == 0)
{
oRs = oMap.Result;
// Pokud chceme přidat nový záznam, pak není nutno zjišťovat, zda tabulka není prázdná.
oRs.AddNew();
oRs.Fields.Item("ctime").Value = Pm.Time;
oRs.Fields.Item("ctemperature").Value = 12.5;
oRs.Fields.Item("cpress").Value = 1.5;
oRs.Fields.Item("cstatus").Value = 5;
oRs.Fields.Item("cnote").Value = "New record - AddNew";
oRs.Update();
if (oRs.Pm_LastErr == 0)
{
// Pokud výsledkem dotazu je množina záznamů, pak ji lze dále zpracovat
// Pm.Debug("Nový záznam byl úspěšně zapsán do databáze");
return 1;
}
else
{
// Pm.Debug("Chyba zapsání nového záznamu do databáze");
return -3;
}
}
else
{
// Pm.Debug("Chyba otevření tabulky");
return -2;
}
}
else
{
// Pm.Debug("Chyba otevření databáze");
return -1;
}
var oAdo, oMap, oRs, sSQL, bRes, nTime;
oAdo = pMe.Pm("../PmaAdo");
nTime = Pm.Time;
sSQL = "select * from table1";
// Otevření databáze, pokud není otevřená:
if (!oAdo.DbIsOpen())
{
bRes = oAdo.DbOpen();
}
else
{
bRes = true;
}
// Pokud databáze je otevřená, pak lze pokračovat dál
if (bRes)
{
// Otevření příslušné tabulky
oMap = oAdo.RsOpen("", sSQL, "lock:optimistic;return:map;");
// Zjistí, zda otevření proběhlo úspěšně
if (oMap.ErrorCode == 0)
{
oRs = oMap.Result;
// Zjistí, zda tabulka není prázdná
if (oRs.EOF && oRs.BOF)
{
// Pm.Debug "Tabulka (recordset) neobsahuje žádné záznamy"
return -4;
}
else
{
oRs.MoveFirst();
do
{
if (oRs.Fields.Item("ctime").Value ==nTime)
{
oRs.Fields.Item("ctemperature").Value = 26.5;
oRs.Fields.Item("cpress").Value = 1.83;
oRs.Fields.Item("cstatus").Value = 8;
oRs.Fields.Item("cnote").Value = "Change record - PmaAdo/edit";
oRs.Update();
if (oRs.Pm_LastErr == 0)
{
// Pokud výsledkem dotazu je množina záznamů, pak ji lze dále zpracovat
// Pm.Debug("Stávající záznam byl úspěšně změněn v databázi");
return 1;
}
else
{
// Pm.Debug("Chyba změny stávajícího záznamu v databázi");
return -3;
}
}
oRs.MoveNext();
} while (!oRs.EOF);
}
}
else
{
// Pm.Debug("Chyba otevření tabulky");
return -2;
}
}
else
{
// Pm.Debug("Chyba otevření databáze");
return -1;
}