Comments (8)
We've added support for that recently. This feature is still in beta stage.
Here's how you'd do it.
- Create a folder named "sugar_upgrades" in your assets folder.
- Create a file named <db_version>.sql in that folder. eg. 1.sql, 2.sql
- This file would contain all the update/alter queries for that particular version.
- Change the version field in AndroidManifest.xml
<meta-data android:name="VERSION" android:value="2" />
- This would execute all the .sql files that have changed from your current version.
from sugar.
That sounds great! Like Rails migrations. I like it.
from sugar.
What if I already have a DB? What Sugar will do the first time the app open (after the upgrade)?
Will it have some Exceptions because the tables already exists, will it drop all the tables?
And if I have scripts, will it just use the scripts or will it try to create the tables?
Just some questions =P
from sugar.
@tsuharesu An upgrade right now just executes the migration scripts.
http://satyan.github.io/sugar/migration.html
from sugar.
Hmm, understood. If I have the scripts, they will be executed. If not, dropTable > createTable.
https://github.com/satyan/sugar/blob/master/library/src/com/orm/SugarDb.java#L137
Thanks 👍
from sugar.
After upgrading my sugar[using 1.3] record, with alter table query i am adding a column to existing table.
Column is there but when i add a value and save it then it does not work rather it takes a null/default value even after the upgrade. While everything works great on fresh install where table gets created with this column already.
from sugar.
I have exactly the same problem as rastoarpit.
from sugar.
I have the same problem as @rastoarpit and @refaelsh
Even in the log it appears the alter table
I/Sugar: ALTER TABLE ROSCA ADD COLUMN PHOTO TEXT
However debugging the new column not appears
from sugar.
Related Issues (20)
- Support for user specified ID's being used in the database instead of having them generated automatically.
- Android Studio 3.2.1 DB is no longer created HOT 3
- Is Sugar ORM library affected by the newly found SQLite vulnerability?
- update bug HOT 1
- [QUESTION] Where I can find the CI service?
- OneToMany Annotation
- Missing saveAll() for nested Table
- How read existing DB from assets folder? HOT 1
- Como deletar todos os dados de uma tabela e depois verificar se a tabela está vazia? HOT 1
- No such table with migration HOT 2
- ava.lang.NoSuchMethodException: <init> []
- SugarRecord Read / write separation
- bulk data not inserted completely
- Caused by: android.database.sqlite.SQLiteException: no such table: HOT 5
- *.db file is empty, but in application all the lines are shown.
- RuntimeException on start
- 我使用save来保存数据但是数据当中设置了不可重复字段会对其进行覆盖
- build failed when sync graddle HOT 1
- no such column when select
- Could not resolve project :sugar
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sugar.