我想用Python连SQLserver做一个学生成绩管理系统,现在passion的代码已经有了,你能为我写出相应的SqlServer数据库代码吗?
时间: 2024-03-23 19:37:24 浏览: 121
SQLServer学生成绩管理系统(代码 数据库,文档
4星 · 用户满意度95%
当然可以,以下是一个简单的示例,假设你需要管理学生的学籍信息和成绩数据,首先需要创建两个表,一个是 `students`,另一个是 `scores`:
```sql
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50),
gender CHAR(1),
age INT,
major VARCHAR(50)
)
CREATE TABLE scores (
id INT PRIMARY KEY,
student_id INT,
course_name VARCHAR(50),
score INT,
FOREIGN KEY (student_id) REFERENCES students(id)
)
```
然后,你可以使用 Python 的 `pyodbc` 模块来连接 SQL Server 数据库,示例代码如下:
```python
import pyodbc
# 创建一个连接对象
conn = pyodbc.connect('DRIVER={SQL Server Native Client 11.0};SERVER=<server_name>;DATABASE=<database_name>;UID=<username>;PWD=<password>')
# 创建一个游标对象
cursor = conn.cursor()
# 插入一条学生记录
cursor.execute("INSERT INTO students (id, name, gender, age, major) VALUES (?, ?, ?, ?, ?)", (1, "张三", "男", 20, "计算机科学"))
# 插入一条成绩记录
cursor.execute("INSERT INTO scores (id, student_id, course_name, score) VALUES (?, ?, ?, ?)", (1, 1, "数据结构", 80))
# 查询学生记录
cursor.execute("SELECT * FROM students WHERE id = ?", (1,))
row = cursor.fetchone()
print(row)
# 查询学生的成绩记录
cursor.execute("SELECT * FROM scores WHERE student_id = ?", (1,))
rows = cursor.fetchall()
for row in rows:
print(row)
# 关闭游标和连接对象
cursor.close()
conn.close()
```
需要注意的是,示例中的连接字符串 `DRIVER={SQL Server Native Client 11.0};SERVER=<server_name>;DATABASE=<database_name>;UID=<username>;PWD=<password>` 需要替换成你自己的数据库连接信息。另外,如果你在 Windows 操作系统上运行 Python 程序,需要先安装 `pyodbc` 模块,可以使用 `pip install pyodbc` 命令进行安装。
阅读全文