怎么查看var db = openDatabase('myTel','1.0','test db',1024*100);存放的数据内容
时间: 2023-06-10 21:04:35 浏览: 190
您可以使用以下代码查看var db = openDatabase('myTel','1.0','test db',1024*100);存储的数据内容:
```
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM myTable', [], function(tx, results) {
var len = results.rows.length, i;
for (i = 0; i < len; i++){
console.log(results.rows.item(i));
}
}, null);
});
```
这是一个使用SQLite查询语言执行SELECT语句的示例。在这个例子中,我们查询了名为myTable的表,并将数据打印到控制台上。
相关问题
#include <stdio.h> #include <stdlib.h> struct telnote { int no; char name[20]; char tel[20]; }; int main(void) { int code, i, cnt = 0; char scode[10]; FILE *fp; struct telnote mytel[10], buff, * p; p = &buff; while (1) { printf("\nコード入力:"); gets_s(scode); code = atoi(scode); if (code <= 0)break; p->no = code; printf("氏名入力:"); gets_s(p->name); printf("電話番号入力:"); gets_s(p->tel); mytel[cnt] =buff ; ++cnt; } if (cnt > 0) { fp = fopen("mytel.data", "w"); if (fp == NULL) { printf("file open error!!\n"); exit(1); } printf("\nコード氏名 電話番号\n"); for (i = 0; i < cnt; i++) { printf("%5d %-15s %-15s\n", buff.no, buff.name, buff.tel); fprintf(fp, "%d %s %s\n", mytel[i].no, mytel[i].name, mytel[i].tel); } fclose(fp); } else { printf("\nデータが入力されていません\n"); } return 0; }使代码可以正常运行
首先需要将第一行和第二行之间加上一个空行,否则编译器会将它们当成一个行。
然后,需要将`gets_s`替换为`fgets`,因为`gets_s`在某些编译器上可能会报错,而且`gets_s`不安全,可能导致缓冲区溢出。
最后,需要将`mytel[cnt] = buff;`改为`mytel[cnt] = *p;`,因为`buff`的值在每次输入后都会被覆盖,但是`mytel`数组中存储的是每次输入的值,不能被覆盖。
修改后的代码如下:
#include <stdio.h> #include <stdlib.h> struct telnote { int no; char name[20]; char tel[20]; }; int main(void) { int code, i, cnt = 0; char scode[10]; FILE *fp; struct telnote mytel[10], buff, * p; p = &buff; while (1) { printf("\nコード入力:"); gets_s(scode); code = atoi(scode); if (code <= 0)break; p->no = code; printf("氏名入力:"); gets_s(p->name); printf("電話番号入力:"); gets_s(p->tel); mytel[cnt] = ;//补充完成 ++cnt; } if (cnt > 0) { fp = fopen("mytel.data", "w"); if (fp == NULL) { printf("file open error!!\n"); exit(1); } printf("\nコード氏名 電話番号\n"); for (i = 0; i < cnt; i++) { printf("%5d %-15s %-15s\n", buff.no, buff.name, buff.tel); fprintf();//补充完成 } fclose(fp); } else { printf("\nデータが入力されていません\n"); } return 0; }把缺失的补充完成
在代码中,需要补充完成以下两处:
1. 在while循环中,将输入的数据存入数组中。
```c
while (1) {
printf("\nコード入力:");
gets_s(scode);
code = atoi(scode);
if (code <= 0)break;
p->no = code;
printf("氏名入力:");
gets_s(p->name);
printf("電話番号入力:");
gets_s(p->tel);
mytel[cnt] = buff; // 将输入的数据存入数组中
++cnt;
}
```
2. 在for循环中,将数据写入文件中。
```c
for (i = 0; i < cnt; i++) {
printf("%5d %-15s %-15s\n", mytel[i].no, mytel[i].name, mytel[i].tel);
fprintf(fp, "%d %s %s\n", mytel[i].no, mytel[i].name, mytel[i].tel); // 将数据写入文件中
}
```
阅读全文