java - 编译时出现语法错误(代码 1): ,:

标签 java android sqlite

我收到以下错误

android.database.sqlite.SQLiteException: near "TEXT": syntax error (code 1): , while compiling: CREATE TABLE contacts (name TEXT, phone INTEGER, email TEXT

产生错误的具体代码行是

sqLiteDatabase.execSQL("CREATE TABLE contacts (name TEXT, phone INTEGER, email TEXT");

完整代码如下:

package ca.truewebdev.sqlitetest1;

import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    SQLiteDatabase sqLiteDatabase = getBaseContext().openOrCreateDatabase("sqlite-test-1.db", MODE_PRIVATE, null);
    sqLiteDatabase.execSQL("CREATE TABLE contacts (name TEXT, phone INTEGER,email TEXT");
    sqLiteDatabase.execSQL("INSERT INTO contacts VALUES('tim',6456789,'tim@email/com'");
    sqLiteDatabase.execSQL("INSERT INTO contacts VALUES('chris',324243,'chris@email/com'");

    //set up to be able to access data
    Cursor query = sqLiteDatabase.rawQuery("SELECT * FROM contacts", null);

    //check to see if any data, moves to first record or returns false if none
    if (query.moveToFirst()) {
        // cycle through all records
        String name = query.getString(0);
        int phone = query.getInt(1);
        String email = query.getString(2);
        Toast.makeText(getBaseContext(), "Name = " + name + " phone = " + phone +
                " email = " + email, Toast.LENGTH_LONG).show();

    }else{
        Toast.makeText(getBaseContext(), "Error retrieving data", Toast.LENGTH_LONG).show();
    }

}
}

为什么我会收到此错误?我正在按照教程进行操作。我非常确定我输入的所有内容都是正确的。

最佳答案

更改此行

sqLiteDatabase.execSQL("CREATE TABLE contacts (name TEXT, phone INTEGER, email TEXT");

sqLiteDatabase.execSQL("CREATE TABLE contacts (name TEXT, phone INTEGER, email TEXT)");

关于java - 编译时出现语法错误(代码 1): ,:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35735028/

相关文章:

perl - 如何在 sqlite3 和 perl 中创建唯一索引?

java - Java如何知道如何迭代数组

java - 在具有以下 api 21 的设备上运行时,CardView 不显示

java - StringBuilder 中的多个 StringBuilder。值得吗?

java - Retrofit/GSON 中嵌套对象的数据模型

android - Google Goggles - Android 应用程序

sqlite - codenameone 在 sqlite 中将 boolean 值存储为 true/false,而它们应该是 1/0

sqlite - 嵌套0​​x104567910(或AND、OR语句)SQLite

java - 如何以编程方式在磁盘上查找当前信任库?

java - Hibernate搜索模糊超过2