package database;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
import entity.Day;
import entity.User;
import java.util.ArrayList;
import java.util.List;
public class UserDBHelper extends SQLiteOpenHelper {
private static final String DB_NAME="user.db";
private static final String TABLE_NAME="user_info";
private static final String TABLE_NAME1="day_info";
private static final int DB_VERSION=1;
private static UserDBHelper mHelper=null;
private SQLiteDatabase mRDB=null;
private SQLiteDatabase mWDB=null;
private UserDBHelper(Context context){
super(context,DB_NAME,null,DB_VERSION);
}
public static UserDBHelper getInstance(Context context){
if(mHelper==null)
{
mHelper=new UserDBHelper(context);
}
return mHelper;
}
public SQLiteDatabase openReadLink(){
if(mRDB==null||!mRDB.isOpen())
{
mRDB=mHelper.getReadableDatabase();
}
return mRDB;
}
public SQLiteDatabase openWriteLink(){
if(mWDB==null||!mWDB.isOpen())
{
mWDB=mHelper.getWritableDatabase();
}
return mWDB;
}
public void closeLink(){
if(mRDB!=null&&mRDB.isOpen())
{
mRDB.close();
mRDB=null;
}
if(mWDB!=null&&mWDB.isOpen())
{
mWDB.close();
mWDB=null;
}
}
@Override
public void onCreate(SQLiteDatabase db) {
String sql="CREATE TABLE IF NOT EXISTS "+TABLE_NAME+"("+
" Id VARCHAR NOT NULL,"+
" Name VARCHAR NOT NULL,"+
" Pn VARCHAR NOT NULL,"+
" Class VARCHAR NOT NULL)";
db.execSQL(sql);
sql="CREATE TABLE IF NOT EXISTS "+TABLE_NAME1+"("+
" keyword VARCHAR NOT NULL,"+
" content VARCHAR NOT NULL,"+
" createdtime VARCHAR NOT NULL,"+
" id VARCHAR NOT NULL)";
db.execSQL(sql);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
public void insert(User user)
{
Log.d("ning",user.Id);
ContentValues values=new ContentValues();
values.put("Id",user.Id);
values.put("Name",user.Name);
values.put("Pn",user.Pn);
values.put("Class",user.Cs);
mWDB.insert(TABLE_NAME,null,values);
}
public int insertDay(Day day)
{
ContentValues values=new ContentValues();
values.put("keyword",day.keyword);
values.put("content",day.content);
values.put("createdTime",day.createdTime);
values.put("id",day.id);
mWDB.insert(TABLE_NAME1,null,values);
int a=1;
return a;
}
public long deleteById(String Id)
{
return mWDB.delete(TABLE_NAME,"Id=?",new String[]{Id});
}
public long update(User user)
{
ContentValues values=new ContentValues();
values.put("Id",user.Id);
values.put("Name",user.Name);
values.put("Pn",user.Pn);
values.put("Class",user.Cs);
return mWDB.update(TABLE_NAME,values,"Id=?",new String[]{user.Id});
}
public List<User> queryAll(){
List<User> list=new ArrayList<>();
Cursor cursor=mRDB.query(TABLE_NAME,null,null,null,null,null,null);
while (cursor.moveToNext()){
User user=new User();
user.Id=cursor.getString(0);
user.Name=cursor.getString(1);
user.Pn=cursor.getString(2);
user.Cs=cursor.getString(3);
list.add(user);
}
return list;
}
public List<Day> queryAllDay(){
List<Day> list=new ArrayList<>();
Cursor cursor=mRDB.query(TABLE_NAME1,null,null,null,null,null,null);
while (cursor.moveToNext()){
Day day=new Day();
day.keyword=cursor.getString(0);
day.content=cursor.getString(1);
day.createdTime=cursor.getString(2);
day.id=cursor.getString(3);
list.add(day);
}
return list;
}
public int queryOne(String Id){
List<User> list1=new ArrayList<>();
Cursor cursor=mRDB.query(TABLE_NAME,null,"Id=?",new String[]{Id},null,null,null);
int a=0;
while (cursor.moveToNext()){
User user=new User();
user.Id=cursor.getString(0);
user.Name=cursor.getString(1);
user.Pn=cursor.getString(2);
user.Cs=cursor.getString(3);
a=1;
list1.add(user);
}
return a;
}
}