간단한 SQLite 연습.
[Main.kt]
class MainActivity : AppCompatActivity() {
var dbHandler : DatabaseHelper? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
dbHandler = DatabaseHelper(this)
button.setOnClickListener {
if(validation()) {
val users: Users = Users()
var success : Boolean = false
users.firstName = editText.text.toString()
users.lastName = editText2.text.toString()
success = dbHandler!!.addUser(users)
if(success) {
val toast = Toast.makeText(this,
"Save Successfully",
Toast.LENGTH_SHORT).show()
}
}
}
button2.setOnClickListener {
var users = dbHandler!!.getAllUser()
textView.setText(users)
}
}
fun validation() : Boolean {
var validate : Boolean = false
if(!editText.text.isEmpty() &&
!editText2.text.isEmpty()) {
validate = true
}else {
validate = false
val toast = Toast.makeText(this, "Fill all details",
Toast.LENGTH_SHORT).show()
}
return validate
}
}
[DBHelper.kt]
class DatabaseHelper(context: Context)
:SQLiteOpenHelper(context, DB_NAME, null, DB_VERSION) {
companion object {
private val DB_NAME = "UserDB"
private val DB_VERSION = 1
private val TABLE_NAME = "users"
private val ID = "id"
private val FIRST_NAME = "FirstName"
private val LAST_NAME = "LastName"
}
override fun onCreate(db: SQLiteDatabase?) {
val createTable =
"CREATE TABLE $TABLE_NAME" +
"($ID Integer PRIMARY KEY," +
"$FIRST_NAME TEXT," +
"$LAST_NAME TEXT)"
db?.execSQL(createTable)
}
override fun onUpgrade(db: SQLiteDatabase?, oldVersion: Int, newVersion: Int) {}
fun addUser(user: Users) : Boolean {
val db = this.writableDatabase
val values = ContentValues()
values.put(FIRST_NAME, user.firstName)
values.put(LAST_NAME, user.lastName)
val _success = db.insert(TABLE_NAME, null, values)
db.close()
return (Integer.parseInt("$_success") != -1)
}
fun getAllUser() : String {
var allUser: String = "";
val db = readableDatabase
val selectALLQuery = "SELECT * FROM $TABLE_NAME"
val cursor = db.rawQuery(selectALLQuery, null)
var id : String =""
var firstName = ""
var lastName = ""
if (cursor != null) {
if (cursor.moveToFirst()) {
do {
id = cursor.getString(cursor.getColumnIndex(ID))
firstName = cursor.getString(cursor.getColumnIndex(FIRST_NAME))
lastName = cursor.getString(cursor.getColumnIndex(LAST_NAME))
allUser = "$allUser \n $id $firstName $lastName"
} while (cursor.moveToNext())
}
}
cursor.close()
db.close()
return allUser
}
}
[User.class]
class Users {
var id : Int = 0
var firstName : String = ""
var lastName : String = ""
}
'Dead Code > DEPRECATED-KOTLIN' 카테고리의 다른 글
[코틀린코드연습장] SnackBar (0) | 2019.03.19 |
---|---|
[코틀린코드연습장] Firebase에 값 적고, 불러오기 (0) | 2019.03.15 |
[코틀린코드연습장] Fragment생성 (0) | 2019.03.07 |
[코틀린코드연습장] 커스텀리스트 (0) | 2019.02.20 |
[코틀린코드연습장] ListDialog (0) | 2019.01.30 |
[코틀린코드연습장] BroadCastReceiver (0) | 2019.01.24 |
[코틀린코드연습장] ActivityACTION (0) | 2019.01.22 |
[코틀린코드연습장] startActivityForResult(3) . object (0) | 2019.01.17 |
[코틀린코드연습장] startActivityForResult(2) (0) | 2019.01.17 |
[코틀린코드연습장] startActivityForResult(1) (0) | 2019.01.17 |