Paradigma Software is a truly international company, but it also has strong roots in the great Northwest – the Silicon Forest area including the greater Portland area. Paradigma Software is proud to be a sponsor for Portland Code Camp 2010. Continue reading Paradigma Software Sponsoring Portland Code Camp 2010
Changes in Valentina for Cocoa API.
Erne have report bug http://www.valentina-db.com/bt/view.php?id=4885 in Valentina for Cocoa (V4CC).
Problem was that VField.value in ObjC implemented as pair of methods (in other Valentina ADKs, e.g. Valentina for REALbasic it is a true property of class). So if to override this pair in the sub-classes then always will be called overridden methods.
To resolve issue, we have decide to rename these methods in all VField sub-classes. Rules now are simple:
NEW Function Added: hash MD5()
Ivan have implement today MD5() function, which can be used in EXPRESSION of Valentina SQL.
Bart have asked this function to be able produce UNIQUE INDEX for strings/texts bigger of 128 chars. This limit comes from fact that indexes of Valentina use pascal-like storage format for strings, e.g. 256 bytes maximum, 128 for UTF16.
SPEED of DB Open for Database with 1000+ Tables: -20 sec
44 Seconds for that 1023 tables DB still not looks good for me, and I have continue search for ways to improve it. And after one more day of work time have go down to 34 sec from original 54.
And this new optimization is even better! It is also made on INDEX-level and affects absolutely ANY index search operation!! Especially we will see effect for searches that return many records into Set.
I see yet two possible steps to optimize speed of open for database.
* [minor] – …
* [major] – start to cache data in the algorithms that read schema from recursive sysItem table.
Target is to make time few seconds only.
SPEED of DB Open for Database with 1000+ Tables: -10 sec
One developer have produce Valentina database with 1023 tables. And note us that it takes long time to open it. On my macbook it have take 54 sec.
After some profiling and optimization, time is now 44 sec.
Nice thing here is that optimization was made on INDEX-level for functions that return ArraySets. This means that all other index-based operations may benefit from this.
Flash-to-iPhone 4 SDK Ban May Have Limited Effect
Starting with a post by John Gruber on Daring Fireball, a building tide of developer anxiety is rippling through the iPhone developer market. This could easily be a sign of greater control by Apple instead of an outright ban against non-Apple compilation. Continue reading Flash-to-iPhone 4 SDK Ban May Have Limited Effect
NEW Function Browser in the SQL Editor of VStudio!
Thanks to new SHOW PROCEDURES ALL, we was able implement Function Browser in the SQL Editor of Valentina Studio.
This Function Browser contains a list of system function and used defined stored procedures and functions listed by categories such as:
Continue reading NEW Function Browser in the SQL Editor of VStudio!
NEW Left Side Bar in Schema Editor of Valentina Studio
We have added the left side bar into Schema Editor.
It looks similar to what have OS X Finder and Windows 7. This sidebar allows you easy jump to the most common and/or recent places of your job. For example, you can by single click open recent database or connection or your bookmark to a Valentina Server. Your login and password can be stored, so no need to retype them each time.
Continue reading NEW Left Side Bar in Schema Editor of Valentina Studio
NEW Tab-Panels in SQL Editor to Display Logs/Output/Warnings/Tune
We have added to SQL Editor of Valentina Studio great new feature: now you can get much more rich output from an SQL command. And this output is separated into 4 tab panels at bottom of Editor.
Continue reading NEW Tab-Panels in SQL Editor to Display Logs/Output/Warnings/Tune
SHOW PROCEDURES Extended.
We have extend syntax of SHOW PROCEDURES to SHOW PROCEDURES [ALL].
REALbasic, the iPhone and Valentina DB
There is an interesting conversation taking place over on Bob Keeney’s blog regarding REALbasic and the iPhone.
Paradigma Software has had a Valentina Client for the iPhone for almost a year, and while its seen some use, I often feel that just having it has helped bring new customers to use Valentina DB who have no intention of using Valentina for the iPhone.
A lot of folks commenting know REAL Software – the company – very well. Maybe too well. Supporting the iPhone sounds like a monumental task, and you’ve been waiting a long, long time for Cocoa support and that’s likely come at some cost. You don’t want to go through that with iPhone support.
Kem Tekinay: What I’ve learned about Valentina
In jumping back into Valentina, I’ve learned a number of things over the past few days that I thought I’d share. In no particular order…
– Valentina support (particularly Ruslan) has to be the most responsive support of any company in any country, ever.
– Valentina is fast. I mean, really fast. Using a flat-file database of 7 fields and 5 million+ records, and comparing it to other solutions like MySQL, PostgreSQL, SQLite and FileMaker Pro, Valentina beats them all in every test I can come up with. The only thing that is even close to the same range is MySQL, and only in some tests.
Continue reading Kem Tekinay: What I’ve learned about Valentina
[NEW] REGEX_REPLACE() function.
In 4.5.1 release we have add a new REGEX_REPLACE() function to Valentina Expresions, which can be used in Table Methods, SQL and therefore, in Reports.
Up to now, we was able to do searches with the help of REGEX operator:
… WHERE fld REGEX ‘ab.[cdf]*’
New function brings the awesome power of REGEX to manipulate by strings stored in the database! Now we can not only search using REGEX, but modify strings! You can do that in the
- SELECT EXPR, …
- UPDATE TABLE T SET fld = EXPR
where EXPR is REGEX_REPLACE() function or contains it as a part.
Read details about this function here.
FindContains() speed improved x10 times
Kem Tekinay have found that FindContains is not fast enough. We was able speed up this place x10 times. Indexed search on table with 7 million rows have go down from 46 sec to 4.6 sec.
You can get this using
- API – VField.FindContains()
- SQL – WHERE LOCATE( “what”, fld ) <> 0
NEW 2 video lessons about BarCodes and MailMerge with Valentina Reports
We have upload 2 new video lessons about Valentina reports:
http://valentina-db.com/dokuwiki/doku.php?id=valentina:video:vspro:vspro