Soy nuevo en el desarrollo de aplicaciones HTML5. En esto quiero insertar miles de registros en la base de datos sqlite usando HTML5. Este proceso es muy lento. Cómo usar BEGIN/COMMIT antes de insertar registros. De esta forma, para acelerar las inserciones. Por favor guíame a alguien. Gracias por adelantado. Ejecute este ejemplo en el navegador Chrome. Este es el código para su referencia:Cómo acelerar el proceso al insertar miles de registros en sqlite usando HTML5
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
var msg;
//db.transaction(function(tx){tx.executeSql("BEGIN",[]);});
for(var i=0;i<1000;i++)
{
txquer(i,"test");
}
//db.transaction(function(tx){tx.executeSql("COMMIT",[]);});
db.transaction(function (tx) {
tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) {
var len = results.rows.length, i;
msg = "<p>Found rows: " + len + "</p>";
document.querySelector('#status').innerHTML += msg;
}, null);
});
function txquer(i,test)
{
db.transaction(
function(tx){
tx.executeSql('INSERT INTO LOGS (id, log) VALUES (?, ?)',[i,test]);
}
);
}
</script>
</head>
<body>
<div id="status" name="status">Status Message</div>
</body>
</html>
Saludos, Neeraja.
¿Qué tan lento? ¿Y qué navegador (s)? ¿Alguna muestra de código para mirar? Puede que no esté relacionado con SQLite, pero creo que es posible. – Frank
¿Está realmente ejecutando una consulta para contar los registros en la tabla de registro como parte de cada inserción de registro? Eso te retrasaría bastante dramáticamente. –
intente utilizar html5 webworkers. –