Siaqodb - local database for Unity3D -special price

Hello,
We just published the new version 3.5 of Siaqodb- NoSQL database for Unity3D to Unity AssetStore http://u3d.as/content/dotissi-srl/siaqodb/ and for a limited period it has a special price: only 40$ till 31 December 2012 (on our online store the price is still 186$ ).

Siaqodb is a mature product now on all Unity3D platforms(iOS, Android, Mac OSX, PC).

  • much more simple and faster than SQLite, you can start using it in 5 minutes after download; the package came with a lot of examples.
  • you can store complex objects, dictionaries, lists, arrays, etc.
  • see also our UserGuide for more info.

If you have questions or need support, don’t hesitate to post on our dedicated forum or by sending a email to our support email address: support at siaqodb dot com.

Hi,

Purchased!

Cant register on your forum. ( Never got the activation mail ), so I post my question here:

Can I change my object design after data been populated? (Add some fields, change filed types, add more relationship with other class ) Will the schema change automatic been roll out, or I have to manually dump the data and re-import?

Can I delete/rebuild index? ( Cant find in API doc )

Is it possible to use siaqodb in Web Build? (read-only mode is sufficient)

Hello,
Sorry about fact that cannot register on our forum, we will investigate with our provider why you not got the activation email.
About your questions:
1.Yes, you can change your object design, Siaqodb detect it automatically and adjust stored objects, you don’t have to do anything manually.
Of course there are some limitations, see bellow what is supported:
-. Add a new Field

-. Remove a Field

-. Change Type of a field( only if Types of fields are compatible- > from int to long, etc( for Types that .NET support automatic CAST)

-.Resize String field to a larger number of characters

Indexes are automatically built, if you remove Index attribute from a field/property automatically will be removed. Similar if you want to add, just put Index attribute over your field/property and Siaqodb will create the index automatically when db is opened first time.
You can rebuild all indexes by:
SiaqodbUtil.ReIndex();

By security reason you are not able to read/write on client disk from WebPlayer.

Thanks for your answers!

I found the db file size will remain the same even all the records been deleted. Calling the SiaqodbUtil.Shrink has no effect. The only way to reclaim the space is by calling DropType. Not sure what I did wrong.

There’re 3 additional files: rawdata.sqr, rawdatainfo.sqo, indexinfo2.sqo along with the …Assembly-CSharp.sqo, what’s the purpose of these files?

1.By siaqodb.Delete(object) the object is marked as deleted, is does free the space, some space can be reused, most of databases do this in same way.

2.Indeed DropType with claimSpace argument set to true will physically delete the objects file of Type provided.

3.rawdata.sqr, rawdatainfo.sqo are internal files used to store dynamic length data like Lists, Arrays,Dictionaries, “Text strings”, indexinfo2.sqo it is used to store internal info about existing indexes. …Assembly-CSharp.sqo we don’t have such internal file, for sure is from your objects.

SiaqodbUtil.Shrink will shrink indexes data + rawdata.sqr, specially rawdata.sql may became big if you have many deletes/inserts operation for objects which has dynamic length fields(arrays/lists/dictionary/text)

If you want to remove all objects of a certain Type, it is recommended to use DropType().