1.在MySQL数据库中建表student,添加name,stundentID,birth,class,remarks字段 2.读取第二题的数据文件document.txt 3.连接数据库,将文件中的内容全部存入student表中,学号作为主键 4.查询数据库中student中的信息内容,并打印 5.查询student中的信息并重新写入到新的文件student.txt中
时间: 2023-12-03 22:47:44 浏览: 83
1. 在MySQL中建表student,添加name,studentID,birth,class,remarks字段
```sql
CREATE TABLE student (
name VARCHAR(20),
studentID VARCHAR(20) PRIMARY KEY,
birth DATE,
class VARCHAR(20),
remarks VARCHAR(50)
);
```
2. 读取第二题的数据文件document.txt
假设document.txt的内容如下:
```
name1,20190001,2000-01-01,class1,remarks1
name2,20190002,2000-02-02,class2,remarks2
name3,20190003,2000-03-03,class3,remarks3
```
可以使用Python读取文件内容:
```python
with open('document.txt', 'r') as f:
lines = f.readlines()
```
3. 连接数据库,将文件中的内容全部存入student表中,学号作为主键
可以使用Python中的MySQLdb模块连接数据库,并将文件中的内容插入到student表中:
```python
import MySQLdb
# 连接数据库
db = MySQLdb.connect(host='localhost', user='root', passwd='password', db='test')
cursor = db.cursor()
# 将文件中的内容插入到student表中
for line in lines:
data = line.strip().split(',')
name = data[0]
studentID = data[1]
birth = data[2]
class_ = data[3]
remarks = data[4]
sql = "INSERT INTO student(name, studentID, birth, class, remarks) VALUES ('%s', '%s', '%s', '%s', '%s')" % (name, studentID, birth, class_, remarks)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
# 关闭数据库连接
db.close()
```
4. 查询数据库中student中的信息内容,并打印
可以使用Python中的MySQLdb模块查询数据库,并打印结果:
```python
import MySQLdb
# 连接数据库
db = MySQLdb.connect(host='localhost', user='root', passwd='password', db='test')
cursor = db.cursor()
# 查询student表中的信息
sql = "SELECT * FROM student"
try:
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
name = row[0]
studentID = row[1]
birth = row[2]
class_ = row[3]
remarks = row[4]
print("name: %s, studentID: %s, birth: %s, class: %s, remarks: %s" % (name, studentID, birth, class_, remarks))
except:
print("Error: unable to fetch data")
# 关闭数据库连接
db.close()
```
5. 查询student中的信息并重新写入到新的文件student.txt中
可以使用Python中的MySQLdb模块查询数据库,并将结果重新写入到文件student.txt中:
```python
import MySQLdb
# 连接数据库
db = MySQLdb.connect(host='localhost', user='root', passwd='password', db='test')
cursor = db.cursor()
# 查询student表中的信息
sql = "SELECT * FROM student"
try:
cursor.execute(sql)
results = cursor.fetchall()
with open('student.txt', 'w') as f:
for row in results:
name = row[0]
studentID = row[1]
birth = row[2]
class_ = row[3]
remarks = row[4]
f.write("%s,%s,%s,%s,%s\n" % (name, studentID, birth, class_, remarks))
except:
print("Error: unable to fetch data")
# 关闭数据库连接
db.close()
```
阅读全文