mssql_init
mssqlinit">mssql_init
—- 初始化一个存储过程或一个远程存储过程
说明
resource mssql_init ( string
参数
sp_name:
存储过程的名字,例如 ownew.sp_name or otherdb.owner.sp_name.
link_identifier:
一个 sqlserver 链接定义, 由mssql_connect()返回;
返回值
返回一个 “声明”资源标识符 ,用于随后的 mssql_bind() 和 mssql_execute()调用, 或返回FALSE on errors.
范例
Example #1 mssql_init() exmple
//连接到sqlserver 且 选
数据库
//第一个参数 数据库名称 , 第二个参数是 数据库用户名, 第三个参数是 //密码link=mssqlconnect(‘KALLESPC\SQLEXPRESS′,′sa′,′phpfi′);//创建一个新的statement stmt =mssql_init('StatementTest',link);//在这绑定值使用mssqlexecutemssqlexecute( stmt);//释放资源 mssql_free_statement($stmt);
用户注释:
创建此函数以支持输出参数和返回值语句的执行和 mssql_query 去执行一个存储过程, 只要你不需要检索输出或RETVAL 值,它就很好用.
现在你可以使用这套函数去执行和检索这些值:
mssql_init
mssql_bind
mssql_execute
参数:
- sp_name :存储过程名,它将此字符串传递到本地数据库调用.所以我猜想它支持各种格式(例如 “ownew.sp_name”or “otherdb.owner.sp_name”)
返回值:
一个资源id ,”statement” ,
在 mssql_bind 和 mssql_execute 后续的调用中使用 。
请注意,虽然支持很多本地的MSSQL数据类型,但我认为有些必须转换成其他类型(例如varchar值)。这些不支持的类型是:
SQLMONEY4,SQLMONEY,SQLBIT,SQLDATETIM4,
SQLDATETIME, SQLDECIMAL, SQLNUMERIC,
SQLVARBINARY, SQLBINARY,SQLIMAGE
如果你执行一个存储过程里面的一环 ,为mssql_init设置变量是一个好主意,它以便你不用为相同的存储过程绑定多个参数:
foreach(
inputas sid=> value){stmt =mssql_init(“sp_doSomething”);
mssql_bind(stmt."@sid", sid,SQLINT4,false);
mssql_bind(stmt,”@value”,SQLINT4,false); result =mssql_execute(stmt);unset( stmt) ;// 非常重要}
上一篇: 服务器概心得