我有一个代码创建其中包含2个表的数据库.
private static final String tablecommandes="CREATE table Commandes (no INTEGER NOT NulL PRIMARY KEY,equipe TEXT NulL,nom TEXT NulL,adresse TEXT NulL,ville TEXT NulL,tel TEXT NulL,frequence INTEGER NulL,datelastserv TIMESTAMP NulL,priorite INTEGER NulL);";private static final String tabletravaux="CREATE table Travaux (notrav INTEGER NOT NulL PRIMARY KEY autoINCREMENT, travid TEXT NulL, notravlogicIEl INTEGER NulL, nocom INTEGER NulL, debut TIMESTAMP NulL,fin TIMESTAMP NulL,temps INTEGER NulL);";private static final String DATABASE_CREATE = tablecommandes+" "+tabletravaux; @OverrIDepublic voID onCreate(sqliteDatabase database) { database.execsql(DATABASE_CREATE);}
当我尝试对两个表进行查询时,我得到“没有这样的表Travaux”
public Cursor fc() throws sqlException {Cursor mCursor = database.query(true, "Commandes , Travaux", new String[] { FIEldno,FIEldNom,FIEldAdresse,FIEldville,FIEldtel,FIEldfreq,FIEldlastserv,FIEldequipe}, "Commande.NoCommande=Travaux.NoCommande",null, null, null, null,null); if (mCursor != null) { mCursor.movetoFirst(); } return mCursor;}
这在我的HC平板电脑上工作正常,但在ICS平板电脑上却不行.
任何想法?
解决方法:
从sqliteDatabase.execsql()文档中:
Execute a single sql statement…
因此,即使您的代码可以在某些设备上运行,也请尝试将构建语句分成两个命令:
@OverrIDepublic voID onCreate(sqliteDatabase database) { database.execsql(tablecommandes); database.execsql(tabletravaux);}
总结 以上是内存溢出为你收集整理的java-数据库多表和ICS全部内容,希望文章能够帮你解决java-数据库多表和ICS所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)