在启动SQL各种服务的时候弹出错误提示:请求失败或服务器未及时响应.....,该如何解决呢?
在  ADO.NET中编写的SQL语句我经常碰到WHERE 后如:WHERE roomType='"+count+"'这样的写法
正常的SQL SERVER2005中写法都是如:WHERE roomType=@count,或者直接给字符串常量写法为
WHERE roomType='good',但是如上在ADO.NET的写法---('"+count+"')该如何理解呢?我一直都是把
"+count+"看做一个字符串整体,这样理解对吗?
还有加通配符 如:'%"+count+"%',写那么多符号,我都是把"+count+"理解为一个字符串,这样对吗?

解决方案 »

  1.   

    可以按你的那种理解,但是直接写成WHERE roomType='"+count+"'的形式的话,会有SQL注入的危险,因为count本身是不限定为一个字符串的,它可以将count作为SQL语句的一部分,你在count中传递一段完整的SQL语句都没有问题。
      

  2.   

    修复看看
    http://topic.csdn.net/u/20070627/19/137d376a-979d-4295-9185-c34fb2e7102d.html
      

  3.   

    我的count是一个字符串变量,这样能提高安全性?按照1楼说法是危险的
      

  4.   

    我的MSSQLSERVER服务器已经无法启动了,所以无法进入SQL SERVER 2005写代码了
    我之前只是把我C盘的临时文件夹给清了一下,因该不会是这个缘故吧?
      

  5.   

    MSSQLSERVER服务无法启动了,当然会出现“请求失败或服务器未及时响应”错误,先把数据库文件和日志文件copy出来吧,然后再想办法把sql server修复或者重装。
      

  6.   

    不会有关系,不过会与删除用户有关系,就看你是否删除过系统用户了。另外建议直接打开Windows的事件查看器,查看它记录的错误详细信息,看了那个才知道真正无法启动的原因。