亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網絡,我們將竭誠為您提供優質的服務! 誠征網絡推廣 | 網站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術文章 >> 文章瀏覽
技術文章

Linux下訪問MS SQL Server數據庫

添加時間:2011-1-27  添加: admin 

在Linux下訪問MS SQL Server數據庫
 
  Linux作為一個免費的Unix類操作系統,以其開放性源代碼、多任務、X-window等特點為眾多的用戶所采用,并有很多企業采用Linux來作為其內部網的全功能服務器(WWW,FTP,Email、DNS)。企業的內部網不僅要提供文本信息的訪問,還要能提供對企業關系數據庫中的信息的訪問。SQLServer以其低成本、性能高以及與NT的有效集成等特性為許多企業所采用,但Microsoft不提供其Unix下的客戶端,為這類應用帶來了困難。本文則提出了這一問題的解決方案。
  
  安裝Sybase客戶端

  首先從Microsoft SQLServer和Sybase SQLServer的關系說起。兩公司曾共同開發OS/2上的數據庫SQLServerforOS/2,此后兩公司又獨立開發升級系統,Sybase的客戶端可以訪問MicrosoftSQLServer。

  和其他數據庫公司相比,可以說Sybase公司對Linux是最有善意的,它雖不提供Linux下的SQLServer,但提供了免費的CT-LIB的客戶端,這也可能是許多IT管理人員在為公司數據庫選型時不再考慮Oracle或Informix的理由之一。當然現在情況有所改變。

  Sybase公司發布的OpenClientforLinux是a.out格式的,在互聯網上有人將其轉化為ELF和動態鏈接的ELF格式,可從下列地址上尋找下載:http://www.mbay.net/~mpeppler。最好同時下載兩個版本,正常使用時采用動態鏈接的版本,但有的程序在編譯時可能需要一個庫(libblk.a),只在ELF里面包含。

  下載以后,鍵入如下命令展開(假設當前目錄是/usr/tmp):

  tar zxvf linuxelfdynamic.tar.gz

  然后將其移至/usr/local目錄:

  mvsybase/usr/local

  編譯和使用Sybase客戶端需要進行如下的設置:

  1.Interface文件舉例如下:

  MSSQL

  querytcpethermysql1433

  其中:

  MSSQL是客戶端使用的服務器名,以后引用MSSQL即可;

  mysql是服務器的地址或名字,如果是名字,則系統能夠查到其IP地址;

  1433是SQLServer的端口號,MicrosoftSQLServer的缺省值是1433,Sybase是5000。

  2.SYBASE環境變量,內容是Sybase客戶端所在的目錄:

  ExportSYBASE=/usr/local/sybase

  3.如果編譯Sybase客戶端中的例子,則還要設置環境變量SYBPLATFORM:

  exportSYBPLATFORM=Linux

  并且修改其頭文件中關于服務器名稱及用戶名和口令的描述。
 
使用SQSH界面訪問SQLServer

  Sybase客戶端提供了xisql工具,但更多的人使用的是SQSH,SQSH是SQshell的縮寫,是改進了的isql,可從下列地址下載:http://www.voicenet.com/~gray/。當前的最新版本是1.6.0。假設下載后的文件放在/usr/tmp目錄下:

  tar zxvf sqsq1.6.0.tar.gz

  cdsqsh1.6.0

  . /configure

  make;makeinstall

  然后,將生成的可執行文件sqsh安裝到/usr/local/bin/目錄下。

  Sqsh的使用如下:

  #sqsh--Uusername--Ppassword--Sservername

  其中username和password是用戶名和口令,servername是在interface文件中定義的服務器名(如例子中的MSSQL)。

  Sqsh是交互式的命令行界面,命令用輸入go來執行,命令如果較長可直接分成幾行書寫,以回車換行即可。

  如下是一個例子:

  1>usepubs

  2>go

  1>select*fromauthors

  2>go采用CT-LIB編寫應用程序

  由于Sybase的Linux客戶端不提供DB-Library,所以應采用CT-Library來編寫應用程序,采用CT-Library編寫應用程序可參考例子,詳細的編程說明可以參考Sybase的說明。利用Sybperl編寫應用程序

  Sybperl是Sybase的Perl擴展,可利用Perl語言來訪問SQLServer,或者編寫CGI程序。

  Sybperl可從下列地址取得http://www.mbay.net/~mpeppler。當前的最新版本是2.9.5。

  取得Sybperl的源代碼展開以后,需要修改一下CONFIG文件,以下是幾個參數:

  下一個要修改的文件是PWD,這是用來進行測試的,將其中的服務器名、用戶名、用戶口令設置成自己的配置即可。然后進行編譯:

  perlMakefile.PL

  make;maketest;makeinstall

  安裝成功以后,即可使用Sybperl進行編程。下面是一個簡單的例子。

#!/usr/bin/perl
    useSybase::CTlib;
    $dbh=newSybase::CTlib'sa',','MSSQL';
    $dbh->ct_execute("selectau_id,au_lname,
  au_fnamefrompubs.dbo.authors");
    while($dbh->ct_results($restype)==CS_SUCCEED){
    nextunless$dbh->ct_fetchable($restype);
  while(($au_id,$au_lname,$au_fname)=$dbh->ct_fetch){
    print"$au_id-$au_lnameau_fname";
    }
    }

  可以看出,短短幾行語句,就可以完成對數據庫的操作。

  以上從幾個方面對在Linux下訪問MSSQLServer數據庫進行了說明,介紹了基本的API編程、SQSH命令行訪問、Perl訪問。其實,在Linux下還可采用其他方式進行訪問,如采用第四級的JDBC進行訪問,這時除了Java和JDBC外,并不需要其他軟件(具體信息可訪問http://www.connectsw.com)。

  Linux作為一個免費的Unix類操作系統,以其開放性源代碼、多任務、X-window等特點為眾多的用戶所采用,并有很多企業采用Linux來作為其內部網的全功能服務器(WWW,FTP,Email、DNS)。企業的內部網不僅要提供文本信息的訪問,還要能提供對企業關系數據庫中的信息的訪問。SQLServer以其低成本、性能高以及與NT的有效集成等特性為許多企業所采用,但Microsoft不提供其Unix下的客戶端,為這類應用帶來了困難。本文則提出了這一問題的解決方案。

關鍵詞:數據庫   應用程序
 

分享到:

頂部 】 【 關閉
版權所有:佛山思海電腦網絡有限公司 ©1998-2024 All Rights Reserved.
聯系電話:(0757)22630313、22633833
中華人民共和國增值電信業務經營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網安 舉報有獎  警警  手機打開網站