Đồ án tốt nghiệp ngành công nghệ thông tin tìm hiểu SQLite và xây dựng chương trình ứng dụng

88 98 0
Đồ án tốt nghiệp ngành công nghệ thông tin  tìm hiểu SQLite và xây dựng chương trình ứng dụng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - ĐỒ ÁN TỐT NGHIỆP Ngành: Công nghệ thông tin Hải Phòng 2017 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU SQLITE VÀ XÂY DỰNG CHƢƠNG TRÌNH ỨNG DỤNG ĐỒ AN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ Thông tin BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU SQLITE VÀ XÂY DỰNG CHƢƠNG TRÌNH ỨNG DỤNG ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Cơng nghệ Thơng tin Sinh viên thực hiện: Nguyễn Hoàng Long Giáo viên hƣớng dẫn: Ths Phùng Anh Tuấn Mã số sinh viên: 101432 BỘ GIÁO DỤC VÀ ĐÀO TẠO Cộng hoà xã hội chủ nghĩa Việt Nam TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG Độc lập - Tự - Hạnh phúc -o0o - NHIỆM VỤ THIẾT KẾ TỐT NGHIỆP Sinh viên: Nguyễn Hoàng Long Mã số: 101432 Lớp: Ngành: Công nghệ Thông tin CT1601 Tên đề tài: Tìm hiểu SQLite xây dụng chƣơng trình ứng dụng NHIỆM VỤ ĐỀ TÀI Nội dung yêu cầu cần giải nhiệm vụ đề tài tốt nghiệp a Nội dung: - Tìm hiểu hệ điều hành android - Tìm hiểu mơi trƣờng lập trình Android Studio - Tìm hiểu cụng cụ tạo lập thiết bị di động ảo Genymotion - Tìm hiểu hệ quản trị sở liệu cho thiết bị di động SQLite - Xây dựng chƣơng trình ứng dụng thử nghiệm quản lý chi tiêu cá nhân b Các yêu cầu cần giải quyết: - Nắm đƣợc số khái niệm hệ điều hành Android - Cài đặt, cấu hình mơi trƣờng lập trình ứng dụng cho thiết bị di động Android Studio - Cài đặt, cấu hình thiết bị di động ảo cho chạy thử nghiệm chƣơng trình - Thực đƣợc thao tác với liệu hệ quản trị sở liệu SQLite - Xây dựng đƣợc chƣơng trình ứng dụng, đóng gói ứng dụng thành file *.apk cho phép cài chạy thiết bị di động Android thật Các số liệu cần thiết để thiết kế, tính tốn - Số liệu giả lập Địa điểm thực tập Trƣờng Đại học Dân lập Hải Phòng CÁN BỘ HƢỚNG DẪN ĐỀ TÀI TỐT NGHIỆP Ngƣời hƣớng dẫn thứ nhất: Họ tên: Phùng Anh Tuấn Học hàm, học vị: Thạc sỹ Cơ quan công tác: Trƣờng Đại học Dân lập Hải Phòng Nội dung hướng dẫn: - Tìm hiểu hệ điều hành android - Tìm hiểu mơi trƣờng lập trình Android Studio - Tìm hiểu cụng cụ tạo lập thiết bị di động ảo Genymotion - Tìm hiểu hệ quản trị sở liệu cho thiết bị di động SQLite - Xây dựng chƣơng trình ứng dụng thử nghiệm quản lý chi tiêu cá nhân, cài đặt chạy thiết bị android thật Ngƣời hƣớng dẫn thứ hai: Họ tên: ………………………………………………………………………………… Học hàm, học vị……………………………………………………………………………… Cơ quan công tác: …………………………………………………………………………… Nội dung hƣớng dẫn: …………………… ………………………………………………………………………………………………… Đề tài tốt nghiệp đƣợc giao ngày tháng năm 2017 Yêu cầu phải hoàn thành trƣớc ngày tháng năm 2017 Đã nhận nhiệm vụ: Đ.T.T.N Đã nhận nhiệm vụ: Đ.T.T.N Sinh viên Cán hƣớng dẫn Đ.T.T.N Hải Phòng, ngày tháng .năm 2017 Hiệu trƣởng GS.TS.NGưT Trần Hữu Nghị PHẦN NHẬN XÉT TÓM TẮT CỦA CÁN BỘ HƢỚNG DẪN Tinh thần thái độ sinh viên trình làm đề tài tốt nghiệp: - Có nhiều cố gắng việc tìm kiếm, nghiên cứu tài liệu phục vụ cho nội dung đề tài tốt nghiệp - Chấp hành tƣơng đối tốt yêu cầu cán hƣớng dẫn - Khả làm việc độc lập nhiều hạn chế thuật tốn kỹ lập trình Đánh giá chất lƣợng đề tài tốt nghiệp (so với nội dung yêu cầu đề nhiệm vụ đề tài tốt nghiệp) - Hoàn thành yêu cầu đề nhiệm vụ tốt nghiệp - Xây dựng thành cơng chƣơng trình ứng dụng thử nghiệm, cài đặt chạy thiết bị di động android thật - Nội dung đề tài tài liệu tham khảo hữu ích cho đối tƣợng quan tâm tới chủ đề lập trình với sở liệu thiết bị di động android - Đề nghị cho phép sinh viên đƣợc bảo vệ trƣớc hội đồng chấm bảo vệ đồ án tốt nghiệp Cho điểm cán hƣớng dẫn: Ngày .tháng .năm 2017 Cán hƣớng dẫn (Ký, ghi rõ họ tên) PHẦN NHẬN XET DANH GIA CỦA CAN BỘ CHẤM PHẢN BIỆN DỀ TAI TỐT NGHIỆP Đánh giá chất lƣợng đề tài tốt nghiệp (về mặt nhƣ sở lý luận, thuyết minh chƣơng trình, giá trị thực tế, ) Cho điểm cán phản biện ( Điểm ghi số chữ ) Ngày .tháng .năm 2017 Cán chấm phản biện ( Ký, ghi rõ họ tên ) Mục Lục LỜI CẢM ƠN 11 Chƣơng 1: HỆ ĐIỀU HÀNH ANDROID 12 1.1 Giới thiệu HĐH Android 12 1.2 Lịch sử phát triển 13 1.3 Ứng dụng Android 14 1.4 Giao diện Android 15 1.5 Nhân Linux 16 1.6 Bộ nhớ Android 18 1.7 Bảo mật Android 18 Chƣơng 2: MƠI TRƢỜNG LẬP TRÌNH ANDROID STUDIO 21 2.1 Sơ lƣợc Android Studio 21 2.2 Cài đặt android studio 21 2.3 Cấu trúc dự án android studio 26 2.4 Tạo giao diện chương trình android studio 35 CHƢƠNG : SQLITE 41 3.1 Giới thiệu 41 3.2 Cài đặt SQLite Windows 43 3.3 Kiểu liệu SQLite 47 3.4 Lệnh SQLite 49 3.5 Toán tử SQLite 53 3.6 Biểu thức SQLite 55 3.7 Các lệnh liên quan đến CSDL 56 3.8 Các lệnh liên quan đến cấu trúc TABLE 58 3.9 Lệnh Insert Into 60 3.10 Lệnh truy vấn liệu 61 3.11 Update 66 3.12 Delete 66 3.13 Lệnh VACUUM 66 3.14 Sub Queries 67 3.15 Views 69 3.16 Trigger 69 3.17 Transactions 71 3.18 Indexes 72 3.19 Các hàm thường dùng SQLite 74 Chƣơng 4: CHƢƠNG TRÌNH THỰC NGHIỆM 80 4.1 Bài Toán 80 4.2 Phân tích thiết kế : 80 4.3 CSDL SQLite 81 4.4 Giao diện chương trình 82 4.5 Kết đạt 86 KẾT LUẬN 87 TÀI LIỆU THAM KHẢO 88 10  Lập mục cột thƣờng xuyên phải thao tác (thêm, xóa, sửa) 3.18.4 Indexed By Mệnh đề "INDEXED BY index-name" kèm câu lệnh cho biết việc dò tìm liệu phải đƣợc ƣu tiên thực index trƣớc Mệnh đề "NOT INDEXED" cho biết khơng có index đƣợc sử dụng truy cập vào table Tuy nhiên, INTEGER PRIMARY KEY đƣợc sử dụng để tìm rõ mệnh đề "NOT INDEXED" câu lệnh Cú pháp : Sử dụng đƣợc cho lệnh DELETE, UPDATE SELECT: SELECT|DELETE|UPDATE column1, column2 INDEXED BY (index_name) table_name WHERE (CONDITION); 3.19 Các hàm thường dùng SQLite 3.19.1 Hàm date time: Function date(timestring,modifier s) time(timestring,modifier s) datetime(timestring,modi fiers ) julianday(timestring,mod ifiers ) strftime(timestring, modifiers ) Ví dụ Trả ngày theo định dạng: YYYYMM-DD Trả thời gian theo định dạng HH:MM:SS Trả ngày theo định dạng YYYY-MM-DD HH:MM:SS Trả số ngày tính từ November 24, 4714 B.C Trả ngày đƣợc định dạng theo chuỗi định dạng đƣợc đối số Tham khảo cách sử dụng chuỗi cho đối số phần tiếp sau Cả hàm ngày thời gian có tham số timestring Timestring đƣợc theo sau số không (zero) định dạng bổ sung khác (modifiers) a Time Strings Timestring gồm kiểu định dạng nhƣ sau: 74 Time String Ví dụ YYYY-MM-DD 2010-12-30 YYYY-MM-DD HH:MM 2010-12-30 12:10 YYYY-MM-DD HH:MM:SS.SSS 2010-12-30 12:10:04.100 MM-DD-YYYY HH:MM 30-12-2010 12:10 HH:MM 12:10 YYYY-MM-DDTHH:MM 2010-12-30 12:10 HH:MM:SS 12:10:01 YYYYMMDD HHMMSS 20101230 121001 Now 2013-05-07 Bạn sử dụng "T" làm ký tự ngăn cách date time • • • b Modifiers Timestring đƣợc theo sau số không (zero) định dạng bổ sung khác (modifiers), định dạng thay date và/hoặc time trả hàm hàm NNN days • NNN hours • start of month • weekday N NNN months • NNN minutes • start of year • unixepoch NNN years • NNN.NNNN • start of day • localtime • utc c Formatters seconds SQLite cung cấp hàm strftime() tiện dụng để định dạng date time Bạn sử dụng định dạng thay sau để định dạng lại date time mình: Định dạng thay Diễn giải %d Day of month, 01-31 %f Fractional seconds, SS.SSS %H Hour, 00-23 %j Day of year, 001-366 %J Julian day number, DDDD.DDDD %m Month, 00-12 %M Minute, 00-59 %s Seconds since 1970-01-01 %S Seconds, 00-59 %w Day of week, 0-6 (0 is Sunday) %W Week of year, 01-53 %Y Year, YYYY %% % symbol 75 3.19.2 Hàm số  Có thể sử dụng tên hàm dƣới dạng chữ thƣờng, chữ hoa hay vừa thƣờng vừa hoa đƣợc  Cho liệu mẫu table COMPANY nhƣ sau: ID -1 NAME -Paul Allen Teddy Mark David Kim James AGE -32 25 23 25 27 22 24 ADDRESS -California Texas Norway Rich-Mond Texas South-Hall Houston SALARY -20000.0 15000.0 20000.0 65000.0 85000.0 45000.0 10000.0 a COUNT − Đếm số dòng có table − Ví dụ: sqlite> SELECT count(*) FROM COMPANY; − Kết count(*) b MAX − Chọn giá trị lớn cột có tên đƣợc − Ví dụ: sqlite> SELECT max(salary) FROM COMPANY; − Kết max(salary) 85000.0 c MIN − Chọn giá trị nhỏ cột có tên đƣợc − Ví dụ: sqlite> SELECT min(salary) FROM COMPANY; − Kết min(salary) 10000.0 d AVG − Lấy giá trị trung bình cột có tên đƣợc − Ví dụ: sqlite> SELECT avg(salary) FROM COMPANY; − Kết 76 avg(salary) 37142.8571428572 e SQLite SUM Function − Lấy tổng giá trị cột có tên đƣợc − Ví dụ: sqlite> SELECT sum(salary) FROM COMPANY; − Kết sum(salary) 260000.0 f RANDOM − Chọn giá trị nguyên ngẫu nhiên khoảng từ -9223372036854775808 đến +9223372036854775807 − Ví dụ: sqlite> SELECT random() AS Random; − Kết Random 5876796417670984050 g ABS − Trả trị tuyệt đối đối số − Ví dụ: sqlite> SELECT abs(5), abs(-15), abs(NULL), abs(0), abs("ABC"); − Kết abs(5) abs(-15) abs(NULL) abs(0) abs("ABC") -5 15 - -0 0.0 3.19.3 Hàm xử lý chuỗi a UPPER − Chuyển chuỗi tham số hàm thành chữ hoa − Ví dụ: sqlite> SELECT upper(name) FROM COMPANY; Kết 77 upper(name) PAUL ALLEN TEDDY MARK DAVID KIM JAMES b LOWER − Chuyển chuỗi tham số hàm thành chữ thƣờng − Ví dụ: sqlite> SELECT lower(name) FROM COMPANY; Kết lower(name) paul allen teddy mark david kim james c LENGTH − Lấy chiều dài tham số chuỗi − Ví dụ: sqlite> SELECT name, length(name) FROM COMPANY; − Kết NAME -Paul Allen Teddy Mark David Kim James 3.19.4 Hàm khác length(name) -4 5 5 sqlite_version − Trả version SQLite library dùng − Ví dụ: sqlite> SELECT sqlite_version() AS 'SQLite Version'; − Kết 78 SQLite Version -3.6.20 79 Chƣơng 4: CHƢƠNG TRÌNH THỰC NGHIỆM 4.1 Bài Tốn Điện thoại thơng minh ngày mạnh mẽ có nhiều chức hỗ trợ cho ngƣời học tập lao dộng Nó cho phép cài đặt trƣơng trình đƣợc phát triển ngƣời dùng Chƣơng trình quản lý chi tiêu cá nhân sử dụng sở liệu SQlite giúp chủ nhân ghi lại mua tháng , hết tiền Đặc biệt , đau đầu thấy thiếu tiền mà khơng nhớ chi cho 4.2 Phân tích thiết kế : Để thực chƣơng trình quản lý chi tiêu cần sử dụng : 4.2.1 Môi trường lập trình Android Studio Xây dụng chƣơng trình quản lý chi tiêu với chức giao diện gồm có :  Xem khoản chi  Thêm khoản chi  Sủa khoản chi  Xóa khoản chi 4.2.2 Sử dụng CSDL : SQLite Sử dụng lệnh SQLite để thực chƣơng trình:  Tạo CSDL  Tạo bảng CSDL  Lấy liệu bảng(SELECT)  Nhập vào bảng(INSERT)  Cập nhật thông tin cho bảng(UPDATE)  Xóa trƣờng bảng(DELETE) 4.2.3 Tối ưu chương trình chức bảo mật Chức bảo mật giúp ngƣời sử dụng giữ đƣợc thơng tin khoản chi mà khơng sợ ngƣời khác xem đƣợc Chức gồm có :  Đăng nhập 80  Tạo tài khoản(account) bao gồm mật khẩu(password)  Thay đổi mật  Xóa tài khoản 4.3 CSDL SQLite Cơ sở liệu có bảng "tblkhoanchi" gồm cột nhƣ hình ảnh: Trong bảng bao gồm trƣờng:  id : id khoản chi  tenkhoan : Tên khoản chi  sotien : Số tiền chi khoản  ngaygio : Ngày chi  anh : Ảnh khoản chi Bên cạnh : Cơ sở liệu có bảng "tblaccount" giúp quản lý tài khoản ngƣời dùng gồm cột nhƣ hình ảnh: Trong bao gồm trƣờng:  rowid : id tài khoản 81  username : tên ngƣời dùng  password : mật 4.4 Giao diện chương trình Là chƣơng trình xây dựng ứng dụng truy xuất CSDL đến SQLite Giao diện chính: Giao diện đăng nhập : Giao diện tạo tài khoản : Giao diện đổi mật khẩu: 82 Giao diện xóa tài khoản: Giao diện Xóa Dữ Liệu : Sau đăng nhập thành công Ta vào đc giao diện chƣơng trình: 83 Trên giao diện thấy chức trƣơng trình :  Search  Thêm  Sửa  Xóa  Hiển thị khoản chi ListView hình Giao diện Tìm Kiếm khoản chi (search) : Giao diện Thêm khoản chi: 84 Chƣa thêm thông tin Đã thêm thông tin Ở giao diện thêm khoản chi Nếu ta chƣa thêm thơng tin ―Ngày‖ ― Giờ‖đã đƣợc lấy tự động từ hệ thống Nếu muốn chỉnh ― Ngày ― ― Giò ― ta nhấn vào chọn ngày chọn xuất giao diện nhƣ sau: Chọn Ngày Chọn Giờ Giao diện Sửa khoản chi xóa khoản chi: 85 Sửa Xóa 4.5 Kết đạt Bƣớc đầu đồ án đạt đƣợc kết nhƣ sau  Tạo lập thành công sở liệu SQLite  Xây dựng thành cơng ứng dụng android làm thao tác đƣợc CSDL SQLite nhƣ: thêm mới, sửa, xóa  Bƣớc đầu xây dựng đƣợc chức bảo mật hệ thống  Tuy nhiên tồn hạn chế sau:  Ứng dụng chƣa có chức phân quyền chức bảo mật riêng rẽ CSDL tài khoản  Ứng dụng chƣa có chức tự động xếp lại listview 86 KẾT LUẬN Trên em khảo sát mặt lý thuyết xây dựng ứng dụng Android Đồ án hƣớng tới mục tiêu xây dựng ứng dụng Android truy xuất sở liệu với SQLite Trong khoảng thời gian định dành cho việc thực đề tài, nên số vấn đề chƣa đƣợc hoàn chỉnh Tuy nhiên, đồ án đạt đƣợc số kết quả: - Về lý thuyết: Tìm hiểu, nghiên cứu đƣợc cách tạo sở liệu SQLite, kỹ thuật lập trình với sở liệu để xây dựng ứng dụng Android truy xuất sở liệu nhƣ: tìm kiếm liệu, thêm, sửa, xóa liệu từ Android lên CSDL SQLite - Về thực nghiệm: Sử dụng kỹ thuật lập trình với sở liệu SQLite để xây dựng đƣợc ứng dụng truy xuất sở liệu với thao tác với liệu nhƣ: xem, sửa, thêm, xóa Do thời gian hạn chế, nên đồ án dừng lại thao tác với sở liệu Chƣa làm sâu bảo mật chƣơng trình chƣơng trình số hạn chế Trong tƣơng lai em tiếp tục phát triển ứng dụng hoàn chỉnh 87 TÀI LIỆU THAM KHẢO Tài liệu tham khảo trực tuyến http://duythanhcse.wordpress.com https://thangcoder.com http://khoapham.vn/KhoaPhamTraining/android 88 ... 35 CHƢƠNG : SQLITE 41 3.1 Giới thiệu 41 3.2 Cài đặt SQLite Windows 43 3.3 Kiểu liệu SQLite 47 3.4 Lệnh SQLite 49 3.5 Toán tử SQLite ... HIỂU SQLITE VÀ XÂY DỰNG CHƢƠNG TRÌNH ỨNG DỤNG ĐỒ AN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ Thông tin BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU SQLITE. .. trạng thái, hiển thị thơng tin thiết bị tình trạng kết nối Thanh trạng thái "kéo" xuống để xem hình thông báo gồm thông tin quan trọng cập nhật ứng dụng, nhƣ email hay tin nhắn SMS nhận, mà không

Ngày đăng: 07/04/2020, 21:45

Tài liệu cùng người dùng

Tài liệu liên quan