SQLite Forum

Timeline
Login

50 most recent forum posts by user JMAranda

2021-09-06
21:50 Post: Ah Charlotte, we've had a problem? (artifact: 5d7bfeba23 user: JMAranda)

RDBMS Are Not Designed To Handle Change. RDBMS Are Not Designed for Heterogeneous Data. RDBMS Are Not Designed For Scale. RDBMS Are Not Designed for Mixed Workloads. RDBMS Are A Mismatch for Modern App Development.

https://www.marklogic.com/blog/relational-databases-change

19:45 Edit reply: Automatic indexing (idle question) (artifact: 6de8298501 user: JMAranda)

My grandfather started programming with the IBM 2300 magnetic drum. Then came tracks and cylinders, files, ISAM, SQL. Each step absorbs the previous one. Indexes will be automatic one day for sure. But for now the design of it is the responsibility of the programmer. Indexes usually take up more space than tables. I've seen systems with terabytes of indexes. Indexes are a drag. Quantum computers will finish them off.

19:36 Reply: The characters to be escaped in Sqlite3 to prevent Sql Injection (artifact: ae03deb35a user: JMAranda)

It's about Attackers. But I will follow your advice. No more cryptic jokes. From the Lempel–Ziv–Markov chain algorithm upwards.

19:23 Reply: Setting TOP variable does not set tcl scripts correctly (artifact: 54e1d4b1af user: JMAranda)

There are people who, faced with a good list of errors, go into panic mode and start editing like crazy. I recommend calm. Calm down, have a tea and ask here.

19:15 Reply: Automatic indexing (idle question) (artifact: 93870a3bc1 user: JMAranda)

N columns require 2^n indices.

19:13 Reply: Automatic indexing (idle question) (artifact: 50d96e351b user: JMAranda)

My grandfather started programming with the IBM 2300 magnetic drum. Then came tracks and cylinders, files, ISAM, SQL. Each step absorbs the previous one. Indexes will be automatic one day for sure. But for now the design of it is the responsibility of the programmer. Indexes usually take up more space than tables. I've seen systems with terabytes of indexes. Indexes are a drag.

12:15 Reply: The characters to be escaped in Sqlite3 to prevent Sql Injection (artifact: f8c1ef73a2 user: JMAranda)

I once collaborated with an African NGO. They send them old computers. You know, for schools, hospitals, etc. But what they really liked was.. spending days trying to decipher any possible residual content on the hard drive!

12:00 Reply: Issues with sqlite3IsNaN() and HAVE_ISNAN (artifact: 3c016d37b4 user: JMAranda)

Admired Doctor, the Real number 4.0 has a fractional part with value 0. The integer number 4 does not have a fractional part. Excuse the pedantic comment, but one has seen a lot of mathematics.

2021-09-05
13:38 Reply: The characters to be escaped in Sqlite3 to prevent Sql Injection (artifact: 6288d22649 user: JMAranda)

Yes, a real hole in one.

2021-09-04
12:40 Reply: A suggestion: temp0000, temp0001.. (artifact: 59d7eba183 user: JMAranda)

Oh forget it already, it's just a stupid idea. I'm going to erase it.

12:37 Reply: A suggestion: temp0000, temp0001.. (artifact: 0569f25ef4 user: JMAranda)

Oh that's nothing. American Randy Gardner holds the world record for having gone the longest without sleep. A 17-year-old high school student in San Diego, Gardner went without sleep for 11 days. I suggest you a comfortable office sofa.

11:53 Reply: A suggestion: temp0000, temp0001.. (artifact: d94cd811de user: JMAranda)
Store the last file number created in a global counter.
Increase it by any fixed or random amount and ... Eh Voila!
I speak of very easy things. The things that work.
If any Hacker discovers it, he will try to exploit it. They are reckless. 
They love to discover silly things.
Create a file with an attractive name. Record all metadata.
Never use it.
If something changes, even if it is the last reading date, you are not alone.
2021-09-03
19:25 Reply: When is "IS" used in SQLite? (artifact: c25353b449 user: JMAranda)

Amazing that being able to drink legally. Here vintage wine and Serrano ham are a whole culture.

19:04 Reply: What happens if I define LONGDOUBLE_TYPE as double? (artifact: 1845376244 user: JMAranda)

Perhaps you can use the "intrin.h". Or the MSYS2-MINGW.

19:00 Reply: Database disk image is malformed (artifact: 7fc7b8e7ea user: JMAranda)

Cherchez la thread!

18:39 Reply: A suggestion: temp0000, temp0001.. (artifact: 5ccc23afd9 user: JMAranda)

With a catalog it is O (1). Without catalog is O (log maxfile).

2021-09-02
12:56 Reply: Why WAL file (-wal) may disappear? (artifact: f41ecd11b7 user: JMAranda)

All that on your phone? But is something really wrong? Not seeing the file is not valid. You have to program that part. Does the same happen without loose threads? Do not leave any loose thread. Could it be that SQLite gives you Busy? :-)

11:14 Reply: SEGV in online backup API (artifact: c906ef762f user: JMAranda)

What is that thread safe? Sometimes you have to impose good practices. Or limit the bad ones.

11:08 Reply: A suggestion: temp0000, temp0001.. (artifact: a4b0c54d5f user: JMAranda)

Or a trap.

11:05 Reply: install sqlite on windows10 (artifact: 4f9fa671fa user: JMAranda)

"The secret to walkin´ on water is knowing where the rocks are." And SQL is a rock.

2021-09-01
12:50 Post: A suggestion: temp0000, temp0001.. (artifact: aac6fee906 user: JMAranda)

A suggestion for temporary file names. I usually use numbered names. That way they are easier to handle. There is no need to go through the directory. And the name is unique with absolute certainty. You know: temp0000, temp0001, ..

12:44 Reply: several potential bugs of null pointer dereference (artifact: 198a5eea82 user: JMAranda)

The formal verification of a system requires defining a context, some axioms. Download a free program and use it without more on SQLite, in case you find a bug and report it, I think it is not serious.

12:35 Delete reply: several potential bugs of null pointer dereference (artifact: 5616a58d71 user: JMAranda)
Deleted
2021-08-31
13:56 Edit reply: several potential bugs of null pointer dereference (artifact: 724e55308e user: JMAranda)

Hmm. Interesting. But I better study this subject more thoroughly before venturing an opinion.

12:09 Reply: several potential bugs of null pointer dereference (artifact: 2976d71578 user: JMAranda)

They are not bugs. It has already been explained to you that Static Analyzers give false positives. They fail because they lack the context information. You should study the subject further.

11:57 Reply: Possible bug: Unexpected result using correlated aggregate subquery (artifact: 64fb59f87c user: JMAranda)

¡ Que grande eres Maestro !

2021-08-30
18:14 Reply: A thought on LIKE/GLOB optimization (artifact: faa0c7c043 user: JMAranda)

Clarification: the expression "Mutatis Mutandis" which belongs to classical Latin, is equivalent to current "up to isomorphism".

18:08 Reply: install sqlite on windows10 (artifact: d8caaaad77 user: JMAranda)

It's very simple. First you have to run the classic configure script. This script leaves everything adapted to your PC. Then just type make, make install. In Windows 10 it can be installed in native, on MSYS2-MINGW or on CYGWIN. In the first 2 you get EXE windows. And the last one is POSIX. You don't need to install a Linux at all. And on this same website you will find EVERYTHING you need.

17:59 Reply: A good reason to choose SQLite (artifact: a6bcea105c user: JMAranda)

I have always believed that the endless manuals of many software products hide a certain unspeakable subliminal message.

2021-08-27
17:45 Reply: Amalgamation file for specific extension (artifact: 801ea8b016 user: JMAranda)

My tool-chain includes the COAN tool:

"... the source code is obscured by preprocessor logic that differentiates several variants by reference to preprocessor symbols, coan can be given a configuration that specifies any of these variants and will be able to generate a simpler version of the source code that represents only the specifed variant.

Source code re-written by coan is not pre-processed code as produced by the preprocessor. It still contains comments, macro-invocations, and #directives. It is still source code, but simplified."

After applying Coan to any file, like our Amalgamation, the source code is much more readable. You miss references to exotic environments, with names like VxWorks or QNX, but you can't have everything.

2021-08-26
18:52 Reply: MIN()/MAX() performance thought (artifact: 2272562b93 user: JMAranda)

Perhaps it requires more precise definitions, such as unique or primary key. All in all, evaluating aggregates with a quick read (fast-full-scan) seems acceptable to me. In current systems, with large read caches, it is fast. You also get the additional benefit of updating all the information in the table.

11:51 Reply: "database or disk is full" with in-memory database. Suggested next steps? (artifact: b264a1d029 user: JMAranda)
Spreading the tables across multiple databases is a good practice.
2021-08-23
20:59 Reply: How to select columns that have name beginning with same prefix? (artifact: 2143b2d104 user: JMAranda)
If you read an IBM DB2 manual you will see that it describes hundreds of options. 
At the end, in a colored box, it says: IBM recommends not using any of these options.
It is hilarious but it is an example of what are called "best practices".
Perhaps SQLite could also give that kind of suggestion in its documentation.
19:52 Reply: lemon.out is great (artifact: 5d6119ff5d user: JMAranda)
My respect for certain SQLite files clearly exceeds the level of fear.
19:46 Reply: Coverting 305GB CSV to sqlite database (artifact: 36726f58ef user: JMAranda)
After painstakingly shredding my copy of SQLite, I have learned to program the virtual machine directly. Some kind of Assembler.
It's an idea.
19:39 Reply: When is "IS" used in SQLite? (artifact: 24044ea34c user: JMAranda)
SQLite reaches a surprising level of detail.
Greetings and thanks to all.
12:56 Reply: When is "IS" used in SQLite? (artifact: 1c0d08155b user: JMAranda)
Thank you. It's overwhelming.
12:54 Reply: Random crash doing SELECT (artifact: d60011c4a2 user: JMAranda)
Remember guys. Theads are Evil. We all know it.
There is nothing 100x100 safe against that.
But we continue to use them.
Those who repeat exactly the same thing hoping for a different result are very loved by the Gods.
12:44 Post: When is "IS" used in SQLite? (artifact: 43eb373d68 user: JMAranda)
When is "IS" used in SQLite?
2021-08-12
10:21 Reply: help! decimal field multiplication error? (artifact: cb7e088f58 user: JMAranda)
Use fixed point, using integers or strings.
And you won't see the typical floating point arithmetic stuff.
10:13 Reply: Test ACID properties SQLITE (artifact: 64438c25ee user: JMAranda)
"SQLite" is fully certified. You can read the leaflet. It has few contraindications. And few known side effects. And 10^12 units have already been sold.
2021-08-10
18:47 Reply: Fail to calculate long expression (artifact: 707a37706c user: JMAranda)
PARI/GP:
? (((((((788)*(8.46))))+8342*1.803-1))*4186.4*(15))*(((22/((7530/((2)*(((((25))-421))))))*597)+7283.8-9.60+167))+(8871)

%1 = 8259816920615.113759362549801

Earlier I said that PARI/GP was an C.A.S. I was wrong.
Je me suis trompé. PARI/GP est LE Système de Calcul Algébrique.
18:13 Reply: Fail to calculate long expression (artifact: 032fb6efce user: JMAranda)
Online PARI/GP
https://pari.math.u-bordeaux.fr/gp.html

? ( ((50.266))/2%((2816.31)/(996.7/8175.445-59.546)/((47))*((((93.614))+(((8*(19.6093/28))))))/(79.577-(178/82.7%(2020.26)-271.497%(7.495)*22.42/(892.4036)+((22)+
(...)
((4769.7))))%151))))))+98-32.1677-547/8)*5)-417%(962.3)/557.431%275+90)%(((2174.78)))-232-1-((233.40)%(4502)%(((7)))/415)) ) 

%1 = 25.13300000000000000000000000

The result is rational, Q. Mod function is defined over Z and Q. 
Mod function over R is..? Nice, really nice.
https://en.wikipedia.org/wiki/Bordeaux_wine
17:30 Reply: Increasing insert performance of an in-memory db (artifact: 56a2b225dd user: JMAranda)
From experience I would say that an Azure-Core does not necessarily imply an Intel-Core. And I have some 16Gb cards that hold it.
17:19 Edit reply: Fail to calculate long expression (artifact: 42bf05e5b8 user: JMAranda)
Once I connected PARI/GP with SQLite, using C. PARI/GP is a Computer Algebra System. The program read a variable-length functional expression, evaluated it with PARI/GP, and stored it. Perhaps in these cases something similar can be done.
2021-08-09
17:32 Reply: Fail to calculate long expression (artifact: e7538978e9 user: JMAranda)
Once I connected PARI/GP with SQLite via C.
PARI/GP is a Computer Algebra System.
06:50 Reply: Virtual RDBMS over SQLite (artifact: 7cf04d7df9 user: JMAranda)
Is used sometimes on key-value stores.

Daffy: Rabbit season. Bugs: Duck season.
Daffy: Rabbit season. Bugs: Rabbit season.
Daffy: Duck season, FIRE.
:-)
06:28 Edit reply: Virtual RDBMS over SQLite (artifact: 5d7b80d316 user: JMAranda)
A few weeks ago I had a similar idea.
I searched the net and discovered that a single table database was "very popular"(1).
My idea was something like dbm, string/string.
I downloaded gdbm, ndbm, cdbm, kissdb, and even found the original dbm.
But a hash table is unpredictable.
A BTree is more serious. An old dilemma.

"Gentlemen prefer bonds" (JP Morgan)
Anita Loos: "Gentlemen prefer blondes".

(1) - Correction: "used sometimes". Sorry. :)
2021-08-08
14:59 Reply: Virtual RDBMS over SQLite (artifact: d57bbad4e8 user: JMAranda)
A few weeks ago I had a similar idea.
I searched the net and discovered that a database with only 1 table was very popular.
My idea was something like dbm, string/string.
I downloaded gdbm, ndbm, cdbm, kissdb, and even found the original dbm.
But a hash table is unpredictable.
A BTree is more serious. An old dilemma.

"Gentlemen prefer bonds" (JP Morgan)
Anita Loos: "Gentlemen prefer blondes".
14:39 Reply: Old Nabble SQLite mailing list site down? (artifact: 02381f1ed4 user: JMAranda)
The support service of many database vendors, 
always requires the versions and configurations of all your software, 
and that you send them a copy and dump of everything. 
Including licenses and support agreements.

Here you could well ask for the version number.
They are supposed to refer to the most recent.
But the time passes fast.
More ↓