Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.88 KB | None | 0 0
  1. E/AndroidRuntime: FATAL EXCEPTION: main
  2. Process: com.listochek.chem.calc, PID: 3941
  3. java.lang.RuntimeException: Unable to start activity ComponentInfo{com.listochek.chem.calc/com.listochek.chem.calc.MainActivity}: android.database.sqlite.SQLiteException: near "AUTOINCREMENT": syntax error (code 1 SQLITE_ERROR): , while compiling: CREATE TABLE IF NOT EXISTS `Elements`(id INTEGER PRIMARY KEY UNIQUE AUTOINCREMENT, Химический элемент TEXT, Символ TEXT, Атомная масса REAL);
  4. at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2946)
  5. at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3081)
  6. at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
  7. at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
  8. at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
  9. at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1831)
  10. at android.os.Handler.dispatchMessage(Handler.java:106)
  11. at android.os.Looper.loop(Looper.java:201)
  12. at android.app.ActivityThread.main(ActivityThread.java:6810)
  13. at java.lang.reflect.Method.invoke(Native Method)
  14. at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
  15. at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
  16. Caused by: android.database.sqlite.SQLiteException: near "AUTOINCREMENT": syntax error (code 1 SQLITE_ERROR): , while compiling: CREATE TABLE IF NOT EXISTS `Elements`(id INTEGER PRIMARY KEY UNIQUE AUTOINCREMENT, Химический элемент TEXT, Символ TEXT, Атомная масса REAL);
  17. at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
  18. at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:903)
  19. at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:514)
  20. at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
  21. at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
  22. at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:31)
  23. at android.database.sqlite.SQLiteDatabase.executeSql(SQLiteDatabase.java:1770)
  24. at android.database.sqlite.SQLiteDatabase.execSQL(SQLiteDatabase.java:1698)
  25. at org.jetbrains.anko.db.DatabaseKt.createTable(Database.kt:80)
  26. at com.listochek.chem.calc.Data.DBHelper.onCreate(DBHelper.kt:20)
  27. at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:393)
  28. at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:298)
  29. at org.jetbrains.anko.db.ManagedSQLiteOpenHelper.openDatabase(Database.kt:186)
  30. at org.jetbrains.anko.db.ManagedSQLiteOpenHelper.use(Database.kt:177)
  31. at com.listochek.chem.calc.MainActivity.onCreate(MainActivity.kt:20)
  32. at android.app.Activity.performCreate(Activity.java:7224)
  33. at android.app.Activity.performCreate(Activity.java:7213)
  34. at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272)
  35. at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2926)
  36. at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3081) 
  37. at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) 
  38. at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) 
  39. at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) 
  40. at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1831) 
  41. at android.os.Handler.dispatchMessage(Handler.java:106) 
  42. at android.os.Looper.loop(Looper.java:201) 
  43. at android.app.ActivityThread.main(ActivityThread.java:6810) 
  44. at java.lang.reflect.Method.invoke(Native Method) 
  45. at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) 
  46. at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873) 
  47.  
  48. class MainActivity : AppCompatActivity() {
  49.  
  50. override fun onCreate(savedInstanceState: Bundle?) {
  51. super.onCreate(savedInstanceState)
  52. setContentView(R.layout.activity_main)
  53. database.use {
  54. insert(Elements.TABLE_NAME,
  55. Elements.COLUMN_ID to 1,
  56. Elements.COLUMN_ELEMENT to "Водород",
  57. Elements.COLUMN_SYMBOL to "H",
  58. Elements.COLUMN_MASS to 1.00794)
  59. insert(Elements.TABLE_NAME,
  60. Elements.COLUMN_ID to 2,
  61. Elements.COLUMN_ELEMENT to "Гелий",
  62. Elements.COLUMN_SYMBOL to "He",
  63. Elements.COLUMN_MASS to 4.00260)
  64. }
  65. val test = database.use {
  66. select(Elements.TABLE_NAME).exec { parseList<Any>(classParser()) }
  67. }
  68. ListView.adapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, test)
  69. }
  70.  
  71. data class Elements(var id : Int, var Element : String, var Symbol : String, var Mass : Double) {
  72. companion object {
  73. const val TABLE_NAME = "Elements"
  74. const val COLUMN_ID = "id"
  75. const val COLUMN_ELEMENT = "Element"
  76. const val COLUMN_SYMBOL = "Symbol"
  77. const val COLUMN_MASS = ""
  78. }
  79.  
  80. class DBHelper(ctx: Context) : ManagedSQLiteOpenHelper(ctx, "Elements", null, 1) {
  81. companion object {
  82. private var instance: DBHelper? = null
  83. @Synchronized
  84. fun getInstance(ctx: Context): DBHelper {
  85. if (instance == null) {
  86. instance = DBHelper(ctx.getApplicationContext())
  87. }
  88. return instance!!
  89. }
  90. }
  91.  
  92. override fun onCreate(db: SQLiteDatabase) {
  93. db.createTable("Elements", true,
  94. "id" to INTEGER + PRIMARY_KEY + UNIQUE + AUTOINCREMENT,
  95. "Химический элемент" to TEXT,
  96. "Символ" to TEXT,
  97. "Атомная масса" to REAL
  98. )
  99. }
  100.  
  101. override fun onUpgrade(db: SQLiteDatabase, oldVersion: Int, newVersion: Int) {
  102. db.dropTable("Elements", true)
  103. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement