Of course, I have a real database containing about 7000 records in the form of a Map. The Map SurnamesMap uses the last names of people as the key, and the list of names related to that last name as the data. What does it change?
It is definitely doable. I don't know how much help you need and experience with SQLite, but here is a starting point to give you an idea how to approach the process by dis[laying the data in the logs. No CLVExpandable code in the below code:
If you create a small project and use this code, it will give you all the data you need . The result from rs1 gives you the title of each panel. The results from rs gives you the data when you expand the title. Again, the aggregate results of the 2 queris is what you need. Give your self a chance to incorporate the results in you xCLVExpandable. If you get stuck, get ask questions to all members, not just one or two members. If I am not available to answer, the rest of the members are a lot more qualified to give a helping hand. But I gave you the foundation for the data you need. If you plan to pursue the project, do not use PCLV, use lazy loading or no lazy loadin as you were advised
Dim strQuery As String
Dim rs1 As ResultSet
strQuery = $"SELECT DISTINCT surn FROM names ORDER BY surn "$
rs1 = SQL.ExecQuery2(strQuery, Null )
Do While rs1.NextRow
Dim mysurname As String = rs1.GetString("surn") 'this will be the title
Dim rs As ResultSet = SQL.ExecQuery2($"SELECT A.surn AS Surname, A.givn AS Fullname, B.sex AS Sex FROM persons B
JOIN names A ON B.id = A.id_p WHERE Surname LIKE ?
ORDER BY Surname "$ _
, Array As String (mysurname))
Do While rs.NextRow
By the way the database is relatively good except that you have some records that have more than one id. But, this is a working database and not your official one. Good luck.
You don't seem to understand me.
I know how to populate the list with changing the height of the extension panel without using PCLV, which I already wrote about above. But the operation time is too long. Thanks for the advices.
Are you sure you are applying lazy loading properly. LL and Run your project in release mode, Those are the words of Erel too. (lazy loading and release). If you can attach your database with all 7000 records or make up 7000 fake records in English names, I will be more than glad to test it.
But Lazy loading and release mode were not the main topic of my post #25.
I don't have a database with 7000 thousand records with English names.
Why don't Russian names suit you? I understand a little with English names .
If you wish, I can attach a database with English and Russian names.
I created the database with SQLite from post # 24 on purpose, because I did not know how to save the SurnamesMap map to a file.
My project is based on DB from classes, not SQLite.