php調(diào)用mysql存儲(chǔ)過程和函數(shù)的方法
成都創(chuàng)新互聯(lián)是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷策劃、小程序制作、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十載以來,已經(jīng)為超過千家會(huì)所設(shè)計(jì)各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的超過千家客戶與我們一路同行,見證我們的成長(zhǎng);未來,我們一起分享成功的喜悅。
存儲(chǔ)過程和函數(shù)是MySql5.0剛剛引入的。關(guān)于這方面的操作在PHP里面沒有直接的支持。但是由于Mysql PHP API的設(shè)計(jì),使得我們可以在以前的PHP版本中的mysql php api中支持存儲(chǔ)過程和函數(shù)的調(diào)用。
在php中調(diào)用存儲(chǔ)過程和函數(shù)。
1。調(diào)用存儲(chǔ)過程的方法。
a。如果存儲(chǔ)過程有 IN/INOUT參數(shù),聲明一個(gè)變量,輸入?yún)?shù)給存儲(chǔ)過程,該變量是一對(duì),
一個(gè)php變量(也可以不必,只是沒有php變量時(shí),沒有辦法進(jìn)行動(dòng)態(tài)輸入),一個(gè)Mysql
變量。
b。如果存儲(chǔ)過程有OUT變量,聲明一個(gè)Mysql變量。
mysql變量的聲明比較特殊,必須讓mysql服務(wù)器知道此變量的存在,其實(shí)也就是執(zhí)行一條mysql語句。
入set @mysqlvar=$phpvar ;
c。使用mysql_query()/mysql_db_query()執(zhí)行mysql 變量聲明語句。
mysql_query("set @mysqlvar=$pbpvar");
這樣,在mysql服務(wù)器里面就有一個(gè)變量,@mysqlar。如果是IN參數(shù),那么其值可以由phpar傳入。
d。 如果是存儲(chǔ)過程。
1。執(zhí)行 call procedure()語句。
也就是mysql_query("call proceduer([var1]...)");
2. 如果有返回值,執(zhí)行select @ar,返回執(zhí)行結(jié)果。
mysql_query("select @var)"
接下來的操作就和php執(zhí)行一般的mysql語句一樣了。可以通過mydql_fetch_row()等函數(shù)獲得結(jié)果。
如果時(shí)函數(shù)。 直接執(zhí)行 select function() 就可以了。
$host="localhost";
$user="root";
$password="11212";
$db="samp_db";
$dblink=mysql_connect($host,$user,$password)
or die("can't connect to mysql");
mysql_select_db($db,$dblink)
or die("can't select samp_db");
$res=mysql_query("set @a=$password",$dblink);
$res=mysql_query("call aa(@a)",$dblink);
$res=mysql_query("select @a",$dblink);
$row=mysql_fetch_row($res);
echo $row[0];
修改 mysql 編碼應(yīng)該編輯?my.cnf 文件:
在 [client]和[mysqld]下面都增加 default-character-set=utf8
改完之后 需要重啟 才可以生效
本文記錄了mysql
8.0.16
winx64安裝配置的具體方法,具體內(nèi)容如下
mysql
最新安裝包下載地址
安裝包解壓之后就是這樣了如下:可以隨意放入其他文件夾下
解壓到C盤后會(huì)有一個(gè)文件名為C:\Program
Files\mysql-8.0.16-winx64的文件,點(diǎn)擊進(jìn)入查看該文件夾下的子目錄如下:
windows系統(tǒng)下調(diào)出cmd黑窗口,提示最好用管理員身份打開,
在命令行模式下進(jìn)入剛剛MYSQL的安裝目錄中的子目錄bin,C:\Program
Files\mysql-8.0.16-winx64\bin目錄下,如圖:
然后在C:\Program
Files\mysql-8.0.16-winx64\bin目錄下輸入安裝命令
mysqld
-install,比較簡(jiǎn)單我就不截圖了 ,假如有報(bào)錯(cuò)請(qǐng)用管理員身份打開黑窗口.
執(zhí)行之會(huì)在MYSQL的解壓目錄C:\Program
Files\mysql-8.0.16-winx64下生成一個(gè)data的文件夾,里面有一個(gè)后綴名為.err結(jié)尾的文件,這個(gè)文件中包含著初次使用MYSQL時(shí)生成的一個(gè)臨時(shí)用隨機(jī)密碼。以記事本方式打開這個(gè).err文件你可以找到隨機(jī)密碼,
(root@localhost:
'密碼') ,
還可以
執(zhí)行
mysqld
--initialize
--console 隨機(jī)生成密碼,會(huì)打印到控制臺(tái),找地方存下來
然后配置一下MYSQL的啟動(dòng)文件,在MYSQL的解壓目錄C:\Program
Files\mysql-8.0.16-winx64下新建一個(gè).ini格式文件my.ini,然后以記事本格式打開寫入下面代碼:只復(fù)制粘貼
保存
注意你的路徑要改下
[mysqld]
#
設(shè)置3306端口
port=3306
#
設(shè)置mysql的安裝目錄
basedir=C:\Program
Files\mysql-8.0.16-winx64
#
數(shù)據(jù)庫(kù)的數(shù)據(jù)的存放目錄(這個(gè)Data目錄千萬不要手動(dòng)創(chuàng)建,否則報(bào)錯(cuò))
datadir=C:\Program
Files\mysql-8.0.16-winx64\Data
#
允許最大連接數(shù)
max_connections=200
#
允許連接失敗的次數(shù)。這是為了防止有人從該主機(jī)試圖攻擊數(shù)據(jù)庫(kù)系統(tǒng)
max_connect_errors=10
#
服務(wù)端使用的字符集默認(rèn)為UTF8
character-set-server=utf8
#
創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
#
默認(rèn)使用“mysql_native_password”插件認(rèn)證
default_authentication_plugin=mysql_native_password
[mysql]
#
設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
[client]
#
設(shè)置mysql客戶端連接服務(wù)端時(shí)默認(rèn)使用的端口
port=3306
default-character-set=utf8
然后再bin目錄下輸入下面命令:
mysqld
-install
服務(wù)名稱(自定義,可以用mysql8,
mysql)
啟動(dòng)服務(wù):
net
start
mysql
登陸MySQL:
密碼就是上面的隨機(jī)密碼
mysql
-u
root
-p
1
修改密碼: 1
用不了有用2,兩者選一個(gè)(新版用2才可以)
set
password
for
root@localhost=password('密碼');
2
修改密碼:
alter
user
'root'@'localhost'
identified
by
'密碼';
最后配置環(huán)境變量
精彩專題分享:
mysql不同版本安裝教程
mysql5.7各版本安裝教程
mysql5.6各版本安裝教程
mysql8.0各版本安裝教程
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:Win10下免安裝版MySQL8.0.16的安裝和配置教程圖解mysql
8.0.16
winx64.zip安裝配置方法圖文教程mysql
8.0.16
壓縮包安裝配置方法圖文教程win10下mysql
8.0.16
winx64安裝圖文最新教程mysql
installer
community
8.0.16.0安裝配置圖文教程Windows10下mysql
8.0.16
安裝配置方法圖文教程windows下mysql
8.0.16
安裝配置方法圖文教程CentOS7下mysql
8.0.16
安裝配置方法圖文教程mysql
8.0.16
winx64安裝配置方法圖文教程mysql
8.0.16
Win10
zip版本安裝配置圖文教程