首頁 資料庫 mysql教程 关于python和php数据库连接问题_MySQL

关于python和php数据库连接问题_MySQL

Jun 01, 2016 pm 01:13 PM
php資料庫 python 資料庫連線

python

在几天的对完结项目的修正中,涉及到一些对python和php数据库的连接问题的处理。
在其中有关于系统方面的,也有库相关的,在这里做一个小小的总结。

1.python数据库连接
mysql:import MySQLdb
mssql:import pymssql
这里小提一下,pyodbc也是可以连接的,至于有没有pdo的库,偶也不知道。

2.php的数据库连接
mysql:
连接方法海了去了,pdo,odbc,mysql默认连接法子(不需要加扩展,一般用这个)。
mssql:
在这里要分在win下和在linux下了,在win下很是方便:
可以sqlsrv,这个是微软官方提供的连接方式,在大多数dll啥失效后还能用,如:

http://www.php.net/manual/zh/book.sqlsrv.php

鄙人在codeigniter论坛找到一个利用方法,如:

https://github.com/EllisLab/CodeIgniter/tree/develop/system/database/drivers/sqlsrv

下载两个文件sqlsrv_driver.php,sqlsrv_result.php即可。
然后在入口文件包含核心文件之前包含上面两个文件。
配置方法:

http://stackoverflow.com/questions/19460025/how-do-i-connect-codeigniter-to-a-sql-server

PS:这个也是php标准拓展。
在win下也需要处理一系列php高版本后对mssql不再支持的问题,话说在php6后只支持pdo连接了。
在此之前可以用pdo和odbc,或者服务器开启了mssql模块的话,可以直接mssql_connect,但仍要在php.ini里改下extension配置即可。

在linux下:
不想提了,蛋都碎了。
在linux下做mssql连接,很重要的一点就是freetds,这玩意儿linux连接mssql必备。mssql是从sybase衍生出来的,有一些哥们做了一些sybase的linux下的连接库,这些连接库同时也能支持mssql,
我用的时候是0.9吧(0.8也可),在这时配置的版本需要弄成8.0,具体的我就不再详述,多查阅资料大家会恍然的。
安装完freetds后(可以下载安装包安装,也可以yum、apt-get源安装),
在这里提供一个下载链接:http://blog.csdn.net/kunp/article/details/387013

然后就是选择mssql_connect还是pdo还是odbc,暂时找到这几种方法,令人纠结心痛的是这几种方法似乎都要重新编译php,将环境啥配置啥的重新编译进去,由于鄙人找了半天确实没找到他说的php源代码安装目录下ext目录的mssql目录,然后去configure,所以这条路pass掉,其中需要phpize编译的步奏,也pass掉,鄙人perl环境出过问题,执行老出相关错误(明白怎么回事的大牛欢迎吐槽,偶是昏了)。所以意思是php扩展的连接库文件**.so等压根不能生成,也谈不上去php.ini里去改啥扩展配置路径,蛋碎一地。
怎么办呢?基友告诉我个法子,让我不装扩展,直接用php-mssql,鄙人centos6,yum了一下,坑比的没有安装包,直接被丢了一脸的链接:

https://gist.github.com/shf/2052432

通过这个方法我装上了php-mssql(需要代理),然后yum安装了php-odbc,然后,然后木有连上mssql,不知道咋回事,这个问题留着解决,猜测应该是还要做其他配置,完全是基友跟我瞎摸索有木有。。

3.关于mssql开启远程
大家知道如果要让外服务器访问,sqlserver必须开启远程,开启1433,在这里稍稍说下。

http://www.360doc.com/content/13/0525/23/19147_288191810.shtml

这篇文章介绍的比较全,但是偶的1433端口一直没开,telnet xx.xx.xx.xx 1433不上。

怎么办,如:

http://hi.baidu.com/daheshuiman/item/6dad61982dd267895814615d

把1433端口配上启用、活动。
记住sql-server browser必须打开。
在网上有说sqlserver2005 版本0.8以下的需要打补丁才开的了,也就说至少要打上sp3以上的补丁。
PS:在这里提下,我自己用时sql-server browser没有打开,按钮灰色,所以需要要把所有属性勾上活动,所有勾上是,这点特别注意。
开启了后一般就能看的1433能telnet上了。外连时,据网上说,可以直接用ip,还有说需要加sqlserver实例名,偶表示不明觉厉。

附上另两篇参考文章:

http://www.bitsCN.com/database/201304/204867.html

http://wenwen.sogou.com/z/q410734670.htm

最后,偶因为在linux环境下,无法连接mssql,只好退而求其次,连接mysql,但是原来的数据却是放在mssql里的,所以需要将数据转移:

https://github.com/Nick011/MSSQL-to-MySQL/blob/master/convert_db.py

在这里看到,在两个数据库都在开始开启了cursor后,在insert了才commit(),但是注意看最后,每一次循环都要commit一次,
说明连接时只连接一次的。好吧,这个好像弱爆了。。

最后,上面讲的很粗不是本人意愿啊!!!完全是因为实验时老爷机崩溃了,资料引用全部丢失,以上大部分凭记忆拼接,所以缺漏之处,
还请不吝赐教,感谢!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

在PHP和Python之間進行選擇:指南 在PHP和Python之間進行選擇:指南 Apr 18, 2025 am 12:24 AM

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

Python vs. JavaScript:學習曲線和易用性 Python vs. JavaScript:學習曲線和易用性 Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

PHP和Python:深入了解他們的歷史 PHP和Python:深入了解他們的歷史 Apr 18, 2025 am 12:25 AM

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

vs code 可以在 Windows 8 中運行嗎 vs code 可以在 Windows 8 中運行嗎 Apr 15, 2025 pm 07:24 PM

VS Code可以在Windows 8上運行,但體驗可能不佳。首先確保系統已更新到最新補丁,然後下載與系統架構匹配的VS Code安裝包,按照提示安裝。安裝後,注意某些擴展程序可能與Windows 8不兼容,需要尋找替代擴展或在虛擬機中使用更新的Windows系統。安裝必要的擴展,檢查是否正常工作。儘管VS Code在Windows 8上可行,但建議升級到更新的Windows系統以獲得更好的開發體驗和安全保障。

visual studio code 可以用於 python 嗎 visual studio code 可以用於 python 嗎 Apr 15, 2025 pm 08:18 PM

VS Code 可用於編寫 Python,並提供許多功能,使其成為開發 Python 應用程序的理想工具。它允許用戶:安裝 Python 擴展,以獲得代碼補全、語法高亮和調試等功能。使用調試器逐步跟踪代碼,查找和修復錯誤。集成 Git,進行版本控制。使用代碼格式化工具,保持代碼一致性。使用 Linting 工具,提前發現潛在問題。

notepad 怎麼運行python notepad 怎麼運行python Apr 16, 2025 pm 07:33 PM

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。

vscode 擴展是否是惡意的 vscode 擴展是否是惡意的 Apr 15, 2025 pm 07:57 PM

VS Code 擴展存在惡意風險,例如隱藏惡意代碼、利用漏洞、偽裝成合法擴展。識別惡意擴展的方法包括:檢查發布者、閱讀評論、檢查代碼、謹慎安裝。安全措施還包括:安全意識、良好習慣、定期更新和殺毒軟件。

See all articles