CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  PHP

数据库查询问题(sql server2000)

楼主carpenter01(木匠)2004-12-02 14:44:30 在 Web 开发 / PHP 提问

 
  数据库连接问题(sql   server2000)  
   
  服务器是win2000,apache1.3.**  
  连接是这么写的。  
  $cnn=mssql_connect($server,$username,$password);  
  使用这句话进行查询的。  
  $result   =   mssql_query($sql,$cnn);  
  $sql中肯定没有错误,因为有时他会成功。  
  不过有时也会失败。  
   
  我想是查询的时间比较长才会造成查询失败的。查询时间应该2分钟以上。  
   
  更改哪些配置可以解决这个问题?  
   
  先谢谢各位了。 问题点数:40、回复次数:15Top

1 楼carpenter01(木匠)回复于 2004-12-02 14:51:44 得分 0

顶  
   
  大哥们,帮帮忙呀,急用啊Top

2 楼zhangzongshan207(自我一生)回复于 2004-12-02 15:17:33 得分 10

PHP没有用过,帮你顶Top

3 楼chf99cn('不到桥头不死心')回复于 2004-12-02 15:27:50 得分 10

用mssql_select_db选择一个数据库,试一下!Top

4 楼carpenter01(木匠)回复于 2004-12-02 16:10:36 得分 0

to   chf99cn('不到桥头不死心')    
  mssql_select_db  
  这个函数我用了,忘写出来了。  
   
  我的意思是,查询肯定没问题。  
  是连接时间的问题,我不知道在哪改。  
   
  谢谢各位的帮助Top

5 楼wxq4100798(aa)回复于 2004-12-02 16:47:57 得分 0

出错提示是什么?贴出来Top

6 楼jaspon(蒲公英)回复于 2004-12-02 16:48:50 得分 10

//连接数据库    
  $db_id   =   mssql_connect($servername,$dbuser,$dbpasswd)   or   die("无法连接数据库服务器!");    
  $db   =   mssql_select_db("数据库名",$db_id)   or   die("无法连接数据库!");    
  $query   =   "select   *   from   table";  
  $result   =   mssql_query($query);  
  ……  
  mssql_free_result($result);  
  mssql_close($db_id);Top

7 楼jaspon(蒲公英)回复于 2004-12-02 16:51:38 得分 0

每次操作完成要释放资源  
  mssql_free_result($result);  
  mssql_free_result($rresult);  
  mssql_close($db_id);  
  $db_id   =   null;  
  $db   =   null;  
  否则在连接时间较长时会造成无法从数据库获取数据,此时页面显示就是空,但是不报错。Top

8 楼carpenter01(木匠)回复于 2004-12-03 08:45:10 得分 0

在程序运行70秒左右的时候出现如下错误  
  Warning:   mssql_query()   [function.mssql-query]:   Query   failed   in   f:\apache\htdocs\check_3\report_view.php   on   line   356  
   
  355:$result   =   mssql_query($sql,$cnn);  
  356:$n=mssql_num_rows($result);  
   
  有时会成功,但执行时间都在40秒左右。Top

9 楼carpenter01(木匠)回复于 2004-12-03 08:59:19 得分 0

在VB中连接数据库时间太长也会出错  
  但是可以加上这句  
  cnn.CommandTimeout   =   1200  
  我就想知道在php里怎样做。Top

10 楼carpenter01(木匠)回复于 2004-12-03 09:28:33 得分 0

我仔细掐了时间。  
   
  一超过60秒,就会报错。Top

11 楼jxflll(峰)回复于 2004-12-03 13:41:01 得分 10

修改php.ini文件。  
   
  搜索max_execution_time 把这个改大一些。单位是秒。Top

12 楼mikespook(CSDN == 吹死大牛)回复于 2004-12-03 13:43:45 得分 0

优化你的查询语句~~~你有多少数据,做怎样的查询或统计?2分钟,这个时间确实很长~~~Top

13 楼raid79(山鹰)回复于 2004-12-03 13:54:08 得分 0

我也是用php+mssql的,一直很正常,php.ini和mssql也是用默认的参数,没有做过特别的改动  
  不知道你为什么有时候能成功有时候又不能成功Top

14 楼carpenter01(木匠)回复于 2004-12-03 14:38:19 得分 0

问题解决了  
  在“php.ini”中的  
  [MSSQL]  
  项中加一行(以秒为单位)  
  mssql.timeout   =   100(原来没有这行)  
  虽然是我自己找到,但还是谢谢大家对我的热心帮助。Top

15 楼twt326(天地小子)回复于 2004-12-03 16:04:56 得分 0

另外还有一个方法的,也是改PHP.INI中的连接超时改为100也是可行的。Top

相关问题

  • 如何查询SQL Server数据库某表中没有记录?
  • delphi中对sql server数据库的查询(应该很简单)
  • 在SQL SERVER中查询ORACLE的数据库表------------急!!
  • ADO执行SQL查询问题(查询对象为SQL Server数据库表)
  • 关于sql server数据库?
  • SQL Server数据库减肥
  • 连接数据库sql server
  • 发布SQL Server数据库
  • java连SQL Server数据库
  • SQL SERVER建数据库

关键词

  • sql server2000
  • mssql
  • 数据库
  • 查询
  • 连接
  • db
  • php
  • sql
  • server
  • cnn

得分解答快速导航

  • 帖主:carpenter01
  • zhangzongshan207
  • chf99cn
  • jaspon
  • jxflll

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo