biaoti=[i.replace('title="','') for i in biaoti ] biaoti=[i.replace('"','')for i in biaoti]#把列表中不需要的元素去除 conn=sqlite3.connect('C:\新建文件夹\数据.db') conn.execute('''CREATE TABLE dianying (链接 TEXT(50) NOT NULL, 名字 TEXT(20) NOT NULL PRIMARY KEY);''')#建立数据库 for i in range(0): conn.execute('''INSERT INTO dianying(名字) VALUES(1)''') for i in range(0): conn.execute('''INSERT INTO dianying(链接) VALUES('lianjie[i]')''') conn.commit() conn.close()为什么数据没有存入数据库
时间: 2023-08-29 16:04:41 浏览: 95
这段代码存在以下问题:
1. 在建立表时,只定义了链接和名字两个字段,但在后面的插入操作中,却尝试插入了一个名为1的值,这会导致插入失败。应该按照表定义中的字段顺序依次插入。
2. 在插入链接时,使用了字符串字面量'lianjie[i]',这会导致插入失败,因为这只是一个字符串,而不是变量lianjie中的值。应该使用字符串格式化来得到正确的链接值。
修改后的代码如下:
```python
biaoti = [i.replace('title="', '') for i in biaoti]
biaoti = [i.replace('"', '') for i in biaoti]
conn = sqlite3.connect('C:\新建文件夹\数据.db')
conn.execute('''CREATE TABLE dianying
(链接 TEXT(50) NOT NULL PRIMARY KEY,
名字 TEXT(20) NOT NULL);''')
for i in range(len(lianjie)):
conn.execute('''INSERT INTO dianying(链接, 名字) VALUES(?, ?)''', (lianjie[i], biaoti[i]))
conn.commit()
conn.close()
```
这样就可以正确将数据插入数据库。
相关问题
if (convertView == null) { viewHolder = new ViewHolder(); convertView = LayoutInflater.from(context).inflate(R.layout.item_home_luntan, null); viewHolder.iv_pic = convertView.findViewById(R.id.iv_pic); viewHolder.image_head = convertView.findViewById(R.id.image_head); viewHolder.tv_name = convertView.findViewById(R.id.tv_name); viewHolder.tv_biaoti = convertView.findViewById(R.id.tv_biaoti); viewHolder.tv_content = convertView.findViewById(R.id.tv_content); viewHolder.tv_content = convertView.findViewById(R.id.tv_content); viewHolder.tv_zan = convertView.findViewById(R.id.tv_zan); viewHolder.ll_pl = convertView.findViewById(R.id.ll_pl); viewHolder.ll_zan = convertView.findViewById(R.id.ll_zan); convertView.setTag(viewHolder); } else { viewHolder = (ViewHolder) convertView.getTag(); }解释一下这段代码
这段代码是一个典型的ListView或RecyclerView的Adapter中getView()方法的实现。在每次获取ListView或RecyclerView的子项时,都会执行这段代码。
首先判断convertView是否为空,如果为空则代表没有可重用的View,需要通过LayoutInflater来加载一个布局文件,然后初始化ViewHolder并将其与convertView绑定,最后将ViewHolder存储到convertView的tag中。如果convertView不为空,则直接从其tag中获取ViewHolder。
ViewHolder中主要存储了一些子项中需要显示的控件,例如ImageView、TextView等。在这段代码中,ViewHolder中存储了一张图片、一个头像、一个用户名、一个标题、一个内容、一个点赞数、一个评论区以及一个点赞区的控件。
通过这种方式,可以避免重复加载布局文件,提高ListView或RecyclerView的性能。同时,ViewHolder的使用也可以避免重复查找子控件,提高操作效率。
String biaoti=etbiaoti.getText().toString(); String xm=et_xm.getText().toString(); String gh=et_gh.getText().toString(); String bj=et_bj.getText().toString(); String wj=et_wj.getText().toString(); String xs=et_xs.getText().toString(); Moban medic=new Moban(); medic.setImag(path); medic.setBiaoti(biaoti); medic.setXm(xm); medic.setGh(gh); medic.setBj(bj); medic.setWj(wj); medic.setXs(xs); int i= MobanDbutils.getInstance(getApplicationContext()).insert(medic); if(i==0){ showToast("添加成功"); // Intent intent = new Intent(); // intent.putExtra("medic", medic); // setResult(RESULT_OK,intent); // finish(); finish(); }else { showToast("添加失败"); } break;解释一下
这是一个将输入框中的数据添加到数据库中的代码片段,其中:
- `String biaoti=etbiaoti.getText().toString();` 获取标题输入框中的文本内容,并转换为字符串类型;
- `String xm=et_xm.getText().toString();` 获取姓名输入框中的文本内容,并转换为字符串类型;
- `String gh=et_gh.getText().toString();` 获取工号输入框中的文本内容,并转换为字符串类型;
- `String bj=et_bj.getText().toString();` 获取班级输入框中的文本内容,并转换为字符串类型;
- `String wj=et_wj.getText().toString();` 获取文件输入框中的文本内容,并转换为字符串类型;
- `String xs=et_xs.getText().toString();` 获取学术输入框中的文本内容,并转换为字符串类型;
- `Moban medic=new Moban();` 创建一个 Moban 对象实例,用于存储输入框中的数据;
- `medic.setImag(path);` 设置 Moban 对象实例的 imag 属性,即图片路径;
- `medic.setBiaoti(biaoti);` 设置 Moban 对象实例的 biaoti 属性,即标题;
- `medic.setXm(xm);` 设置 Moban 对象实例的 xm 属性,即姓名;
- `medic.setGh(gh);` 设置 Moban 对象实例的 gh 属性,即工号;
- `medic.setBj(bj);` 设置 Moban 对象实例的 bj 属性,即班级;
- `medic.setWj(wj);` 设置 Moban 对象实例的 wj 属性,即文件;
- `medic.setXs(xs);` 设置 Moban 对象实例的 xs 属性,即学术;
- `int i= MobanDbutils.getInstance(getApplicationContext()).insert(medic);` 将 Moban 对象实例插入到数据库中,并将返回值保存到变量 i 中;
- `if(i==0){...}else {...}` 判断插入操作是否成功,并进行相应的操作,这里只是简单地显示一个 Toast 提示信息,并结束当前 Activity。
因此,调用该代码片段可以将输入框中的数据保存到数据库中,并提示用户添加是否成功。
阅读全文