一文教会你用python连接并简单操作SQLserver数据库

  • Post category:Python

一文教会你用Python连接并简单操作SQL Server数据库

本文将介绍如何使用Python连接并操作SQL Server数据库。具体来说,我们将使用pyodbc库实现连接和数据查询操作。以下是步骤:

步骤1:安装相关的库

要使用pyodbc库,我们需要事先安装ODBC驱动程序和pyodbc库。这里我们以Windows系统为例,主要分为以下两部分:

1.1 安装ODBC驱动程序

ODBC驱动程序是用来连接不同类型的数据库的软件组件。因此,我们需要根据SQL Server版本和操作系统类型安装相应的ODBC驱动程序。

  1. 下载ODBC驱动程序(根据版本和操作系统类型选择对应的驱动程序,这里以SQL Server 2019和Windows系统为例):

SQL Server 2019 ODBC Driver:
https://docs.microsoft.com/zh-cn/sql/connect/odbc/download-odbc-driver-for-sql-server?view=sql-server-ver15

  1. 安装下载的ODBC驱动程序。

1.2 安装pyodbc库

使用如下命令安装pyodbc库:

pip install pyodbc

步骤2:连接SQL Server数据库

使用pyodbc库连接SQL Server数据库的代码示例:

import pyodbc

# 连接数据库
cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER=your_server_name;DATABASE=your_database_name;UID=your_username;PWD=your_password')

# 创建游标对象
cursor = cnxn.cursor()

# 查询
cursor.execute('SELECT * FROM your_table_name')

# 读取查询结果
for row in cursor.fetchall():
    print(row)

# 关闭连接
cnxn.close()

在以上代码示例中,我们首先使用pyodbc库中的connect()函数建立与数据库的连接。具体来说,我们需要提供ODBC驱动程序名称、SQL Server实例名称(或IP地址)、数据库名称、用户名和密码等信息,以字符串的形式传递给connect()函数。

接着,我们创建游标对象,并使用execute()方法执行SQL查询。

最后,我们使用fetchall()方法读取查询结果,并在控制台上打印出来。之后,我们关闭连接,释放资源。

步骤3:执行SQL查询操作

使用pyodbc库执行SQL查询的代码示例:

import pyodbc

# 连接数据库
cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER=your_server_name;DATABASE=your_database_name;UID=your_username;PWD=your_password')

# 创建游标对象
cursor = cnxn.cursor()

# 查询
cursor.execute('SELECT * FROM your_table_name')

# 读取查询结果
for row in cursor.fetchall():
    print(row)

# 关闭连接
cnxn.close()

在以上代码示例中,我们使用execute()方法执行SQL查询,并使用fetchall()方法读取查询结果。最后,我们打印出查询结果。这里我们查询的是your_table_name表的所有记录。

另外,我们还可以使用execute()方法执行其他类型的SQL操作,例如插入、更新和删除记录等。

例如,下面是使用execute()方法插入一条记录的代码示例:

# 插入一条记录
cursor.execute("INSERT INTO your_table_name (column1, column2, column3) VALUES ('value1', 'value2', 'value3')")

# 提交更改
cnxn.commit()

需要注意的是,在执行插入、更新和删除操作时,需要使用commit()方法提交更改。

示例说明

举个例子,假设我们有一个员工信息表employee_info,其中包含员工编号、姓名、年龄和薪资等信息。我们可以使用如下代码查询该表中所有员工的信息:

import pyodbc

# 连接数据库
cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER=your_server_name;DATABASE=your_database_name;UID=your_username;PWD=your_password')

# 创建游标对象
cursor = cnxn.cursor()

# 查询
cursor.execute('SELECT * FROM employee_info')

# 读取查询结果
for row in cursor.fetchall():
    print(row)

# 关闭连接
cnxn.close()

如果我们想要插入一条新的员工记录,可以使用如下代码:

import pyodbc

# 连接数据库
cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER=your_server_name;DATABASE=your_database_name;UID=your_username;PWD=your_password')

# 创建游标对象
cursor = cnxn.cursor()

# 插入一条记录
cursor.execute("INSERT INTO employee_info (id, name, age, salary) VALUES ('1001', '张三', 25, 5000)")

# 提交更改
cnxn.commit()

# 关闭连接
cnxn.close()

以上示例演示了如何使用Python连接并简单操作SQL Server数据库。读者可以根据实际需求学习使用。