Originally posted by 08520166
View Post
Announcement
Collapse
No announcement yet.
[SQLite Android] Khởi tạo dữ liệu ban đầu khi tạo table
Collapse
X
-
Originally posted by 08520166 View PostCách này mình chưa hiểu lắm. Bỏ vào Project rồi thì khi project build thành file .apk csdl cũng nằm trong đó luôn. như vậy mình thay đổi trên csdl thì thay đổi file .apk à? :confuse:
Chỉ biết thường ng ta sùng SQLite là việc tạo data ngay khi chương trình thực thi và được lưu trong thư mục root/data/data/APP_NAME/database mà thôi.
Sẵn đây chia sẽ mọi người 1 add-on của firefox giúp mình thao tác với SQLite hoàn toàn miễn phí luôn
Comment
-
Originally posted by 08520091 View PostBỏ vào project đơn thuần thì đâu có chạy được, vẫn phải thực hiện copy file đó vào /data/data/_package_name_/databases/ mới chạy được, khi app được cài đặt và thực thi, nó tương tác với cơ sở dữ liệu đã được copy vào.
Comment
-
Originally posted by 08520472 View PostThực ra mình muốn khi database và table được tạo thì nó sẽ tạo luôn cái record đó, vì database và table chỉ tạo 1 lần --> record đó cũng tạo 1 lần đó luôn. Nếu dùng 1 lệnh insert thì mỗi khi chương trình chạy, thì nó cứ insert vào insert vào.
Mình đã có giải pháp khác
Thanks mọi người nhé
Comment
-
Originally posted by 08520091 View PostTìm được giải pháp khác rồi thì chia sẻ lên cho mọi người cùng biết chứ bạn Vũ! Vậy mọi người mới cùng biết thêm được!
Mục đích của mình là xem lần vào ứng dụng có phải là lần đầu tiên hay ko. ==" :surrender:
Tất nhiên có cách khác :salute:
Comment
-
Originally posted by 08520472 View PostBạn có link tài liệu về phần này ko? Cho mình tham khảo với
Nếu dùng 1 database ngoài thì lớp nào giao tiếp với nó vậy bạn? Ví như SQLite thì có lớp SQLiteOpenHelper đó.
Khi bạn tạo 1 CSDL trong code thì nó sẽ tạo một database trong thư mục mặc định của nó và kết nối đến CSDL trong thư mục này, còn khi bạn muốn kết nối đến 1 CSDL bên ngoài thì bạn có thể copy file CSDL đó vào thư mục trong ứng dụng ( cho luôn vào assests luôn), và kết đến CSDL trong thư mục này. còn kết nối như thế nào bạn có thể tham khảo link dưới: hi,
Tham khảo:
----------------------------------------------------------------------------
Onemp Music Player : Light and powerful android music player
My APK : APK Extractor and MORE with friendly UI
Comment
-
Originally posted by 08520472 View PostÀ, Sorry, laster: thực ra cũng chẳng hay ho gì, nhưng cũng giải quyết được, đó là insert vào record đầu tiên với ID là 1, và sẽ giữ record này, sau này sẽ thực hiện update record này. Các lần vào ứng dụng sau, nên như có insert thêm record thì sẽ gọi hàm delete các record có ID>1.
Mục đích của mình là xem lần vào ứng dụng có phải là lần đầu tiên hay ko. ==" :surrender:
Tất nhiên có cách khác :salute:
// Creating Tables
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_FLAG + "("
+ KEY_FLAG + " TEXT DEFAULT \'unactive\'" + ")";
db.execSQL(CREATE_CONTACTS_TABLE);
String INS_NEW = "INSERT INTO .... ";
db.execSQL(CREATE_CONTACTS_TABLE);
}
Comment
-
Originally posted by 08520091 View PostỦa, mà khúc này làm vậy không được hả Vũ?
Originally posted by 08520472 View PostThực ra mình muốn khi database và table được tạo thì nó sẽ tạo luôn cái record đó, vì database và table chỉ tạo 1 lần --> record đó cũng tạo 1 lần đó luôn. Nếu dùng 1 lệnh insert thì mỗi khi chương trình chạy, thì nó cứ insert vào insert vào.
Mình đã có giải pháp khác
Thanks mọi người nhé
Comment
-
Originally posted by 10520314 View PostViệc dùng 1 CSDL bên ngoài đâu có sự khác biệt gì nhiều so với tạo trong ứng dụng đâu.
Khi bạn tạo 1 CSDL trong code thì nó sẽ tạo một database trong thư mục mặc định của nó và kết nối đến CSDL trong thư mục này, còn khi bạn muốn kết nối đến 1 CSDL bên ngoài thì bạn có thể copy file CSDL đó vào thư mục trong ứng dụng ( cho luôn vào assests luôn), và kết đến CSDL trong thư mục này. còn kết nối như thế nào bạn có thể tham khảo link dưới: hi,
Tham khảo:
http://www.reigndesign.com/blog/usin...-applications/
Originally posted by 08520091 View PostỦa, mà khúc này làm vậy không được hả Vũ?
:surrender:
Comment
-
Originally posted by 08520472 View PostĐể mình ngâm cứu cái này :salute:
Hôm qua có thử ý này, nhưng dùng lệnh insert của SQLiteOpenHelper, dùng sai nên ko ra, thử lại cách cổ điển INSERT INTO thì được rồi :beatbrick:
:surrender:
Comment
Comment