mssql_init

mssqlinit”>mssql_init

—- 初始化一个存储过程或一个远程存储过程

说明

resource mssql_init ( string spname[,resource link_identifier ] )

参数

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”)

connection id :mssql_connect或类似获得连接资源,如果不提供,它将会像其他类似的mssql_ * 功能:使用默认打开的连接或创建一个新的。

返回值:
一个资源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) ;// 非常重要

}

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐