首页 > php与数据库

Sql Server全文搜索中文出错的问题

解决中文字符出错问题:
方法一:
把文件复制到...Microsoft SQL ServerMSSQLFTDATASQLServerConfig
目录下(该路径为全文目录路径,可以全文目录属性中查看)
方法二:
编辑...Microsoft SQL ServerMSSQLFTDATASQLServerConfig目录下的
noise.chs文件,清空文档,输入'@’(其他的偏僻符号也可以)
最后,重新进行全文完全填充!

阅读全文

不使用OCI8接口如何连接PHP和Oracle

随着网站规模的扩大,MySql显然不能满足需求,在许多网站都
采用大型数据库Oracle的情况下,如何使用PHP来访问Oracle变的越发重要了。
我从我编写的一个简单iERP系统谈我自己是如何做的,在PHP官方手册里也有说明。
一般情况下或者说大多数人都是用Oracle8 Call-Interface(OCI8)来连接数据库,
我这里介绍不使用OCI8接口而直接使用PHP的Oracle函数来连接数据库并处理数据。

注重:
php.ini配置中要去掉 ;extension=php_oracle.dll 前的分号即
extension=php_oracle.dll

1,连接数据库

使用ora_logon()或者ora_plogon()来连接上数据库
ora_plogon功能与ora_logon类似,只不过ora_plogon开启与 Oracle 的长期连结
直至web服务停止

$handle = ora_plogon("system@localhost", "manager") or die;
"system@localhost" 其中localhost是oracle SID 名称,system是用户名称,manager是用户密码

2,打开游标
$cursor = ora_open($handle);

3,分析语法并执行指令

阅读全文

PHP 与 数据库 ODBC

PHP的数据库的ODBC

的ODBC是一种应用编程接口( API ) ,允许您连接到一个数据源(如MS Access资料库) 。


-------------------------------------------------- ------------------------------

创建一个ODBC连接
由于ODBC连接,可以连接到任何数据库,在任何电脑上,在您的网络,只要一个ODBC连接可用。

以下是如何创建ODBC连接到MS Access资料库:

打开管理工具图标在您的控制面板。
双击数据源( ODBC )图标内。
选择系统DSN标签。
点击添加系统DSN标签。
选择的Microsoft Access驱动程序。单击完成。
在接下来的画面中,按一下选择找到数据库。
给数据库的数据源名称( DSN ) 。
单击确定。
请注意,此配置需要做的计算机上您的网站上的位置。如果您正在运行Internet信息服务器( IIS )在您自己的电脑,上面的指示,将工作,但如果您的网站位于远程服务器上,你必须要有实际接触到该服务器,或要求您的网页主机,以向建立一个DSN的供您使用。


-------------------------------------------------- ------------------------------

连接到一个ODBC
该odbc_connect ( )函数是用来连接到ODBC数据源。该函数四个参数:数据源名称,用户名,密码和一个可选的游标类型。

该odbc_exec ( )函数是用来执行SQL语句。

例如
下面的例子创建了一个连接的DSN所谓北风,没有用户名和密码没有。然后它创建了一个数据库并执行它:

阅读全文

Warning: mssql_query() [function.mssql-query]:

Warning: mssql_query() [function.mssql-query]: message: 不能用 DB-Library(如 ISQL)或 ODBC 3.7 或更早版本将 ntext 数据或仅使用 Unicode 排序规则的 Unicode 数据发送到客户端。 (severity 16) in F:myweblzljcn.php on line 21

Warning: mssql_query() [function.mssql-query]: Query failed in F:myweblzljcn.php on line 21

阅读全文

用PHP调用数据库的存贮过程

大家知道,存储过程是在服务器端的一个脚本程序,执行起来速度很快,但它也有一个缺点,就是依靠与一个固定数据库,移植性不好!
我的上回文章,提到了用com组件是可以访问ado以及相关的组件,无论是自己建的还是系统带的,都可以扩展系统的功能,但现在php不支持dcom/com ,但相信它的下一个版本应该是支持的。
不说这么多了,我们马上试一下吧。

下面是我的一个简单的存贮过程
CREATE PROCEDURE [sp_mystoreprocedure] AS
select companyname, contactname, city from customers

其实,还可以写比较复杂的,可惜我对此研究不深,只好取简单了!

下面是我的php文件
<?
define ("OLEDB_CONNECTION_STRING",
"Provider=SQLOLEDB; Data Source=zzb; Initial Catalog=Northwind; User ID=sa; Password=");
$dbc = new COM("ADODB.Connection");
$dbc->Open(OLEDB_CONNECTION_STRING);
$command = "sp_mystoreprocedure";
$rs = $dbc->Execute($command); // Recordset
$i = 0;

echo '<table cellSpacing="1" cellPadding="3" width="600" align="center" bgColor="#000000" border="0">
<tr vAlign="bottom" bgColor="#9999cc">
<th>Directive</th>
<th>Local Value</th>
<th>Master Value</th>
</tr>';

while (!$rs->EOF) {
$i = 1;
$fld0 = $rs->Fields(0);
$fld1 = $rs->Fields(1);
$fld2 = $rs->Fields(2);
print '<tr vAlign="baseline" bgColor="#cccccc">
<td bgColor="#ccccff"><b>';
print $fld0->value;
print '</b><br></td>
<td align="middle">';
print $fld1->value;
print '</td><td align="middle">';
print $fld2->value;
print '</td></tr>';

$rs->MoveNext();
}
print '</TABLE>';

$rs->Close();
?>

注重的是,你的服务器必须打开!另外,就是不能写错存贮过程的名称。否则会出项致命的错误,而且,你根本就不知道错误在那里,这就是php文件对错误处理的不好之处,但相信它以后是会改进的。

我学php需然有很长时间了,但发现要真正用好它,不那么轻易,但它确实也超出了我的想象,有些东西真的很奇妙,真是,不用不知道,一用真奇妙!

阅读全文