Mysql入门系列:Perl DBI基础(2)
2006-12-31 10:49:46 来源:WEB开发网核心提示: 在查询运行时,允许在查询字符串中用占位符代替这些值,Mysql入门系列:Perl DBI基础(2)(10),换句话说,可以参数化这个查询的“输入”,则其缺省为UNIX 的登录名称,在Windows 下,在提取行而不必将值赋给变量时,DBI 也提供一个称为参数约束的输
在查询运行时,允许在查询字符串中用占位符代替这些值。换句话说,可以参数化这个查询的“输入”。在提取行而不必将值赋给变量时,DBI 也提供一个称为参数约束的输出操作,允许通过检索自动进入这些变量的列值使“输出”参数化。
假设有一个查询,检索member 表中的成员姓名。可以告诉DBI 将选定列的值赋给Perl变量。在提取行时,变量利用相应的列值自动进行更新。下面是一个例子,说明如何将这些列约束到变量上,然后在提取循环中访问它们:
bind_col( ) 的每个调用都应该指定一个列号和一个希望与该列相联的变量的引用。列号从1开始。bind_col( ) 应该在execute( ) 之后调用。
还有一种选择,就是单独调用bind_col( ),可以在bind_columns( ) 的单个调用中传递全部变量引用:
指定连接参数
建立服务器的连接的最直接的方法为,调用connect( ) 方法时指定所有连接参数:
如果遗漏连接参数,则DBI 做下面的事情:
如果未定义数据源或未定义空字符串,则使用DBI_DSN 环境变量。如果未定义用户名和口令,则使用DBI_USER 和DBI _ PASS 环境变量(但如果它们为空字符串则不使用)。在Windows 下,如果未定义用户名,则使用user 变量。
如果遗漏了主机名,其缺省值为localhost。
如果将用户名指定为undef 或空字符串,则其缺省为UNIX 的登录名称。在Windows 下,用户名缺省为ODBC。
更多精彩
赞助商链接