標籤:bubuko str 四種 data setting screen http 直接 ons
Django——串連sql server資料庫 *在此註明,本人使用的是python3.5和Django2.0.4
sql server是微軟出的一款閉源的可運行於windows和linux平台上的關係型資料庫。由於其閉源的特性,所以較少有公司使用,但是比較神奇的是,我所在的公司和我幾個朋友所在的公司業務都是以爬蟲為主,都是以sql server作為主要的資料庫在使用。
一、打包
如果你是使用Django的老手應該知道Django預設不支援sql server;如果你剛開始接觸Django,那麼你應該知道Django預設支援四種資料庫:postgresql、mysql、oracle、sqlite。以上四個資料庫不需要直接進行過多的操作,只需要你修改項目中的settings.py檔案中的DATABASE就可以了。
但是使用sql server,則需要自己再匯入一些東西。
中所涉及到的包是我自己打進去的全部可以已通過"pip install XXX"安裝,不需要在Django檔案中匯入。其中特別需要注意的是django-pyodbc-azure是一定要裝的,沒有它直接就崩了。
二、代碼
將上一步完成以後就只需要修改你的項目中的settings.py檔案就可以了。
1 DATABASES = { 2 ‘default‘: { 3 ‘NAME‘: ‘screen‘, 4 ‘ENGINE‘: ‘sql_server.pyodbc‘, 5 ‘HOST‘: ‘127.0.0.1‘, 6 ‘PORT‘: ‘1433‘, 7 ‘USER‘: ‘user‘, 8 ‘PASSWORD‘: ‘password‘, 9 ‘OPTIONS‘:{10 ‘driver‘:‘SQL Server Native Client 10.0‘,11 }12 }13 }
在這裡要注意幾點:
1.‘ENGINE‘這個索引值對是固定寫法(好像是要pip install pyodbc以後才會生效,時間有點久,有點記不清了)
2.sql server的預設連接埠號碼是1433,但是可能有些公司會改連接埠號碼,大家用之前自己最好查一查這個連接埠是不是被sql server佔用了
3.在串連預設資料庫的時候很多人都沒有寫過‘OPTIONS‘這個東西,我一開始也沒有寫,結果怎麼著都連不上。之後上網查了查,很多人說在odbc裡調資料庫的東西引擎(公司用的windows做開發系統,勿噴……)。結果加進去還是不行,最後發現是‘OPTIONS‘沒有寫,寫完之後所有問題都解決了。
這個也是很久之前做的事,剛閑下來著手整理,所以有些東西可能有些遺漏。如果有誰看到這篇文章,發現了一些錯誤或者遺漏的部分請留言,我會及時改正。謝謝!希望這篇文章能協助到需要那些協助的朋友!
Django——串連sql server資料庫