在eclipse中需要自定义创建表工具类:
比如;
1、写一个DBHelper继承自SQLiteOpenHelper
public class DBHelper extends SQLiteOpenHelper{
//数据库的版本
private final static int DB_VERSION = 1;
//数据库名
private final static String DB_NAME = "ladengdb";
private Context mContext;
//我们直接用super调用父类的构造方法,这样我们在实例化DBHelper的时候只需要传入一个上下文参数就可以了
public DBHelper(Context context) {
super(context, DB_NAME, null, DB_VERSION);
thismContext = context;
}
//数据库不存在的时候,调用这个方法
@Override
public void onCreate(SQLiteDatabase db) {
createTables(db,0,0);
}
//版本号发生变化的时候,调用这个方法
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//1删除原来的表
//2调用onCreate重新创建数据库
}
/
建表语句,只需要一行就能建一个表
/
private void createTables(SQLiteDatabase db, int oldVersion, int newVersion) {
//createTable(Movieclass)返回的是sql建表语句
//dbexecSQL(sql) 执行这条建表语句
dbexecSQL(createTable(Movieclass));
}
/
如果没传表明的话,默认使用类名作为表明
@param clazz 实体类
@return
/
private <T> String createTable(Class<T> clazz){
return createTable(clazz, clazzgetSimpleName());
}
/
真正的建表方法
@param clazz 实体类
@param tableName 表明
@return sql建表语句
/
private <T> String createTable(Class<T> clazz , String tableName){
//实例化一个容器,用来拼接sql语句
StringBuffer sBuffer = new StringBuffer();
//sql语句,第一个字段为_ID 主键自增,这是通用的,所以直接写死
sBufferappend("create table if not exists "+ tableName + " "+
"(_ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,");
//得到实体类中所有的公有属性
Field[] fields = clazzgetFields();
//遍历所有的公有属性
for(Field field : fields){
//如果属性不为_id的话,说明是新的字段
if (!fieldgetName()equals("_id")) {
//得到属性的基本数据类型
String type = fieldgetType()getSimpleName();
//如果是String类型的属性,就把字段类型设置为TEXT
if (typeequals("String")) {
sBufferappend(fieldgetName()+" TEXT,");
//如果是int类型的属性,就把字段类型设置为INTEGER
}else if (typeequals("int")) {
sBufferappend(fieldgetName()+" INTEGER,");
}
}
}
//将最后的逗号删除
sBufferdeleteCharAt(sBufferlength()-1);
//替换成); 表明sql语句结束
sBufferappend(");");
//返回这条sql语句
return sBuffertoString();
}
}
2、Movie实体类,实体类中的属性就是表中的字段
public class Movie {
public String title;
public int rating;
public String year;
public String genre;
public String country;
public int price;
}
3、在MainActivityjava中添加如下代码
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
superonCreate(savedInstanceState);
setContentView(Rlayoutactivity_main);
//实例化我们的DBHelper
DBHelper dbHelper = new DBHelper(this);
//调用了这个方法后,DBHelper中的onCreate才会执行
dbHelpergetReadableDatabase();
}
}
4、创建结果:
android访问其他数据库需要什么权限
如果您需要让某些登录用户具有不同的访问权限,请确保用户数据库表格包含一个特定的列,该列指定每个用户的访问权限(“来宾”、“用户”、“管理员”等)。每个用户的访问权限应该由站点管理员在数据库中输入。
在大多数数据库应用程序中,每当新建一个记录时,可以将一个列设置为默认值。将该默认值设置为站点上最常用的访问权限(例如“来宾”);然后手动更改例外的情况(例如,将“来宾”更改为“管理员”)。用户现在即可访问所有管理员页。
确保数据库中的每个用户都具有单一的访问权限(例如“来宾”或“管理员”),而不是多项权限(例如“用户、管理员”)。如果要为您的页设置多项访问权限(例如,所有来宾和管理员都可以查看该页),则在页级别(而不是在数据库级别)设置这些权限。
访问lync数据库需要什么权限安装 Lync Server 2010 的用户必须具有 Schema Admins 组权限,当然还必须要具备 Domain Admins组权限 和 Enterprise Admins组权限。
1安装
2安装拓扑生成器
3生成拓扑
然后选择拓扑文件存放位置
主SIP域,一般为主域名 例如 contoso
有没有额外的域,如果没有直接下一步
每个部署必须至少聚友一个站点。如果您的部署具有多个站点,以后可以使用“新建站点”向导添加其他站点。
定义一个相应版本的FQDN名称
当前前端服务器池中的服务器FQDN名称
勾选功能
安装SQL服务器的 FQDN名称
定义一个共享文件夹,用于存放会议PPT等文件,注意:此共享不要在前端服务器上。
公网域名
如果有,需要指定PSTN的网关IP地址
4 AD准备完成后,需要做两方面的准备
1需要把管理Lync的账号加入 SCAdminitrator组 和 RTCUniversalServerAdmins 组
2在DNS中添加A记录
poolcontoso
admincontoso 指向前端服务器
meetcontoso 会议
dialincontoso 电话拨入
android 怎么访问其他运用的数据库按照Android的流程,创建数据库的程序应该提高一个Provider,这样另外的程序就可以通过这个Provider来访问这个数据库了。
mysql创建数据库需要什么权限你都不是安全登录的,没有建库的权限,重新退出mysql,
在cmd下执行 mysql -u root -p密码<img id="selectsearch-icon" src=:imgbaidu/img/iknow/qb/select-searchpng alt="搜索">
服务器,ACC数据库C盘需要什么权限权限必须是系统管理员administrator的完全控制
如何直接用SQL语句访问其他数据库
select from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名dbo表名)
什么是权限?用户访问数据库有哪些权限?权限 是指为了保证职责的有效履行,任职者必须具备的,对某事项进行决策的范围和程度。它常常用“具有批准……事项的权限”来进行表达。例如,具有批准预算外5000元以内的礼品费支出的权限。
只有在需要让某些登录用户具有不同的访问权限时,该构造块才是必需的。如果您只是要求用户登录,则不需要存储访问权限。
如果您需要让某些登录用户具有不同的访问权限,请确保用户数据库表格包含一个特定的列,该列指定每个用户的访问权限(“来宾”、“用户”、“管理员”等)。每个用户的访问权限应该由站点管理员在数据库中输入。
在大多数数据库应用程序中,每当新建一个记录时,可以将一个列设置为默认值。将该默认值设置为站点上最常用的访问权限(例如“来宾”);然后手动更改例外的情况(例如,将“来宾”更改为“管理员”)。用户现在即可访问所有管理员页。
确保数据库中的每个用户都具有单一的访问权限(例如“来宾”或“管理员”),而不是多项权限(例如“用户、管理员”)。如果要为您的页设置多项访问权限(例如,所有来宾和管理员都可以查看该页),则在页级别(而不是在数据库级别)设置这些权限。
db2数据库用户建缓冲池需要什么权限PrintPreviewDialog pPDlg;
exec_prefix='NONE'PACKAGE='libevent'
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_URL=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
Android数据库权限!数据库支持,无论生命线的大小每一个应用程序,除非你的应用程序只能处理简单的数据,你需要一个数据库系统来存储你的结构化数据,使用SQLite数据库,这是一个开源的Android,支持多 *** 作系统的SQL数据库广泛应用于许多领域,如Mozilla Firefox是使用SQLite的存储配置数据,iPhone还使用SQLite来存储数据。
在Android中,您创建一个应用程序的数据库,只有它可以访问,其他应用程序无法访问位于Android设备/数据/数据/ /数据库文件夹中的数据库,在这篇文章中,您将学习如何创建和使用在Android的数据库。
SQLite数据库
使用Eclipse创建一个Android项目,命名数据库,如图1:
中国1数据库 - 使用Eclipse创建新项目的Android
创建最佳实践DBAdapter数据库的辅助类
*** 作是创建一个辅助类,它封装了访问数据库的所有复杂性,调用代码来讲它是透明的,所以我创建了一个帮手DBAdapter类,创建,打开,关闭和使用SQLite数据库它。
首先,在src /文件夹(在本实施例中的src / learn2developDatabase)下一个DBAdapterjava文件中的溶液。
在DBAdapterjava文件要使用导入所有的命名空间:
- 软件包learn2developDatabases;
中国进口androidcontentContentValues;
进口androidcontentContext;
进口androiddatabaseCursor;
进口androiddatabaseSQLException;
进口androiddatabasesqliteSQLiteDatabase;
进口androiddatabasesqlite SQLiteOpenHelper;
进口androidutilLog;
公共类DBAdapter
{}
中国接下来,创建一个数据库,名为bookstitles,如图所示领域。
中国2数据库字段酒店在DBAdapterjava文件,如清单1
文件清单1中定义的常量定义DBAdapterjava不断
包learn2developDatabase;
进口androidcontentContentValues;
进口androidcontent。语境;
进口androiddatabaseCursor;
进口androiddatabaseSQLException;
进口androiddatabasesqliteSQLiteDatabase;
进口androiddatabasesqliteSQLiteOpenHelper;
进口androidutilLog;
公共类DBAdapter
{
公共静态最后弦乐KEY_ISBN = ISBN;
公共静态最后弦乐KEY_TITLE =称号;
公共静态最后弦乐KEY_PUBLISHER =发行;
私有静态最后字符串变量= DBAdapter;
私有静态最后弦乐DATABASE_NAME =书籍;
私有静态最后弦乐DATABASE_TABLE =职称;
私有静态最终诠释DATABASE_VERSION = 1;
私有静态最后弦乐DATABASE_CREATE =
创建表的标题(_id整数主键自动增量,
+ ISBN文本不为空,标题文本不为空,
+出版商文字NOT NULL); ;
私人最终上下文语境;
}
DATABASE_CREATE常数包括标题表创建SQL语句。
在DBAdapter类,你可以扩展SQLiteOpenHelper类,这是一款Android辅助类,主要用于创建数据库和版本管理。事实上,你可以覆盖的onCreate()和onUpgrade()方法,如清单2所示清单2
DBAdapter类,涵盖了SQLiteOpenHelper的onCreate()和onUpgrade()方法登录到到网扩展类 - 软件包learn2developDatabase;
中国进口的Android。 contentContentValues;
进口androidcontentContext;
进口androiddatabaseCursor;
进口androiddatabaseSQLException;
进口androiddatabasesqliteSQLiteDatabase;
进口androiddatabasesqliteSQLiteOpenHelper;
进口androidutilLog;
公共类DBAdapter
{
公共静态最后弦乐KEY_ROWID = _id;
公共静态最后弦乐KEY_ISBN = ISBN;
公共静态最后弦乐KEY_TITLE =称号;
公共静态最后弦乐KEY_PUBLISHER =发行;
私有静态最后字符串变量= DBAdapter;
私有静态最后弦乐DATABASE_NAME =书籍;
私有静态最后弦乐DATABASE_TABLE =职称;
私有静态最终诠释DATABASE_VERSION = 1;
私有静态最后弦乐DATABASE_CREATE =
创建表的标题(_id整数主键自动增量,
+ ISBN文本不为空,标题文本不为空,
+出版商文字NOT NULL);;
私人最终上下文语境;
私人DatabaseHelper DBHelper;
私人SQLiteDatabase分贝;
公共DBAdapter(上下文CTX){
thiscontext = CTX;
DBHelper =新DatabaseHelper(上下文);
}
私有静态类DatabaseHelper扩展SQLiteOpenHelper
{
DatabaseHelper(上下文环境){
超(背景下,DATABASE_NAME,空,DATABASE_VERSION);
}
覆盖
公共无效的onCreate(SQLiteDatabase DB){
dbexecSQL(DATABASE_CREATE);
}
覆盖
公共无效onUpgrade(SQLiteDatabase分贝,INT oldVersion,
INT NEWVERSION){
Logw(TAG,从版本升级数据库?+ oldVersion
?+到
+ NEWVERSION +,这将销毁所有旧的数据);
dbexecSQL(“DROP TABLE IF EXISTS标题”);
的onCreate(DB);
}}
}
的onCreate()方法创建一个新的数据库,onUpgrade()方法用于升级数据库,它可以通过检查DATABASE_VERSION常数值来定义?实现,为onUpgrade()方法,只是简单地删除表,然后只创建一个表。
1po包:存放的是javabean类,每个Javabean类对应数据库中一张表。类名和表名一致
2dao包:存放的是 *** 作数据的类,即对数据库中的表进行增删查改 *** 作的类,每个dao类对应数据库中的一张表。类
名为一表名+Dao
3util包:存放的是公用的类和常量类
4test包:存放的是测试类
首先进入当前 eclipse所在的 工作区,比如:
d:\workspace,后面是项目名称,然后根据包结构建立的路径:d:\workspace\billmm\src\com\test\Demojava!
以上就是关于如何在Eclipse环境下,使用SQLite数据库中建立多个表全部的内容,包括:如何在Eclipse环境下,使用SQLite数据库中建立多个表、android访问其他数据库需要什么权限、eclipse中使用多条sql语句中都含有一个表名,可以用常量来代替表名吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)