我想找出列的sqlite数据类型(TEXT,INTEGER)等…
我正在编写一个通用函数来解析游标并执行 *** 作.我只会得到一个sql字符串作为函数的参数.
根据sqlite文档( http://www.sqlite.org/datatype3.html),sqlite中的列没有数据类型 – 这些列中的值可以.Any column in an sqlite version 3 database,except an INTEGER PRIMARY KEY column,may be used to store a value of any storage class.
如果您使用的是API级别11或更高级别,则游标支持getType()(请参阅http://developer.android.com/reference/android/database/AbstractWindowedCursor.html#getType(int)).
如果您使用的是较早的API级别,并且您知道给定游标中的所有结果都来自同一个表,那么您可以执行类似(未经测试)的 *** 作:
// Assumes "cursor" is a variable that contains the cursor you're// interested in.String tablename = "..."; // The name of the tablesqliteDatabase db = cursor.getDatabase();String[] names = cursor.getColumnnames();for (name : names) { Cursor typeCursor = db.rawquery("select typeof (" + name + ") from " + tablename; typeCursor.movetoFirst(); Log.v("test","Type of " + name + " is " + typeCursor.getString(0);}
但是,如果传入的游标(例如)是连接两个或多个表的db.rawquery()调用的结果,那么(我预期)会失败.
总结以上是内存溢出为你收集整理的在SQLite Android游标中识别列的数据类型全部内容,希望文章能够帮你解决在SQLite Android游标中识别列的数据类型所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)