ubuntu 安装freetds

35 篇文章 0 订阅

大家可能会说,安装freetds的博客到处都是,为何还要多此一举呢,主要是因为笔者在安装的过程中遇到了一些问题,这些问题,没有解决,大家都解决了,或者大家都没有遇到笔者的问题吧,或许,所以,在这里,我写下,自己的困惑

sudo cp -r /home/john/Desktop/freetds-0.91/ /usr/soft/
我把freetds的源代码复制到/usr/soft下,进入到/usr/soft/freetds-0.91尽心安装,可总是出错

txt2man not found 
all-recivev error 127

等等,我的解决办法是将源代码复制在桌面上,然后进行安装,提示成功


这里我们修改配置文件/etc/ld.so.conf文件为

include /etc/ld.so.conf.d/*.conf

/usr/local/freetds/lib  (这是新添加的)

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
 
#include </usr/local/freetds/include/sybfront.h>
#include </usr/local/freetds/include/sybdb.h>
 
 
 
int main(void)
{
       char szUsername[32] = "sa";
       char szPassword[32] = "rjgc214team";
       char szDBName[32] = "IKCExamples";
       char szServer[32] = "115.24.160.253";//形式如10.10.11.12:1111
 
       //初始化db-library
       dbinit();
       //连接数据库
       LOGINREC *loginrec = dblogin();
       DBSETLUSER(loginrec, szUsername);      
       DBSETLPWD(loginrec, szPassword);
       DBPROCESS *dbprocess = dbopen(loginrec, szServer);
       if(dbprocess == FAIL)
       {
              printf("ASB>>      Conect MS SQL SERVER fail       \n");
              return 0;
       }
       printf("ASB>>      ConnectEMS conect MS SQL SERVER success\n");
      
       if(dbuse(dbprocess, szDBName) == FAIL)
       {
              printf("ASB>>      Open database name fail\n");
       }
       else
       {
              printf("ASB>>      Open database name success\n");
       }
      
       //查询数据库
       /*dbcmd(dbprocess, "select ID,BeginTime,Description from Alarms");
       if(dbsqlexec(dbprocess) == FAIL)
       {
              printf("ASB>>      Query Alarms table error\n");    
       }
      
       DBINT result_code;
       char szID[1024];
       char szBeginTime[1024];
       char szDescription[1024];
       int rows = 0;
       while ((result_code = dbresults(dbprocess)) != NO_MORE_RESULTS){
              if (result_code == SUCCEED){
                     dbbind(dbprocess, 1, CHARBIND, (DBINT)0, (BYTE*)szID);
                     dbbind(dbprocess, 2, CHARBIND, (DBCHAR)0, (BYTE*)szBeginTime);
                     dbbind(dbprocess, 3, CHARBIND, (DBCHAR)0, (BYTE*)szDescription);
                                         while (dbnextrow(dbprocess) != NO_MORE_ROWS){                       
                            printf("ASB>>             ID=%s\n", szID);
                            printf("ASB>>             szAid=%s\n", szBeginTime);
                            printf("ASB>>             szBeginTime=%s\n", szDescription);
                     }
              }
       }*/
       //关闭数据库连接
       dbclose(dbprocess);
      
       return 0;
}



进行编译链接

 gcc -o testsybase SQL.c -L/usr/local/freetds/lib -lsybdb

执行即可

john@john-OptiPlex-780:~/Documents/SQL$ ./testsybase
ASB>>      ConnectEMS conect MS SQL SERVER success
ASB>>      Open database name success

提示成功


方法2:直接执行 sudo  apt-get install freetds-bin 自动安装也是可以的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

世纪殇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值