Menyelesaikan ralat PyODBC: Sumber data tidak ditemui dan tiada pemacu lalai ditentukan
Apabila menggunakan PyODBC untuk menyambung ke pangkalan data SQL Server, anda mungkin menghadapi ralat berikut:
<code>connection = pyodbc.connect('Driver = {SQL Server};Server=SIWSQL43A\SIMSSPROD43A;' 'Database=CSM_reporting;Trusted_Connection=yes;') pyodbc.Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')</code>
Ralat ini menunjukkan bahawa sumber data yang ditentukan tidak dapat ditemui dan pemacu lalai tidak ditetapkan. Untuk menyelesaikan isu ini, sila ikut langkah berikut:
Nyatakan pemacu ODBC dengan jelas:
PyODBC tidak menyatakan pemacu ODBC tertentu secara lalai. Anda perlu menunjukkan secara jelas pemacu yang anda mahu gunakan dalam rentetan sambungan. Dalam contoh ini, pemandu ialah "ODBC Driver 17 for SQL Server".
<code class="language-python">connection = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};Server=SIWSQL43A\SIMSSPROD43A;' 'Database=CSM_reporting;Trusted_Connection=yes;')</code>
Kemas kini konfigurasi ODBC:
Jika anda memasang berbilang versi ODBC, pastikan versi yang anda mahu gunakan ditetapkan sebagai pemacu lalai. Anda boleh menyemak tetapan ini dalam alat Pentadbir Sumber Data ODBC.
Buka Panel Kawalan, cari "odbc", dan kemudian pilih "Pengurus Sumber Data ODBC (64-bit)". Di bawah tab "System DSN", semak sama ada pemacu ODBC yang betul dipilih sebagai pemacu lalai. Jika tidak, pilih dan klik Tetapkan sebagai Lalai.
Dengan menyatakan pemacu ODBC yang sesuai dan memastikan ia ditetapkan kepada lalai, anda sepatutnya berjaya mewujudkan sambungan ke pangkalan data SQL Server anda menggunakan PyODBC.
Atas ialah kandungan terperinci Mengapakah PyODBC melemparkan ralat 'IM002': 'Nama sumber data tidak ditemui dan tiada pemacu lalai ditentukan'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!