Advertisement
Guest User

Untitled

a guest
Feb 21st, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.47 KB | None | 0 0
  1. package com.example.user.loginsignup;
  2.  
  3.  
  4. import java.util.LinkedList;
  5. import java.util.List;
  6. import android.content.ContentValues;
  7. import android.content.Context;
  8. import android.database.Cursor;
  9. import android.database.sqlite.SQLiteDatabase;
  10. import android.database.sqlite.SQLiteOpenHelper;
  11. import android.util.Log;
  12.  
  13. public class UserDB extends SQLiteOpenHelper {
  14.  
  15. // Database Version
  16. private static final int DATABASE_VERSION = 1;
  17. // Database Name
  18. private static final String DATABASE_NAME = "UserDB";
  19.  
  20. public UserDB(Context context) {
  21. super(context, DATABASE_NAME, null, DATABASE_VERSION);
  22. }
  23.  
  24. @Override
  25. public void onCreate(SQLiteDatabase db) {
  26. // SQL statement to create user table
  27. String CREATE_USER_TABLE = "CREATE TABLE user ( " +
  28. "id INTEGER PRIMARY KEY AUTOINCREMENT, " +
  29. "name TEXT, "+
  30. "username TEXT, "+
  31. "password TEXT )";
  32.  
  33. String CREATE_CAR_TABLE = "CREATE TABLE car ( " +
  34. "id INTEGER PRIMARY KEY AUTOINCREMENT, " +
  35. "company TEXT, "+
  36. "model TEXT, "+
  37. "year TEXT, "+
  38. "engine REAL, "+
  39. "horse_power REAL, "+
  40. "condition TEXT, "+
  41. "phone TEXT )";
  42.  
  43.  
  44.  
  45. // create userss table
  46. db.execSQL(CREATE_USER_TABLE);
  47. db.execSQL(CREATE_CAR_TABLE);
  48. }
  49.  
  50. @Override
  51. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  52. // Drop older users table if existed
  53. db.execSQL("DROP TABLE IF EXISTS user");
  54. db.execSQL("DROP TABLE IF EXISTS car");
  55.  
  56. // create fresh users table
  57. this.onCreate(db);
  58. }
  59. //---------------------------------------------------------------------
  60.  
  61. /**
  62. * CRUD operations (create "add", read "get", update, delete) user + get all users + delete all users
  63. */
  64.  
  65. // users table name
  66. private static final String TABLE_USER = "user";
  67.  
  68. // users Table Columns names
  69. private static final String KEY_ID = "id";
  70. private static final String KEY_NAME = "name";
  71. private static final String KEY_USERNAME = "username";
  72. private static final String KEY_PASSWORD = "password";
  73.  
  74. private static final String[] USER_COLUMNS = {KEY_ID,KEY_NAME,KEY_USERNAME,KEY_PASSWORD};
  75.  
  76. public void addUser(User user){
  77. Log.d("addUser", user.toString());
  78. // 1. get reference to writable DB
  79. SQLiteDatabase db = this.getWritableDatabase();
  80.  
  81. // 2. create ContentValues to add key "column"/value
  82. ContentValues values = new ContentValues();
  83. values.put(KEY_NAME, user.getName()); // get title
  84. values.put(KEY_USERNAME, user.getUsername()); // get title
  85. values.put(KEY_PASSWORD, user.getPassword()); // get title
  86.  
  87. // 3. insert
  88. db.insert(TABLE_USER, // table
  89. null, //nullColumnHack
  90. values); // key/value -> keys = column names/ values = column values
  91.  
  92. // 4. close
  93. db.close();
  94. }
  95.  
  96. public User getUser(int id){
  97.  
  98. // 1. get reference to readable DB
  99. SQLiteDatabase db = this.getReadableDatabase();
  100.  
  101. // 2. build query
  102. Cursor cursor =
  103. db.query(TABLE_USER, // a. table
  104. USER_COLUMNS, // b. column names
  105. " id = ?", // c. selections
  106. new String[] { String.valueOf(id) }, // d. selections args
  107. null, // e. group by
  108. null, // f. having
  109. null, // g. order by
  110. null); // h. limit
  111.  
  112. // 3. if we got results get the first one
  113. if (cursor != null)
  114. cursor.moveToFirst();
  115.  
  116. // 4. build user object
  117. User user = new User();
  118. user.setId(Integer.parseInt(cursor.getString(0)));
  119. user.setName(cursor.getString(1));
  120. user.setUsername(cursor.getString(2));
  121. user.setPassword(cursor.getString(3));
  122.  
  123. Log.d("getUser(" + id + ")", user.toString());
  124.  
  125. // 5. return user
  126. return user;
  127. }
  128.  
  129. public User getUser(String username){
  130.  
  131. // 1. get reference to readable DB
  132. SQLiteDatabase db = this.getReadableDatabase();
  133.  
  134. // 2. build query
  135. Cursor cursor =
  136. db.query(TABLE_USER, // a. table
  137. USER_COLUMNS, // b. column names
  138. " username = ?", // c. selections
  139. new String[] { String.valueOf(username) }, // d. selections args
  140. null, // e. group by
  141. null, // f. having
  142. null, // g. order by
  143. null); // h. limit
  144.  
  145. // 3. if we got results get the first one
  146. if (cursor != null)
  147. cursor.moveToFirst();
  148.  
  149. // 4. build user object
  150.  
  151. if (cursor.getCount() > 0) {
  152. User user = new User();
  153. user.setId(Integer.parseInt(cursor.getString(0)));
  154. user.setName(cursor.getString(1));
  155. user.setUsername(cursor.getString(2));
  156. user.setPassword(cursor.getString(3));
  157. Log.d("getUser(" + username + ")", user.toString());
  158. return user;
  159. }
  160. else {
  161. Log.d("getUser(" + username + ")", "null");
  162. return null;
  163. }
  164. // 5. return user
  165. }
  166.  
  167. // Get All users
  168. public List<User> getAllUsers() {
  169. List<User> users = new LinkedList<User>();
  170.  
  171. // 1. build the query
  172. String query = "SELECT * FROM " + TABLE_USER;
  173.  
  174. // 2. get reference to writable DB
  175. SQLiteDatabase db = this.getWritableDatabase();
  176. Cursor cursor = db.rawQuery(query, null);
  177.  
  178. // 3. go over each row, build user and add it to list
  179. User user = null;
  180. if (cursor.moveToFirst()) {
  181. do {
  182. user = new User();
  183. user.setId(Integer.parseInt(cursor.getString(0)));
  184. user.setName(cursor.getString(1));
  185. user.setUsername(cursor.getString(2));
  186. user.setPassword(cursor.getString(3));
  187.  
  188. // Add user to users
  189. users.add(user);
  190. } while (cursor.moveToNext());
  191. }
  192.  
  193. Log.d("getAllUsers()", users.toString());
  194.  
  195. // return users
  196. return users;
  197. }
  198.  
  199. // Updating single user
  200. public int updateUser(User user) {
  201.  
  202. // 1. get reference to writable DB
  203. SQLiteDatabase db = this.getWritableDatabase();
  204.  
  205. // 2. create ContentValues to add key "column"/value
  206. ContentValues values = new ContentValues();
  207. values.put("name", user.getName()); // get title
  208. values.put("username", user.getUsername()); // get author
  209. values.put("password", user.getPassword());
  210.  
  211. // 3. updating row
  212. int i = db.update(TABLE_USER, //table
  213. values, // column/value
  214. KEY_ID+" = ?", // selections
  215. new String[] { String.valueOf(user.getId()) }); //selection args
  216.  
  217. // 4. close
  218. db.close();
  219.  
  220. return i;
  221.  
  222. }
  223.  
  224. // Deleting single user
  225. public void deleteUser(User user) {
  226.  
  227. // 1. get reference to writable DB
  228. SQLiteDatabase db = this.getWritableDatabase();
  229.  
  230. // 2. delete
  231. db.delete(TABLE_USER,
  232. KEY_ID+" = ?",
  233. new String[] { String.valueOf(user.getId()) });
  234.  
  235. // 3. close
  236. db.close();
  237.  
  238. Log.d("deleteUser", user.toString());
  239. }
  240. /*
  241. // users table name
  242. private static final String TABLE_CAR = "car";
  243.  
  244. // users Table Columns names
  245. private static final String KEY_COMPANY = "company";
  246. private static final String KEY_MODEL = "model";
  247. private static final String KEY_YEAR = "year";
  248. private static final String KEY_ENGINE = "engine";
  249. private static final String KEY_HORSE_POWER = "horse_power";
  250. private static final String KEY_CONDITION = "condition";
  251. private static final String KEY_PHONE = "phone";
  252.  
  253. private static final String[] CAR_COLUMNS = {KEY_ID,KEY_COMPANY,KEY_MODEL,KEY_YEAR, KEY_ENGINE, KEY_HORSE_POWER, KEY_CONDITION, KEY_PHONE};
  254.  
  255. public void addCar(Car car){
  256. Log.d("addCar", car.toString());
  257. // 1. get reference to writable DB
  258. SQLiteDatabase db = this.getWritableDatabase();
  259.  
  260. // 2. create ContentValues to add key "column"/value
  261. ContentValues values = new ContentValues();
  262. values.put(KEY_COMPANY, car.getCompany()); // get title
  263. values.put(KEY_MODEL, car.getModel()); // get title
  264. values.put(KEY_YEAR, car.getYear());
  265. values.put(KEY_ENGINE,car.getEngine());
  266. values.put(KEY_HORSE_POWER,car.getHorsePower());
  267. values.put(KEY_CONDITION,car.getCondition());
  268. values.put(KEY_PHONE,car.getPhone());
  269.  
  270. // get title
  271.  
  272. // 3. insert
  273. db.insert(TABLE_CAR, // table
  274. null, //nullColumnHack
  275. values); // key/value -> keys = column names/ values = column values
  276.  
  277. // 4. close
  278. db.close();
  279. }
  280.  
  281. // Get All cars
  282. public List<Car> getAllCars() {
  283. List<Car> cars = new LinkedList<Car>();
  284.  
  285. // 1. build the query
  286. String query = "SELECT * FROM " + TABLE_CAR;
  287.  
  288. // 2. get reference to writable DB
  289. SQLiteDatabase db = this.getWritableDatabase();
  290. Cursor cursor = db.rawQuery(query, null);
  291.  
  292. // 3. go over each row, build user and add it to list
  293. Car car = null;
  294. if (cursor.moveToFirst()) {
  295. do {
  296. car = new Car();
  297. car.setId(Integer.parseInt(cursor.getString(0)));
  298. car.setCompany(cursor.getString(1));
  299. car.setModel(cursor.getString(2));
  300. car.setYear(cursor.getString(3));
  301. car.setEngine(cursor.getDouble(4));
  302. car.setHorsePower(cursor.getInt(5));
  303. car.setCondition(cursor.getString(6));
  304. car.setPhone(cursor.getString(7));
  305.  
  306. // Add user to users
  307. cars.add(car);
  308. } while (cursor.moveToNext());
  309. }
  310.  
  311. Log.d("getAllCars()", cars.toString());
  312.  
  313. // return users
  314. return cars;
  315. }*/
  316. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement