Android编程中如何在一个SQLite数据库创建两个表

Android编程中如何在一个SQLite数据库创建两个表,第1张

完全可以的

SQLiteDatabaseinsert(String

table, String

nullColumnHack, ContentValues

values)

db的插入,查询,删除函数的第一个参数就是table_name,就可以对指定的表进行 *** 作

SQLite 和其他数据库最大的不同就是对数据类型的支持,创建一个表时,可以在 CREATE TABLE 语句中指定某列的数据类型,但是你可以把任何数据类型放入任何列中。当某个值插入数据库时,SQLite 将检查它的类型。如果该类型与关联的列不匹配,则 SQLite 会尝试将该值转换成该列的类型。如果不能转换,则该值将作为其本身具有的类型存储。比如可以把一个字符串(String)放入 INTEGER 列。SQLite 称这为“弱类型”(manifest typing)。 此外,SQLite 不支持一些标准的 SQL 功能,特别是外键约束(FOREIGN KEY constrains),嵌套 transcaction 和 RIGHT OUTER JOIN 和 FULL OUTER JOIN, 还有一些 ALTER TABLE 功能。

Android 提供了 SQLiteOpenHelper 帮助你创建一个数据库,你只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。

SQLiteOpenHelper 的子类,至少需要实现三个方法:

1 构造函数,调用父类 SQLiteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。

2 onCreate()方法,它需要一个 SQLiteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。

3 onUpgrage() 方法,它需要三个参数,一个 SQLiteDatabase 对象,一个旧的版本号和一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。

方法/步骤

首先下载 Navicat for SQLite,下载后解压缩。

运行navicatexe 这个主程序,在左上角点击连接

在d出窗口中输入连接名,选择类型,然后在下面选择数据库文件,或者数据库保存位置。

这样就在指定位置创建了一个Sqlite数据库文件了

创建表的SQL语句根据不同的数据库会有所不同,常见的几种数据库创建方式如下:

创建一个表。表名字Persons,第一列Id_P,整数类型;第二列LASTName,字符类型;第三列FirstName,字符类型。

微软VSSQL2008数据库

mysql数据库

sqlite数据库

扩展资料:

结构化查询语言(StructuredQueryLanguage)简称SQL,是用于访问和处理数据库的标准的计算机语言,同时也是数据库脚本文件的扩展名。常用的 *** 作:

删除表--droptabletabname--这是将表连同表中信息一起删除但是日志文件中会有记录;

删除数据库--dropdatabase;

删除数据记录--"deletefrom数据表where条件表达式"

1使用intelij idea创建一个andorid项目

2创建如下工具类:

MyDBHelperjava

package comamosandroid_database;

import androidcontentContext;

import androiddatabasesqliteSQLiteDatabase;

import androiddatabasesqliteSQLiteOpenHelper;

import androidutilLog;

/

Created by amosli on 14-6-10

/

public class MyDBHelper extends SQLiteOpenHelper{

/

创建数据库的构造方法

@param context 应用程序上下文

name 数据库的名字

factory 查询数据库的游标工厂一般情况下用sdk默认的

version 数据库的版本一般大于0

/

public MyDBHelper(Context context) {

super(context, "testdb", null, 4);

}

private String tag = "MyDBHelperclass";

/

在数据库第一次创建时会执行

@param db

/

@Override

public void onCreate(SQLiteDatabase db) {

Logd(tag,"onCreate");

//创建一个数据库

dbexecSQL("create table person (personid integer primary key autoincrement ,name varchar(30) )");

}

/

更新数据的时候调用的方法

@param db

@param oldVersion

@param newVersion

/

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

Logd(tag,"onUpgrade");

//增加一列

dbexecSQL("alter table person add phone varchar(13) null");

}

}

MyActivityjava

package comamosandroid_database;

import androidappActivity;

import androidosBundle;

public class MyActivity extends Activity {

/

Called when the activity is first created

/

@Override

public void onCreate(Bundle savedInstanceState) {

superonCreate(savedInstanceState);

setContentView(Rlayoutmain);

MyDBHelper myDBHelper = new MyDBHelper(this);

myDBHelpergetReadableDatabase();

myDBHelperclose();

}

}

3打开生成的testdb

1)下载安装SQLiteStudio(SQLite的可视化工具)

下载地址:>

SQLite最大的特点在于其数据类型为无数据类型(typelessness)。这意味着可以保存任何类型的数据到所想要保存的任何表的任何列中,无论这列声明的数据类型是什么。虽然在生成表结构的时候,要声明每个域的数据类型,但SQLite并不做任何检查。开发人员要靠自己的程序来控制输入与读出数据的类型。这里有一个例外,就是当主键为整型值时,如果要插入一个非整型值时会产生异常。

虽然,SQLite允许忽略数据类型,但是,仍然建议在Create Table语句中指定数据类型,因为数据类型有利于增强程序的可读性。另外,虽然在插入或读出数据的时候是不区分类型的,但在比较的时候,不同数据类型是有区别的。

以上就是关于Android编程中如何在一个SQLite数据库创建两个表全部的内容,包括:Android编程中如何在一个SQLite数据库创建两个表、为什么使用SQLite无法插入数据和创建表、如何创建sqlite数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10180073.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存