sql sever数据库连接UID
时间: 2025-06-30 17:13:35 浏览: 1
在 SQL Server 数据库连接中使用 UID 进行身份验证,意味着采用的是 SQL Server 自身的账号密码认证机制,而不是 Windows 身份验证。这种方式需要提供用户名(UID)和密码(PWD),并通过指定合适的驱动程序来实现连接。
以下是一个完整的示例连接字符串:
```python
conn_str = 'DRIVER={ODBC Driver 17 for SQL Server};SERVER=your_server_name;DATABASE=your_database_name;UID=your_username;PWD=your_password'
```
### 关键参数说明:
- **DRIVER**:指定用于连接的 ODBC 驱动程序。推荐使用 `ODBC Driver 17 for SQL Server` 或更高版本以获得更好的兼容性和性能[^1]。
- **SERVER**:SQL Server 的主机名或 IP 地址。如果连接本地实例,可以使用 `(local)` 或 `.`。
- **DATABASE**:要连接的目标数据库名称。
- **UID**:SQL Server 登录用户名。
- **PWD**:与 UID 对应的密码。
### Python 示例代码
使用 `pyodbc` 库连接 SQL Server 数据库的完整示例如下:
```python
import pyodbc
# 定义连接字符串
conn_str = (
'DRIVER={ODBC Driver 17 for SQL Server};'
'SERVER=your_server_name;'
'DATABASE=your_database_name;'
'UID=your_username;'
'PWD=your_password'
)
# 建立连接
try:
conn = pyodbc.connect(conn_str)
print("连接成功!")
# 创建游标对象
cursor = conn.cursor()
# 执行查询语句
cursor.execute("SELECT @@VERSION AS SQL_Server_Version")
# 获取结果
row = cursor.fetchone()
while row:
print(row.SQL_Server_Version)
row = cursor.fetchone()
except Exception as e:
print(f"连接失败: {e}")
finally:
# 关闭连接
if 'conn' in locals() and conn:
conn.close()
print("连接已关闭。")
```
### 注意事项
1. 确保目标 SQL Server 实例允许远程连接,并且防火墙规则开放了相应的端口(默认为 `1433`)。
2. SQL Server 必须启用混合模式身份验证(Mixed Mode Authentication),即同时支持 Windows 和 SQL Server 身份验证方式[^1]。
3. 如果使用的是命名实例,服务器名称格式应为 `server_name\instance_name`。
4. 在生产环境中,建议将敏感信息如密码存储于安全配置文件或环境变量中,而非硬编码在代码中。
---
阅读全文
相关推荐


















