我想将SQLite数据库中的数据显示到我的自定义列表视图中
我的活动:
public class Main_activity extends Activity implements OnItemClickListener{
public static final String[] titles = new String[] { "Strawberry",
"Banana", "Orange" };
public static final String[] descriptions = new String[] {
"It is an aggregate accessory fruit",
"It is the largest herbaceous flowering plant", "Citrus Fruit"
};
ListView listView;
List<RowItem> rowItems;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_main);
rowItems = new ArrayList<RowItem>();
for (int i = 0; i < titles.length; …Run Code Online (Sandbox Code Playgroud) 我正在制作一个android数据存储应用程序.在这个我的问题是我想在sqlite表android中创建复合主键.我想要两个列名的复合键.句法:
public static final String PEN_TABLE_QUERY= " CREATE TABLE if not exists " + PEN_TABLE + "( "+ PEN_ID + " INTEGER , " + MAIN_CATEGORY + " TEXT , " + SUB_CATEGORY + " TEXT , " + PEN_TYPE + " TEXT , " + DESC + " TEXT , " + DATE + " TEXT PRIMARY KEY " +")";
Run Code Online (Sandbox Code Playgroud)
我想要id和日期的主键请帮助我
我在尝试执行SQLite3查询时遇到语法错误.问题是因为变量inputPattern包含.
功能是:
def searchForExactEnglishToCzechTranslation(inputPattern,db):
if "\'" in inputPattern:
inputPattern.replace("'","''")
result = db.execute("SELECT czech FROM translations WHERE english='%s'" % (inputPattern)).fetchall()
Run Code Online (Sandbox Code Playgroud)
我正在尝试更换标志'但仍然无效.
你能给我一个建议吗?谢谢
SELECT COUNT(*) FROM table GROUP BY column
Run Code Online (Sandbox Code Playgroud)
我得到表中的总行数,而不是GROUP BY后的行数.为什么?
这有点令人毛骨悚然 - 首先插入的数据总是丢失.
我做什么 - 我总是丢失我的第一笔交易细节.类似地,如下所示我添加两次交易 - 但是当我得到交易表的返回结果的大小时,它总是1 - 而不是2.
如果我做错了,请告诉我?
提前致谢
我正在添加如下交易:
transactionHelper th = new transactionHelper(this.activity.getApplicationContext());
values.clear();
values = new ContentValues();
values.put("accountid", accountID );
values.put("amount", totalBalance);
values.put("transactiontype", 1);
values.put("checknumber", "");
values.put("checkdate", transactionDate);
values.put("cleared", 1);
values.put("notes", "Starting Balance");
values.put("categoryid", startCat);
boolean added = th.addTransaction(values);
Log.v("jv", "Is this added or not: " + added);
th.addTransaction(values);
Log.v("jv", "nothing added: " + th.getAll().size());
Run Code Online (Sandbox Code Playgroud)
我的班级看起来像:
public transactionHelper(Context context) { super(context, DATABASE_NAME , null, 1); }
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(
"CREATE …Run Code Online (Sandbox Code Playgroud) 我有Windows窗体应用程序.
(C#with visual studio 2010,Framework:4.0)
数据库:.db(文件数据库),通过SQLite连接对象
Thread th = new Thread(() => database(node, xNodetcname, xNodesqlquery1, xNodeHint, e, inXml));
th.Name = thread;
th.Start();
Run Code Online (Sandbox Code Playgroud)
上面的代码创建每个线程并在database()函数上并行处理.
每个线程都有一个SQL Query,用于从数据库中获取数据.
虽然我没有使用多线程,但性能更好,但是当我使用多线程时性能下降.
例:
没有多线程3查询处理时间= 1.5分钟
使用多线程3查询处理时间= 1.9分钟.
我的目标是减少查询的处理时间.
我在插入值时遇到了一些麻烦 SQLite database
这就是我创建数据库的方式:
if(query.exec("CREATE TABLE IF NOT EXISTS visitorItemsV4 (channelID, itemId, itemName, itemPic, itemPrice, itemMeta);")) {
qDebug() << "Table `visitorItemsV4` created.";
}
Run Code Online (Sandbox Code Playgroud)
这就是我插入新项目的方式:
if (db.isOpen()) {
qDebug() << itemId;
qDebug() << itemName;
qDebug() << itemPic;
qDebug() << itemPrice;
QSqlQuery query(db);
ret = query.exec(QString("insert or replace into visitorItemsV4 values ('%1', '%2', '%3', '%4', '%5', '%6');")
.arg(channel).arg(itemId).arg(itemName).arg(itemPic).arg(itemPrice).arg(itemPrice));
qDebug() << query.lastError();
if (ret) {
qDebug() << "saved item";
}
}
Run Code Online (Sandbox Code Playgroud)
问题是itemPrice始终获取值%5并itemMeta获取值%6
itemPrice变量包含499所以我期望这是价值 …
我正在尝试为python中的应用程序创建一个sqlite数据库。
我认为到目前为止,我的数据库包含一个表,并且已经包含500个条目。我之所以这样说是因为Pycharm中的内置数据库工具告诉我。然后,我创建了另一个表来包含其余数据。我认为他们没有进入该表,因为该表未显示在数据库工具中。因此,我创建了另一个数据库来插入其余数据。
当我尝试从第一个数据库中删除一些数据时,它删除了,但将其替换为一些我以前认为由于500行限制而没有被首先输入的数据。我在PyCharm中做到了这一点,一直以来都是例外。潜水员使用的是xerial驱动程序。
我在做什么错?如何将所有数据放在一张表中?决赛桌将有1000多个条目。
嗨,在我的应用程序中,我有想要插入我的sqlite数据库的数据.所以我已经成功创建了数据库,但问题是它没有将数据插入数据库.
我的数据库创建代码.
- (void)createDatabase
{
NSArray *directories = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *doctumentsDirectory = [directories lastObject];
self.databasePath = [[NSString alloc] initWithString:[doctumentsDirectory stringByAppendingPathComponent:@"/bp.sqlite"]];
NSFileManager *fileManager = [NSFileManager defaultManager];
// create DB if it does not already exists
if (![fileManager fileExistsAtPath:self.databasePath]) {
const char *dbPath = [self.databasePath UTF8String];
if (sqlite3_open(dbPath, &_myDataBase) == SQLITE_OK) {
char *errorMsg;
const char *sql_statement = "CREATE TABLE IF NOT EXISTS br (ID INTEGER PRIMARY KEY AUTOINCREMENT, NAME TEXT, COST TEXT,QUTY TEXT)";
if (sqlite3_exec(_myDataBase, sql_statement, NULL, …Run Code Online (Sandbox Code Playgroud) 我正在编写一个代码,我将一个片段放在一个活动中.现在在fragment类的OnCreate()函数中,我在以下代码中没有错误
public class HomePage_Fragment extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SQLiteDatabase db = openOrCreateDatabase("DATABASE",android.content.Context.MODE_PRIVATE ,null);
}
@Override
public View onCreateView(LayoutInflater inflater,ViewGroup container, Bundle savedInstance){
return inflater.inflate(R.layout.fragment_home_page,container,false);
}
Run Code Online (Sandbox Code Playgroud)
}
错误:类型HomePage_Fragment未定义方法openOrCreateDatabase(String,int,null)
代码非常简单,我多次使用相同的命令,所以我确信语法是正确的.
提前致谢