国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > SQL Server > 正文

在Linux下訪問(wèn)MS SQL Server數(shù)據(jù)庫(kù)

2024-08-31 00:50:27
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
---- linux 作 為 一 個(gè) 免 費(fèi) 的Unix 類 操 作 系 統(tǒng), 以 其 開(kāi) 放 性 源 代 碼、 多 任 務(wù)、X window 等 特 點(diǎn) 為 眾 多 的 用 戶 所 采 用, 并 有 很 多 企 業(yè) 采 用Linux 來(lái) 作 為 其 內(nèi) 部 網(wǎng) 的 全 功 能 服 務(wù) 器(WWW,F(xiàn)TP,Email、DNS)。 企 業(yè) 的 內(nèi) 部 網(wǎng) 不 僅 要 提 供 文 本 信 息 的 訪 問(wèn), 還 要 能 提 供 對(duì) 企 業(yè) 關(guān) 系 數(shù) 據(jù) 庫(kù) 中 的 信 息 的 訪 問(wèn)。SQL Server 以 其 低 成 本、 性 能 高 以 及 與NT 的 有 效 集 成 等 特 性 為 許 多 企 業(yè) 所 采 用, 但Microsoft 不 提 供 其Unix 下 的 客 戶 端, 為 這 類 應(yīng) 用 帶 來(lái) 了 困 難。 本 文 則 提 出 了 這 一 問(wèn) 題 的 解 決 方 案。

安 裝Sybase 客 戶 端
---- 首 先 從Microsoft SQL Server 和Sybase SQL Server 的 關(guān) 系 說(shuō) 起。 兩 公 司 曾 共 同 開(kāi) 發(fā)OS/2 上 的 數(shù) 據(jù) 庫(kù) SQL Server for OS/2, 此 后 兩 公 司 又 獨(dú) 立 開(kāi) 發(fā) 升 級(jí) 系 統(tǒng),Sybase 的 客 戶 端 可 以 訪 問(wèn)Microsoft SQL Server。
---- 和 其 他 數(shù) 據(jù) 庫(kù) 公 司 相 比, 可 以 說(shuō)Sybase 公 司 對(duì)Linux 是 最 有 善 意 的, 它 雖 不 提 供Linux 下 的SQL Server, 但 提 供 了 免 費(fèi) 的CT -LIB 的 客 戶 端, 這 也 可 能 是 許 多IT 管 理 人 員 在 為 公 司 數(shù) 據(jù) 庫(kù) 選 型 時(shí) 不 再 考 慮Oracle 或Informix 的 理 由 之 一。 當(dāng) 然 現(xiàn) 在 情 況 有 所 改 變。

----Sybase 公 司 發(fā) 布 的OpenClient for Linux 是a.out 格 式 的, 在 互 聯(lián) 網(wǎng) 上 有 人 將 其 轉(zhuǎn) 化 為ELF 和 動(dòng) 態(tài) 鏈 接 的ELF 格 式, 可 從 下 列 地 址 上 尋 找 下 載:http://www.mbay.net/ ~mpeppler。 最 好 同 時(shí) 下 載 兩 個(gè) 版 本, 正 常 使 用 時(shí) 采 用 動(dòng) 態(tài) 鏈 接 的 版 本, 但 有 的 程 序 在 編 譯 時(shí) 可 能 需 要 一 個(gè) 庫(kù)(libblk.a), 只 在ELF 里 面 包 含。

---- 下 載 以 后, 鍵 入 如 下 命 令 展 開(kāi)( 假 設(shè) 當(dāng) 前 目 錄 是/usr/tmp):

----tar zxvf linux elf dynamic tar.gz

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

----mv sybase /usr/local

---- 編 譯 和 使 用Sybase 客 戶 端 需 要 進(jìn) 行 如 下 的 設(shè) 置:

----1 . Interface 文 件 舉 例 如 下:

----MSSQL

----query tcp ether MySQL 1433

---- 其 中:


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

mysql 是 服 務(wù) 器 的 地 址 或 名 字, 如 果 是 名 字, 則 系 統(tǒng) 能 夠 查 到 其ip 地 址;

1433 是SQL Server 的 端 口 號(hào),Microsoft SQL Server 的 缺 省 值 是1433,Sybase 是5000。
----2 . SYBASE 環(huán) 境 變 量, 內(nèi) 容 是Sybase 客 戶 端 所 在 的 目 錄:

----Export SYBASE=/usr/local/sybase

----3 . 如 果 編 譯Sybase 客 戶 端 中 的 例 子, 則 還 要 設(shè) 置 環(huán) 境 變 量SYBPLATFORM:

----export SYBPLATFORM=Linux

---- 并 且 修 改 其 頭 文 件 中 關(guān) 于 服 務(wù) 器 名 稱 及 用 戶 名 和 口 令 的 描 述。

使 用SQSH 界 面 訪 問(wèn)SQL Server
----Sybase 客 戶 端 提 供 了xisql 工 具, 但 更 多 的 人 使 用 的 是SQSH,SQSH 是SQshell 的 縮 寫(xiě), 是 改 進(jìn) 了 的isql, 可 從 下 列 地 址 下 載:http://www.voicenet.com/ ~gray/。 當(dāng) 前 的 最 新 版 本 是1.6.0。 假 設(shè) 下 載 后 的 文 件 放 在/usr/tmp 目 錄 下:
----tar zxvf sqsq 1.6.0 tar.gz

----cd sqsh 1.6.0

----./configure

----make;make install

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

----Sqsh 的 使 用 如 下:

---- # sqsh - -Uusername - -PpassWord - -Sservername

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

----Sqsh 是 交 互 式 的 命 令 行 界 面, 命 令 用 輸 入go 來(lái) 執(zhí) 行, 命 令 如 果 較 長(zhǎng) 可 直 接 分 成 幾 行 書(shū) 寫(xiě), 以 回 車 換 行 即 可。

---- 如 下 是 一 個(gè) 例 子:

----1> use pubs

----2> go

----1> select * from authors

----2> go 采 用CT -LIB 編 寫(xiě) 應(yīng) 用 程 序

---- 由 于Sybase 的Linux 客 戶 端 不 提 供DB -Library, 所 以 應(yīng) 采 用CT -Library 來(lái) 編 寫(xiě) 應(yīng) 用 程 序, 采 用CT -Library 編 寫(xiě) 應(yīng) 用 程 序 可 參 考 例 子, 詳 細(xì) 的 編 程 說(shuō) 明 可 以 參 考Sybase 的 說(shuō) 明。 利 用Sybperl 編 寫(xiě) 應(yīng) 用 程 序

----Sybperl 是Sybase 的Perl 擴(kuò) 展, 可 利 用Perl 語(yǔ) 言 來(lái) 訪 問(wèn)SQL Server, 或 者 編 寫(xiě)CGI 程 序。

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

---- 取 得Sybperl 的 源 代 碼 展 開(kāi) 以 后, 需 要 修 改 一 下CONFIG 文 件, 以 下 是 幾 個(gè) 參 數(shù):

---- 下 一 個(gè) 要 修 改 的 文 件 是PWD, 這 是 用 來(lái) 進(jìn) 行 測(cè) 試 的, 將 其 中 的 服 務(wù) 器 名、 用 戶 名、 用 戶 口 令 設(shè) 置 成 自 己 的 配 置 即 可。 然 后 進(jìn) 行 編 譯:

----perl Makefile.PL

----make; make test; make install

---- 安 裝 成 功 以 后, 即 可 使 用Sybperl 進(jìn) 行 編 程。 下 面 是 一 個(gè) 簡(jiǎn) 單 的 例 子。

    #!/usr/bin/perl
   use Sybase::CTlib;
    $dbh=new Sybase::CTlib 'sa','','MSSQL';
    $dbh ->ct_execute("select au_id, au_lname,
au_fname from pubs.dbo.authors");
   while( $dbh ->ct_results( $restype) == CS_SUCCEED) {
    next unless $dbh ->ct_fetchable( $restype);
while(( $au_id, $au_lname, $au_fname) = $dbh ->ct_fetch){
    PRint " $au_id - $au_lname au_fname/n";
    }
   }
----可 以 看 出, 短 短 幾 行 語(yǔ) 句, 就 可 以 完 成 對(duì) 數(shù) 據(jù) 庫(kù) 的 操 作。

----以 上 從 幾 個(gè) 方 面 對(duì) 在Linux 下 訪 問(wèn)MS SQL Server 數(shù) 據(jù) 庫(kù) 進(jìn) 行 了 說(shuō) 明, 介 紹 了 基 本 的API 編 程、SQSH 命 令 行 訪 問(wèn)、Perl 訪 問(wèn)。 其 實(shí), 在Linux 下 還 可 采 用 其 他 方 式 進(jìn) 行 訪 問(wèn), 如 采 用 第 四 級(jí) 的JDBC 進(jìn) 行 訪 問(wèn), 這 時(shí) 除 了java 和JDBC 外, 并 不 需 要 其 他 軟 件( 具 體 信 息 可 訪 問(wèn)http://www.connectsw.com)。



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 崇阳县| 文登市| 怀远县| 广东省| 来安县| 阳江市| 内乡县| 依兰县| 长沙市| 晋州市| 永川市| 阳城县| 桃江县| 阿鲁科尔沁旗| 突泉县| 双鸭山市| 敦煌市| 张掖市| 北宁市| 蒙自县| 漠河县| 镇原县| 木兰县| 宁都县| 奎屯市| 奉贤区| 新沂市| 吴江市| 安庆市| 烟台市| 庄浪县| 健康| 巨鹿县| 秦皇岛市| 上虞市| 疏附县| 塔河县| 南安市| 五华县| 班戈县| 靖宇县|