你所说的硬件直接连是个什么概念,是想走tcp协议吗?
不管你使用ADO,ODBC,OLEDB或其它连接数据库的方式,首要条件就是客户端跟服务器有物理上的连接,不太明白你所说的硬件连接是个什么概念。

解决方案 »

  1.   

    硬件就是一个单片机,也就是用硬件设备直接连接SQL Server。
    比较底层,不知有没有人知道。
      

  2.   

    lg75
    用单片机的话,不知里面是否也有操作系统啊?
    如果没有的话,那什么接口也不行吧?
    你该不会是想自已做一个OBDC接口吧?
      

  3.   

    用硬件連SQL Server? 什麼意思?
      

  4.   

    我想作者的意思是,有一个程序在单片机上运行,这个程序还需要访问Sql Server,可是单片机上不能安装SQL Server的驱动程序,就想通知TCP端口直接访问SQL Server。
    我觉得可能行不通.因为你需要做的是数据库客户端的驱动程序。如果可能的话,还是修改你的方案,通过http协议,访问WEB服务器,通过WEB服务器访问数据库,这样你的底层硬件程序编写会简单一点。
      

  5.   

    我想他一定是在SQL的电脑上使用吧?这才是真正的硬件连接(晕死,可能再也起不来了)
      

  6.   

    你可以做一个在PC端一直运行的进程,在检测你的PC跟单片机之间的接口,并把在两者之间传参数(当然这个参数只能是电信号,1或0等),再判断用哪一个查询,跟数据库的连接还是用PC来完成,最后再把查询的结果(翻译成电信号)返回给单片机,并操纵它…………!!这样应该可以的!试试
      

  7.   

    想在单片机上编写程序来访问sqlserver,以前好像没有碰到过这种问题,这个问题有点意思。
    我的意见跟zcflion(土匪)差不多,就是另外再使用一台装有windows操作系统和sqlserver客户端驱动程序的机器,作为你的单片机程序访问数据库的代理。单片机和代理之间可以使用任意你自己决定的协议,传递的可以是参数,也可以是完整的sql语句,代理得到要查询的要求,组合成sql语句,发送给sqlserver服务器,然后把得到的结果整理后,再使用同样的协议返回给单片机程序。这样可以把很多要和sqlserver服务器打交道的工作交给代理PC机,可以简化工作。
      

  8.   

    之所以采用硬件直接连接SQL,
    是因为大家应该发现SQL其实是个异常强大的TCP Server端,我用BCB做的Socket+ADO的中间消息服务器,可开255个线程(恐怖吧),我想每个程序ADO的Connect在SqlServer端应该也是独立线程的,他处理的非常好,连接、中断、异常断线等全自动化,而且255个同时连接对SQL来说是毫不费力,但我的中间消息服务器可有些力不从心,实时性、稳定性差了些。(想想有时NT死机了,SQL还照样工作)
    所以我想到了用硬件直接通过TCP消息“连接”SQLServer,也就是"硬件固化的ODBC"或"硬件固化的ADO"的简化版,只要完成connect\insert即可,我们调用ODBC或ADO其实不就是通过1433发TCP报文吗?
    我就是想知道ODBC、ADO与SQLServer通讯的几个关键报文格式。
    在SQLServer的《事件查探器》程序中可以看到一些信息,但是那是经过程序处理过的,看不到实际的通讯报文,不知那位可以提供好用的,监听指定端口的TCP监听器程序。
      

  9.   


    这个想法很有创意啊,监听指定端口的TCP监听器程序我只知道有个sniffer,你可以试试.
    但是我还有一个疑问,你的单片机上可以跑tcp吗,我理解的单片机好像是通过in 和 out 指令来处理串行端口,如果装上网卡,那岂不还得有套程序来支持封装IP包吗?
      

  10.   

    tcp通讯我已经完全解决,主要是sql的连接问题还没解决,谢谢蓝色力量.
      

  11.   

    在SQL端做个和单片机通讯的接口程序,由他来负责和SQL SERVER连接.做起来不难.