how to stop loading extra rows in sqliteHow to list the tables in a SQLite database file that was opened with ATTACH?How do I check in SQLite whether a table exists?Is it possible to insert multiple rows at a time in an SQLite database?Improve INSERT-per-second performance of SQLite?What are the best practices for SQLite on Android?Select first row in each GROUP BY group?How do I pass command line arguments to a Node.js program?How to decide when to use Node.js?How to exit in Node.jsHow do I update each dependency in package.json to the latest version?
When conversion from Integer to Single may lose precision
Find the Factorial From the Given Prime Relationship
What is the actual quality of machine translations?
How to chain Python function calls so the behaviour is as follows
Preventing Employees from either switching to Competitors or Opening Their Own Business
Are there downsides to using std::string as a buffer?
Which comes first? Multiple Imputation, Splitting into train/test, or Standardization/Normalization
Why doesn't Adrian Toomes give up Spider-Man's identity?
Comparing and find out which feature has highest shape area in QGIS?
If you had a giant cutting disc 60 miles diameter and rotated it 1000 rps, would the edge be traveling faster than light?
How did they achieve the Gunslinger's shining eye effect in Westworld?
Frame failure sudden death?
Cross-dimension teleportation using command block or datapack?
Soft question: Examples where lack of mathematical rigour cause security breaches?
What risks are there when you clear your cookies instead of logging off?
Was the output of the C64 SID chip 8 bit sound?
Is open-sourcing the code of a webapp not recommended?
How do I write "Show, Don't Tell" as a person with Asperger Syndrome?
Words that signal future content
Does an ice chest packed full of frozen food need ice?
What is the giant octopus in the torture chamber for?
Is an early checkout possible at a hotel before its reception opens?
Last survivors from different time periods living together
How can drunken, homicidal elves successfully conduct a wild hunt?
how to stop loading extra rows in sqlite
How to list the tables in a SQLite database file that was opened with ATTACH?How do I check in SQLite whether a table exists?Is it possible to insert multiple rows at a time in an SQLite database?Improve INSERT-per-second performance of SQLite?What are the best practices for SQLite on Android?Select first row in each GROUP BY group?How do I pass command line arguments to a Node.js program?How to decide when to use Node.js?How to exit in Node.jsHow do I update each dependency in package.json to the latest version?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I have a chat system with nodejs and php, when the user clicks on a room, the chats are fetched from nodejs from a sqlite database
const query = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit 10").all()
Here req.body.ll.toString()
is the id of the chat room with a fixed limit. So when the user scrolls at the top of the chats, more chats are loaded from a complete new request in nodejs, the limit is saved in the client side as a number, the last chat is known from the limit and the timestamp is fetched of the last chat, then all the chats before that time are fetched.
const more = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit "+ limit +"").all()
var timestamp = more[more.length-1].timee; // last chat's time
var itsid = more[more.length-1].id; // last chat's id
limit = limit + 1; // limit is increased to one for testing
const morechats = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' and timee < '"+ timestamp +"' ORDER BY `timee` DESC limit "+ limit +"").all()
But if the user scrolls above two times, chats are loaded again and are duplicated, so is there a way to keep track of the chats to check if the number of chats are equal to the chats in the db then chats won't load again with sqlite? I'm using better-sqlite as a library to communicate with the database
node.js sqlite better-sqlite3
add a comment |
I have a chat system with nodejs and php, when the user clicks on a room, the chats are fetched from nodejs from a sqlite database
const query = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit 10").all()
Here req.body.ll.toString()
is the id of the chat room with a fixed limit. So when the user scrolls at the top of the chats, more chats are loaded from a complete new request in nodejs, the limit is saved in the client side as a number, the last chat is known from the limit and the timestamp is fetched of the last chat, then all the chats before that time are fetched.
const more = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit "+ limit +"").all()
var timestamp = more[more.length-1].timee; // last chat's time
var itsid = more[more.length-1].id; // last chat's id
limit = limit + 1; // limit is increased to one for testing
const morechats = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' and timee < '"+ timestamp +"' ORDER BY `timee` DESC limit "+ limit +"").all()
But if the user scrolls above two times, chats are loaded again and are duplicated, so is there a way to keep track of the chats to check if the number of chats are equal to the chats in the db then chats won't load again with sqlite? I'm using better-sqlite as a library to communicate with the database
node.js sqlite better-sqlite3
1
Couldn't you just load a specific number of chat entries with every scroll? This would make the paging easier. If you want to keep your logic you could filter out already loaded chats in the frontend by using some sort of chat-id?
– eol
Mar 24 at 17:26
@eol the number of loaded chats are fixed, also if i expose the chat id, i'm afraid that i might expose a vulnerability? Or should i encrypt every id? That's gonna consume resources
– window.document
Mar 24 at 20:14
add a comment |
I have a chat system with nodejs and php, when the user clicks on a room, the chats are fetched from nodejs from a sqlite database
const query = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit 10").all()
Here req.body.ll.toString()
is the id of the chat room with a fixed limit. So when the user scrolls at the top of the chats, more chats are loaded from a complete new request in nodejs, the limit is saved in the client side as a number, the last chat is known from the limit and the timestamp is fetched of the last chat, then all the chats before that time are fetched.
const more = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit "+ limit +"").all()
var timestamp = more[more.length-1].timee; // last chat's time
var itsid = more[more.length-1].id; // last chat's id
limit = limit + 1; // limit is increased to one for testing
const morechats = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' and timee < '"+ timestamp +"' ORDER BY `timee` DESC limit "+ limit +"").all()
But if the user scrolls above two times, chats are loaded again and are duplicated, so is there a way to keep track of the chats to check if the number of chats are equal to the chats in the db then chats won't load again with sqlite? I'm using better-sqlite as a library to communicate with the database
node.js sqlite better-sqlite3
I have a chat system with nodejs and php, when the user clicks on a room, the chats are fetched from nodejs from a sqlite database
const query = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit 10").all()
Here req.body.ll.toString()
is the id of the chat room with a fixed limit. So when the user scrolls at the top of the chats, more chats are loaded from a complete new request in nodejs, the limit is saved in the client side as a number, the last chat is known from the limit and the timestamp is fetched of the last chat, then all the chats before that time are fetched.
const more = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' ORDER BY `timee` DESC limit "+ limit +"").all()
var timestamp = more[more.length-1].timee; // last chat's time
var itsid = more[more.length-1].id; // last chat's id
limit = limit + 1; // limit is increased to one for testing
const morechats = db.prepare("SELECT * FROM Chats Where chatRoom = '" + req.body.ll.toString() + "' and timee < '"+ timestamp +"' ORDER BY `timee` DESC limit "+ limit +"").all()
But if the user scrolls above two times, chats are loaded again and are duplicated, so is there a way to keep track of the chats to check if the number of chats are equal to the chats in the db then chats won't load again with sqlite? I'm using better-sqlite as a library to communicate with the database
node.js sqlite better-sqlite3
node.js sqlite better-sqlite3
edited Mar 24 at 20:15
window.document
asked Mar 24 at 16:10
window.documentwindow.document
519118
519118
1
Couldn't you just load a specific number of chat entries with every scroll? This would make the paging easier. If you want to keep your logic you could filter out already loaded chats in the frontend by using some sort of chat-id?
– eol
Mar 24 at 17:26
@eol the number of loaded chats are fixed, also if i expose the chat id, i'm afraid that i might expose a vulnerability? Or should i encrypt every id? That's gonna consume resources
– window.document
Mar 24 at 20:14
add a comment |
1
Couldn't you just load a specific number of chat entries with every scroll? This would make the paging easier. If you want to keep your logic you could filter out already loaded chats in the frontend by using some sort of chat-id?
– eol
Mar 24 at 17:26
@eol the number of loaded chats are fixed, also if i expose the chat id, i'm afraid that i might expose a vulnerability? Or should i encrypt every id? That's gonna consume resources
– window.document
Mar 24 at 20:14
1
1
Couldn't you just load a specific number of chat entries with every scroll? This would make the paging easier. If you want to keep your logic you could filter out already loaded chats in the frontend by using some sort of chat-id?
– eol
Mar 24 at 17:26
Couldn't you just load a specific number of chat entries with every scroll? This would make the paging easier. If you want to keep your logic you could filter out already loaded chats in the frontend by using some sort of chat-id?
– eol
Mar 24 at 17:26
@eol the number of loaded chats are fixed, also if i expose the chat id, i'm afraid that i might expose a vulnerability? Or should i encrypt every id? That's gonna consume resources
– window.document
Mar 24 at 20:14
@eol the number of loaded chats are fixed, also if i expose the chat id, i'm afraid that i might expose a vulnerability? Or should i encrypt every id? That's gonna consume resources
– window.document
Mar 24 at 20:14
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55325788%2fhow-to-stop-loading-extra-rows-in-sqlite%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55325788%2fhow-to-stop-loading-extra-rows-in-sqlite%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Couldn't you just load a specific number of chat entries with every scroll? This would make the paging easier. If you want to keep your logic you could filter out already loaded chats in the frontend by using some sort of chat-id?
– eol
Mar 24 at 17:26
@eol the number of loaded chats are fixed, also if i expose the chat id, i'm afraid that i might expose a vulnerability? Or should i encrypt every id? That's gonna consume resources
– window.document
Mar 24 at 20:14