1、用 mysql_connect 的方法,PHP7會報致命錯誤
成都創(chuàng)新互聯(lián)公司專注于洪洞網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供洪洞營銷型網(wǎng)站建設(shè),洪洞網(wǎng)站制作、洪洞網(wǎng)頁設(shè)計、洪洞網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)公司服務(wù),打造洪洞網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供洪洞網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
$conn= mysql_connect('localhost','xueyanxiang','xueyanxiang');
Fatal error : Uncaught Error: Call to undefined function mysql_connect() in /Users/xueyanxiang/work/test/xue.php:31 Stack trace: #0 /Users/xueyanxiang/work/test/xue.php(119): xue-run() #1 {main} thrown in? /Users/xueyanxiang/work/test/xue.php ?on line? 31
原因是:
PHP5中使用mysql_connect()函數(shù)進(jìn)行連接,但實(shí)際上,PHP5.5開始,MySQL就不推薦使用了,屬于廢棄函數(shù)
PHP7中貌似已經(jīng)徹底不支持了,根據(jù)官網(wǎng)說明,取而代之的是如下兩個:
本擴(kuò)展自 PHP 5.5.0 起已廢棄,并在將來會被移除。應(yīng)使用?MySQLi?或?PDO_MySQL?擴(kuò)展來替換之。參見?MySQL:選擇
API?指南以及相關(guān) FAQ?以獲取更多信息。用以替代本函數(shù)的有:
mysqli_connect()
PDO::__construct()
使用時,不要在使用mysql_connect了,可以換用mysqli_connect(),用法基本類似吧,據(jù)說是面向?qū)ο蟮膸臁?/p>
php.ini中,也只有extension=php_mysqli.dll,而不再有extension=php_mysql.dll這個拓展了。
2、可以使用mysqli,對象化,方法名與被廢棄的類似
$conn= mysqli_connect('localhost','xueyanxiang','xueyanxiang');
3、PDO工具,推薦使用
$dbh= "mysql:host=localhost;dbname=test";
$db= new PDO($dbh,'xueyanxiang','xueyanxiang');
$objQuery= $db-query("select * from user;");
$res= $objQuery-fetchAll(PDO::FETCH_ASSOC);
不填寫參數(shù)的話,默認(rèn)是關(guān)聯(lián)和索引都有,如下圖
1、通過ADO連接MySql數(shù)據(jù)庫,首先得安裝MyODBC服務(wù)器程序。
MyODBC版本要和MySql的版本對應(yīng)上,否則會連接不上數(shù)據(jù)庫。我用的版本分別是mysql-5.1.48-win32.msi和mysql-connector-odbc-5.1.5-win32.msi。
安裝好后,點(diǎn)擊開始菜單-設(shè)置-控制面板-管理工具-數(shù)據(jù)源(ODBC)-用戶DSN-添加-選擇MySQL ODBC 5.1 Driver。如下圖:
然后雙擊MySQL ODBC 5.1 Driver進(jìn)行配置。配置好可以點(diǎn)Test進(jìn)行下測試(如下圖),如果能連上會彈出connection successful對話框。
1.連接數(shù)據(jù)庫:
SqlConnection cnn = new SqlConnection();//實(shí)例化一個連接
cnn.ConnectionString = "Data Source = datasource; uid = username; pwd =password; database = database_name";//設(shè)置連接字符串
cnn.Open();//打開數(shù)據(jù)庫連接
2.讓查詢在datagridview中顯示
SqlDataAdapter da = new SqlDataAdapter();//實(shí)例化sqldataadpter
SqlCommand cmd1 = new SqlCommand("select * from 表 , cnn);//sql語句
da.SelectCommand = cmd1;//設(shè)置為已實(shí)例化SqlDataAdapter的查詢命令
DataSet ds1 = new DataSet();//實(shí)例化dataset
da.Fill(ds1);//把數(shù)據(jù)填充到dataset
datagridview1.datasource = ds1.tables[0];//將數(shù)據(jù)集綁定datagridview,完成顯示
說明:dataset是一個數(shù)據(jù)庫在內(nèi)存中的映像,包括數(shù)據(jù)庫中的表,視圖,關(guān)系等;sqldataadapter是C#的數(shù)據(jù)庫適配器,需要通過它來查詢數(shù)據(jù)庫,要通過SqlDataAdapter.SelectCommand來設(shè)置查詢語句,查詢后填充到dataset中,再把dataset和datagridview綁定就ok了,以上代碼寫在button事件中就可以。