Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

pyodbc không thể kết nối với cơ sở dữ liệu

Hóa ra, cơ sở dữ liệu được đề cập đã được đính kèm với phiên bản mặc định của SQL Server trên máy cục bộ, vì vậy tất cả những gì cần thiết để kết nối là

import pyodbc
conn_str = (
    r"Driver={SQL Server Native Client 11.0};"
    r"Server=(local);"
    r"Database=online_banking;"
    r"Trusted_Connection=yes;"
    )
conn = pyodbc.connect(conn_str)

Có hai điểm nhầm lẫn chính:

H:Tên của "phiên bản mặc định" của SQL Server là gì?

A:Nó không có.

Khi đề cập đến một phiên bản SQL Server theo tên, một phiên bản mặc định chỉ đơn giản là tên của máy, trong khi một phiên bản được đặt tên được xác định bởi MachineName\InstanceName . Vì vậy, trên máy chủ có tên PANORAMA

  • Nếu chúng tôi cài đặt một "phiên bản mặc định" của SQL Server, chúng tôi gọi nó là PANORAMA .
  • Nếu chúng tôi cài đặt "phiên bản được đặt tên" có tên "SQLEXPRESS", chúng tôi gọi nó là PANORAMA\SQLEXPRESS .

Nếu chúng tôi đang đề cập đến một phiên bản máy chủ SQL trên máy cục bộ, chúng tôi có thể sử dụng (local) thay vì PANORAMA .

H:(local) và (localdb) có nghĩa giống nhau không?

A:KHÔNG.

(local)(local)\InstanceName đề cập đến các phiên bản dựa trên máy chủ "thực" của SQL Server. Đây là những phiên bản đã có từ khi SQL Server được phát hành lần đầu tiên. Chúng chạy như một dịch vụ và có thể chấp nhận các kết nối mạng và thực hiện tất cả những điều chúng tôi mong đợi một máy chủ cơ sở dữ liệu thực hiện.

(localdb)(localdb)\InstanceName tham chiếu - với (localdb) thường được viết hoa là (LocalDB) để rõ ràng - được sử dụng để kết nối với các phiên bản "SQL Server LocalDB". Đây là các phiên bản SQL Server cục bộ tạm thời chủ yếu dành cho các nhà phát triển. Để biết chi tiết, hãy xem bài đăng trên blog MSDN sau:

SQL Express v LocalDB v SQL Compact Edition



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dấu phân tách hàng nghìn trong SQL Server 2008 cho một cột

  2. IO STATISTICS trong SQL Server là gì?

  3. Làm cách nào để xóa 1000 hàng trên cùng khỏi bảng bằng Sql Server 2008?

  4. Cách nối chuỗi và giá trị NULL trong SQL Server

  5. SQL Server SELECT trong đó bất kỳ cột nào chứa 'x'