2013-06-30 84 views
0

我想連接到MySQL使用Python 2.7。我的代碼去如下mysqldb蟒蛇未知數據庫

DB_HOST = '127.0.0.1' #'localhost' 
DB_USER = 'root' 
DB_PASSWORD = 'password' 
DB_SCHEMA = 'database_one' 
DB_TBL_PREFIX = 'database_' 

import MySQLdB 

db = MySQLdb.connect(host=DB_HOST, user=DB_USER, passwd=DB_PASSWORD, db='$$$$') 

在我的服務器(本地主機),我有我的數據庫(DB_SCHEMA)這個數據庫中我有一些表(DB_TBL_PREFIX.'table_name')。如果我想在數據庫中選擇其中一個表,那麼$$$$的正確值是什麼?我沒有問題使用PHP,但是這個Python讓我瘋狂。

回答

0

如果你寫$$$$,你會想DB_SCHEMA

db = MySQLdb.connect(host=DB_HOST, user=DB_USER, passwd=DB_PASSWORD, db=DB_SCHEMA) 

之後,你可能會發現http://www.tutorialspoint.com/python/python_database_access.htm有助於教你正確的語法。

然而,從長遠來看,我建議使用已經存在的庫,如優秀的SQLAlchemy,而不是手工創建SQL語句。這是一種看待事物的非常不同的方式,尤其是如果你來自PHP背景的時候,但是你不會相信從長遠來看它會爲你節省多少痛苦。手工編寫SQL將迫使您擔心SQL注入,正確轉義參數以及各種相關問題,但是當您使用像SQLAlchemy這樣的庫時,所有這些都將爲您完成 - 而且您可能無法做到甚至想象現在。

說真的,投入時間學習使用SQLAlchemy將花費時間。

+0

感謝您的答案,但我如何選擇數據庫內的正確表? – user2535881

+0

...在我的查詢中 – user2535881

+0

創建連接時不需要選擇表格。你用'db.connect(your_parameters)'連接到數據庫,然後用'db.cursor()'創建一個遊標,然後在遊標上運行SQL語句。這一切都在我發佈的鏈接中:搜索「閱讀操作」。 – rmunn