PHP mssql_init('mydb')失败。尝试从PHP调用平凡的存储过程时遇到问题
有没有办法打开PHP/MySQL 5的驱动程序日志记录?是否有一个日志显示内部正在发生的事情。。。像所有数据库活动一样?低级错误 我正在尝试获取一个普通的PHP页面来调用Windows7上一个普通的存储过程。当mssql_初始化失败时,mysql_error不会返回任何错误消息 考虑到这可能是权限问题,我创建了一个新用户,得到了相同的结果:PHP mssql_init('mydb')失败。尝试从PHP调用平凡的存储过程时遇到问题,php,mysql,Php,Mysql,有没有办法打开PHP/MySQL 5的驱动程序日志记录?是否有一个日志显示内部正在发生的事情。。。像所有数据库活动一样?低级错误 我正在尝试获取一个普通的PHP页面来调用Windows7上一个普通的存储过程。当mssql_初始化失败时,mysql_error不会返回任何错误消息 考虑到这可能是权限问题,我创建了一个新用户,得到了相同的结果: CREATE USER 'user1'@'localhost' IDENTIFIED BY 'pass1'; GRANT ALL ON *.* TO 'us
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'pass1';
GRANT ALL ON *.* TO 'user1'@'localhost';
代码如下:
create table trace (
trace varchar(50) not null,
datet datetime not null
);
drop procedure if exists mark;
delimiter !!
create procedure mark()
begin
insert into trace (trace,datet) values ('mark',now());
end; !!
delimiter ;
我可以从MySQL Workbench调用SP:
call mark();
以下是PHP页面:
<?php
$connection = mysql_connect('localhost', 'user1', 'pass1');
if (!$connection) {
die('Could not connect: ' . mysql_error());
}
$sel = mysql_select_db('tw');
if (!$sel) {
die('Could not select_db: ' . mysql_error());
}
//$stmt = mssql_init('mark', $connection);
//$stmt = mssql_init('mark', $sel);
$stmt = mssql_init('mark');
if (!$stmt) {
die('Could not init: ' . mysql_error());
}
$result = mssql_execute($stmt);
if (!$result) {
die('Could not execute: ' . mysql_error());
}
mysql_free_result($result);
mssql_free_statement($stmt);
mysql_close($connection);
printf("DONE<br />");
?>
其他演示insert、*select、*等的概念验证页面工作正常。就是不能从网页上运行愚蠢的存储过程
页面输出仅如下所示:
无法初始化:
由于$link变量未定义,因此没有太大帮助,并且似乎有输入错误。您正在使用mssql_init Note MS SQL在My SQL上执行存储过程
显然,mssql_init函数找不到您的Microsoft SQL Server连接,因为您没有连接。对于mysql连接,您应该只使用mysql_uu函数
MySQL没有调用存储过程的特殊函数。mysql\u查询“呼叫标记”将正常工作。我不明白。。。你同时使用mysql和mssql吗?天哪!我需要更多的睡眠和/或咖啡因。很抱歉浪费你的时间。谢谢