① 怎麼連接伺服器上的SQL資料庫
以sqlserver2000為例。
一、在本機電腦打開sql server 2000的企業管理器;
② 網路怎麼連接資料庫
VB訪問SQL Server資料庫技術全揭密(1)
本文討論了Visual Basic應用程序訪問SQL Server資料庫的幾種常用的方法,分別說明了每種方法的內部機理並給出了每種方法的一個簡單的實例,最後比較了每種方法性能和優缺點。
一、引言
SQL Server是微軟推出的中小型網路資料庫系統,是目前最常用的資料庫系統之一。隨著SQL Server網路資料庫應用程序日益增多,這種Web資料庫應用系統的正常運行一般依賴於已存在的用戶資料庫。創建維護資料庫的工作可用SQL Server提供的SQL Enterprise Manager工具來進行,如能提供一種定製的資料庫管理工具,通過管理應用程序來管理資料庫及其設備,對用戶來說無疑是最理想的。
Visual Basic作為一種面向對象的可視化編程工具,具有簡單易學,靈活方便和易於擴充的特點。而且Microsoft為其提供了與SQL Server通信的API函數集及工具集,因此它越來越多地用作大型公司數據和客戶機—伺服器應用程序的前端,與後端的Microsoft SQL Server相結合,VB能夠提供一個高性能的客戶機—伺服器方案。
二、VB訪問SQL Server數據的常用方法
使用Visual Basic作為前端開發語言,與SQL Server介面有幾種常用的方法,即:
①數據訪問對象/Jet
②為ODBC API編程
③使用SQL Server的Visual Basic庫(VBSQL)為DB庫的API編程
④RDO 遠程數據對象(RemoteData Objects)
⑤ADO 數據對象(Active Data Objects)
1、數據訪問對象/Jet
VB支持Data Access Objects(DAOs)的子集。DAO的方法雖然不是性能最好的管理客戶機—伺服器之間的對話方式,但它的確有許多優點。DAO/Jet是為了實現從VB訪問Access資料庫而開發的程序介面對象。使用DAOs訪問SQL Server的過程如下:應用程序准備好語句並送至Jet,Jet引擎(MASJT200.DLL)優化查詢,載入驅動程序管理器並與之通訊,驅動程序管理器(ODBC.DLL)通過調用驅動器(SQLSRVR.DLL)的函數,實現連接到數據源,翻譯並向SQL Server提交SQL語句且返回結果。下面是一個用DAOs訪問SQL Server的VB實例。
注釋:Form Declarations
Dim mydb As Database
Dim mydynaset As Dynaset オ
Private Sub Form_Load()
Set mydb = OpenDatabase("", False, False, "ODBC; DSN=Myserver; WSID=LCL; DATABASE = sales")
Set mydynaset = mydb CreateDynaset("Select*from Customers") オ
End Sub ァ
上述例子是以非獨占、非只讀方式打開sales資料庫,並檢索Customers表中的所有欄位。OpenDatabase函數的最後一個參數是ODBC連接字元串參數,它指明了Microsoft Access連接到SQL Server所需要知道的一些內容。其中「DSN」為數據源名,「WSID」為工作站名,「DATABASE」為所要訪問的資料庫名。
2、利用ODBC API編程
ODBC(Open Database Connectivity)的思想是訪問異種資料庫的一種可移植的方式。與數據資源對話的公用函數組裝在一個稱為驅動程序管理器(ODBC.DLL)的動態連接中。應用程序調用驅動程序管理器中的函數,而驅動程序管理器反過來通過驅動器(SQLSRVR.DLL)把它們送到伺服器中。
下面的代碼使用上面一些函數先登錄到一個伺服器資料庫,並為隨後的工作設置了語句句柄。
Global giHEnv As Long
Global giHDB As Long
Global giHStmt As Long
Dim myResult As integer
Dim myConnection As Srting
Dim myBuff As String*256
Dim myBufflen As Integer
If SQLAllocEnv(giHEnv)<>SQL_SUCCESS Then
MsgBox"Allocation couldn注釋:t happen!"
End If
If SQLAllocConnect(giHEnv,giHDB)<>SQL_SUCCESS Then
MsgBox "SQL Server couldn注釋:t connect!"
End If
myConnection="DSN=myServer;UID=LCL;PWD=;APP=ODBCTest;WSID=LCL;DATABASE=sales"
myResult=SQLDriverConnect(giHDB,Test,form1.hWnd,myConnection.len(myConnection),myBuff,256,myBufflen,SQL_DRIVER_COMPLETE_REQUIED)
myResult=SQLAllocStmt(giHDS,giHStmt)
myResult=SQLFreeStmt(giHStmt,SQL_COLSE)
rsSQL="Select * from Customers Where City = "Hunan""
myResult = SQLExecDirect(giHStmt,rsSQL,Len(rsSQL))
3、使用VBSQL對DB庫API編程
DB庫是SQL Server的本地API,SQL Server的Visual Basic庫(VBSQL)為Visual Basic程序員提供API。從一定意義上說,VBSQL是連接Visual Basic程序到SQL Server的性能最好最直接的方式。VBSQL包含以下三個文件:
VBSQL.VBX: 包含庫函數,具有訪問重要的消息和處理錯誤的能力
VBSQL.BI:包括所有的常量和變數說明
VBSQL.HLP:Windows幫助文件,使用VBSQL的指南
使用VBSQL時,必須將VBSQL.BI加入到Visual Basic工程文件中,並確保VB程序運行時有VBSQL.VBX文件。
一般的DB庫API編程的過程是這樣的:先通過調用SqlInit對DB庫進行初始化,再調用SqlConnection打開一個連接,然後就可做一些工作。下面的代碼是一個初始化DB庫並登錄到伺服器的通用常式
③ 如何連接資料庫
你用SQL Server2005的企業管理器查看你要使用的資料庫名稱不就可以了嘛
④ 怎麼連接自己新建的資料庫
在增強工具下方找到【導入外部資料庫】點擊進入這里不需要做任何的改動直接點擊【下一步】就可以了選擇要導入的數據源的名稱,選擇導入數據源的類型,可以從本地導入到資料庫中,也可以選擇從遠程資料庫導入到目標資料庫中,如果是遠程的資料庫需要配置遠程數據源的驗證,設置完成點擊【下一步】按鈕選擇要將數據源數據導入的目標資料庫,一樣的需要配置目標數據的ip地址、目標資料庫的用戶口令和資料庫埠指定數據導入選擇數據的方式,可以通過選擇數據表,也可以選擇使用sql查詢來實現一部分指定的數據導入到目標資料庫。如果選擇sql語句查詢來實現一部分指定的數據導入到目標資料庫,會進入到如下圖的界面,將資料庫的查詢sql寫入白框中,點擊下一步按鈕完成配置的工作。sqlyog怎麼新建資料庫連接
⑤ 怎麼才能連接資料庫啊
問:資料庫連接不上;運行科脈商業管理系統後出現連接資料庫的提示界面,進入了科脈系統?
答:(1)先檢查網路是否正常,再檢查SQL SERVER是否正常,可使用TELNET IP 1433命令來幫助分析。
(2)確認是資料庫被掛起(是否斷電的原因造成的)。
(3)如有備份,則可使用DB_SETUP重新裝載備份的資料庫文件即可恢復數據成功,所以必須要求客戶每日備份數據。 科脈其他常見問題:1. 問:系統初始化加密狗失敗,錯誤代碼為「15」?
答:查看你的網路是否連通,插緊加密狗,有沒有安裝好加密狗驅動程序,如果沒有請重新安裝。
2. 問:初始化科脈系統時,系統提示連接不到科脈資料庫?
答:有沒有裝載科脈資料庫(DB_SETUP),或打開SQL SERVER的企業管理器,查看Databases下面有無KMJXC的資料庫,如果沒有請重新裝載科脈資料庫。
3. 問:為何在科脈商業管理系統中更改或刪除條形碼時只能用系統工程管理員去更改?
答:為了客戶能安全使用科脈商業管理系統,所以在科脈中只能用系統管理員去更改或刪除條形碼,而一般的操作員是沒有許可權更改或刪除條形碼的。
4. 問:前台列印小票時,上一張小票與下一張小票空格太寬?
答:在前台收銀機外設設置處把添加空行數目處,將頭和尾的值進行修改,重新啟動收銀系統即可。
5. 問:類別毛利總金額與收銀員匯總報表的總金額對不上、前台商品銷售明細流水報表多於後台銷售按商品匯總報表?
答:請做綜合數據日結,在一般的情況下這兩個報表是相等的,用戶把一些商品資料從基本檔案刪除了,而前台收銀機上還有這些商品資料。所以導致這兩個報表對不上。
6. 問:在分布式版中為何分店的會員卡積分在總店不能查詢?
答:分店的會員卡積分中能在各分店查詢各自的會員卡積分,分店的會員卡積分不能傳上總店,所以在總店不能查詢分店會員卡積分的積分。
7. 問:為何在科脈啟謀商業管理系統里設置電子稱列印的標簽格式不對?
答:在編輯標簽後,保存時應注意保存到第幾號標簽,同時應設置電子稱使用該標簽,如果不是一致的就會導致列印格式不正確。
8.問:在前台銷售的商品時,為何有些商品不能夠打折?
答:(1)查看此收銀員是否有打折的許可權;
(2)在系統設置的前台POS機銷售設置的界面上是否設置了啟用前台指定商品不允許優惠控制功能,而這些不能打折的商品正好屬於不允許優惠商品。
9. 問:在科脈啟謀商業管理系統中,怎樣設置驗收入庫單列印商品數量、進價和進價金額?
答:在kmjxc.ini的配置設置裡面增加如下程序:在[app_env]下面增加「sheetprint_pi=prc1」保存設置即可。
10.問:安裝科脈瑞通商業管理系統單機版,在初始化時系統提示連接不到資料庫?
答:缺少SQLANYWHERE5.0資料庫,請到相關網站下載或聯系我公司技術支持部。
11.問:為何有些商品的電腦庫存是一個負很大的數據?
答:請查看商品出入庫報表,確認這些商品是否做過驗收入庫單,如果沒有;請做商品驗收入庫單。
12.問:在前台設置中用DIY—POS—LED8[單行串口數字]客顯啟動錢箱,錢箱為何打不開?
答:因為用客顯啟動與列印機啟動錢箱的指令不同,把原來開錢箱的指令改成「2,77」,然後設置好錢箱埠與客顯埠一致即可。
13.問:資料庫連接不上;運行科脈商業管理系統後出現連接資料庫的提示界面,進入了科脈系統?
答:(1)先檢查網路是否正常,再檢查SQL SERVER是否正常,可使用TELNET IP 1433命令來幫助分析。
(2)確認是資料庫被掛起(是否斷電的原因造成的)。
(3)如有備份,則可使用DB_SETUP重新裝載備份的資料庫文件即可恢復數據成功,所以必須要求客戶每日備份數據。
14.問:盈虧數量是怎樣得出來的,商品電腦庫存為負應怎樣解決?
答:(1)盈虧數量是電腦庫存與實盤數量之差的結果。
(2)商品的電腦庫存為負,應找出它為負的原因,如這個商品從來就沒有做過驗收入庫但前台又在銷售,它的庫存肯定為負,這時可以通過重新做驗收入庫或用其它單做入庫處理。
15.問:在科脈商業管理系統V2.0中儲值卡是怎樣充值的?
答:打開發放儲值卡的菜單,輸入要充值的卡號;按下充值管理輸入卡號、充值金額,然後按下充值鍵即可。
16.問:入庫單審核後在已審核單中未查到?
答:日期錯誤導致該單據被記錄在別的日期下面,在當天的記錄中當然找不到,請先檢查這方面的原因。
17.問:能否把前台銷售流水數據報表裡面的小計金額去掉?
答:可以,打開前台銷售流水數據報表上的設置鍵,打開報表屬性設置——明細設置,把小計金額後面的「X」去掉就可以了。
18.問:在前台銷售商品的數據跟後台商品數據對不上,如在前台銷售50個同一商品,為何在後台查看商品銷售時只有25個?
答:請在後台系統設置裡面是否啟用了萬能數據處理功能,如果啟用了此功能後台的數據隨著數據處理的百分比的改變而改變。
19.問:在一台機器上設置好的商品價格標簽列印的模塊可否在其它的機器上調用?
答:可以,將設置好的模塊保存後,在KMJXC的安裝目錄下的REPORT的LABELPRINT.PSR文件復制到另外一台機器上的REPORT文件下面。
20.問:在科脈瑞通商業管理系統中,在結算時因儲值卡上的金額不夠可否用另外一張儲值卡繼續結帳?
答:可以。在結算時儲值卡上的金額不夠系統會提示儲值卡付款多少錢,待付金額多少錢,此時再按下儲值卡鍵輸入卡號繼續付款。
21.問:科脈啟謀商業管理系統中的盤點過程是怎樣的?
答:首先完成綜合數據日結,其次做盤點初始化生成一個盤點批次號、盤點鎖庫、列印空盤點表、然後盤點單錄入、復盤單錄入(可選項)、生成盤點差異、生成漏盤商品、最後盤點審核。注意:在盤點過程還沒有完成之前不能做任何影響庫存的業務。
22.問:科脈啟謀商業管理系統中注冊後,提示注冊成功但是不能進入科脈系統?
答:此為伺服器資料庫工作不正常,非輸入序列號引起的錯誤,請重啟伺服器。
23.問:調進貨價單與庫存調價有何區別?
答:前者是調進價,後者是對以前某一次進貨剩餘的商品庫存進行調價。
24.問:營業間在後台查詢庫存能否用商品條碼來查詢商品的庫存?
答:可以,既可用商品編碼又可以用條碼查詢商品的庫存。
25.問:在分布式版中為何在總店做了零售特價單在分店不能實現?
答:(1)分店的倉庫編碼設置是否與總店設置分店的倉庫編碼一致,分店前台商品的出貨倉是否選擇本分店的倉庫編碼。
(2)查看商品零售特價單設置的有效時間。
26.問:能否把商品的特價信息用EXCEL的格式導出?
答:因為商品的特價信息不屬於商品的基本檔案,所以不能用EXCEL的格式導出,它只能列印出來。
27.問:會員特價單能否調出單據修改其中某些商品的特價信息,如某一商品的特價時間還未結束又將這商品做特價單,可以嗎?商品銷售又是按那個價格銷售的?
答:(1)不能調出已審核過的單據進行修改,因為審核過的單據是不能修改的。
(2)在規定商品特價時間還未結束時可以再將這個商品做特價,銷售是按新價格進行銷售的。
28.問:前台折扣報表為何會出現折扣金額為負?有的商品為何上午可以打折而到了下午卻不能打折?
答:(1)商品特價的金額高於商品原價金額時,前台折扣報表就會出現折扣金額為負。
(2)是否做了商品零售特價而又同時做了固定時間特價,而下午沒有折扣是因為特價的時間還未到。
29.問:驗收入庫單與贈品入庫單是否都跟供應商結算?
答:贈品入庫單只增加商品庫存的數量不用跟供應商結算,跟供應商結算的只是驗收入庫單。
30.問:為何在商品基本檔案用手工錄入8位的商品條碼在前台不能掃描,系統提示沒有此商品?
答:商品基本檔案手工錄入的8位條碼是否與掃描槍掃出來的8位條碼是否一致。如果不一致,請在商品基本檔案修改的條碼使它與掃描槍掃描出來的條碼一致。
31.問:盤點可否做其它影響庫存的業務?
答:在盤點過程還沒有結束時,不能做任何影響庫存的業務包括日結。
32.問:為何普通收銀員沒有前台設置許可權的都可以按F6鍵選擇商品的出貨倉?
答:收銀員無論有無前台設置許可權的都可以按F6鍵選擇商品的出貨倉,是沒有限制的。
33.問:為何在客流量大時前台鍵盤、條碼槍停止響應?
答:這應從硬體方面考慮機箱散熱的問題,可以打開主板BIOS中的溫度保護、增加內存;也可以在科脈商業管理系統中清空部分歷史數據(註:在清空前先備份數據)
34.問:加密狗站點升級不成功?運行加密狗升級程序出錯,報「當前使用非法,程序將關閉」?
答:系統未找到加密狗或加密狗驅動未安裝,導致許可證管理程序找不到介面出錯,安裝加密狗驅動應可正常。
35.問:在前台完成了盤點數據的錄入,但查詢庫存為「0」?
答:雖然完成了盤點數據錄入,但未進行數據處理,須將前台盤點數據文件拷貝到後台,並在盤點錄入單中導入數據,前台盤點數據默認保存在安裝目錄下的POSDATE中且帶有日期的格式文件;按下盤點單上的編輯鍵導入「盤點數據」即可,然後保存審核才能生效。
36.問:在科脈啟謀商業管理體系統中盤點時有些為負庫存的商品未點數,可否更正這些商品的庫存數量。
答:可以,通過列印漏盤商品報表來確認未盤商品及其數量,然後通過再次盤點錄入或其它單來作入庫調整。
37.問:列印機沒有錢箱介面,用川田的VFD8CV客顯可否打開錢箱?
答:可以,將客顯接在相應埠並連接好錢箱,在軟體中設置錢箱埠與客顯相同,並將開錢箱的指令修改為「31,77」即可。(註:本指令只能打開12V的錢箱)
38.問:會員特價按折扣的如何設置?會員特價單中如何讓電腦自動按一定折扣生成特價?
答:(1)在會員卡類別是定義折扣卡,可定出如8折或9折的卡類別。
(2)可以實現此功能,在系統設置中定義「會員特價率」,則系統在製作會員特價單時將自動按進價、售價、會員特價率自動計算會員特價。
39.問:分布式分店初始化不了,在分店使用數據通信中的初始化時,軟體提示沒有設置傳輸許可權?
答:由於在分店先安裝了一套網路版並使用進入了軟體,然後又只是安裝了軟體分布式客戶端,然後再使用數據通信中的初始化,此時軟體肯定提示說沒有傳輸許可權,因為此時在此店的資料庫中本店倉庫代碼是00(即網路版默認倉庫),但00是總店的倉庫代碼,肯定不在總店的傳輸許可權設置中,所以撥號後傳輸初始化時出現此提示。解決方法:重新安裝分店的資料庫,則運行程序後會提示輸入分店名稱和代碼,則輸入後初始化即可。
40.問:在科脈啟謀商業管理系統分布式版中,在總店做分店的入庫單後在總店查商品庫存匯總報表(倉庫)和在分店查的商品匯總報表(倉庫)對不上?
答:請檢查總店與分店驗收單據的數量,如果對不上,請在分店重新下載數據或下載全部數據;也可以利用數據通信輔助處理功能把某些還未傳下分店的單據傳到分店。
41.問:在科脈啟謀商業管理系統中,在商品基本檔案中,如果當前已有一個商品的資料,且該商品有類別和供應商,點新增按鈕後程序不能提供商品的供應商和類別,以前的程序是可以的?
答:以前的程序的確可以。但考慮到商品的供應商會對業務產生影響,包括進貨和進銷存結余等會與結算產生關系,為了不對各種報表及結算數據造成很大的錯誤影響,程序不再默認採用原來的商品的供應商,而要求錄入員手工輸入。
42.問:在科脈啟謀商業管理系統中,為何前台班結後收銀員班結報表上的金額比實際收銀金額少很多?
答:因為經常退出收銀系統或重新啟動計算機造成的原因,這種情況下班結時系統只當前的收銀記錄做班結而沒有對以前曾退出收銀系統或重新啟動計算機後重新進入收銀系統做記錄,所以班結後的報表會比實際收銀員的報表上有金額少。
43.問:列印商品資料時內容太多,有些東西是不想列印的;浪費紙。
答:可以在瀏覽界面中通過拖動標題欄來屏蔽一些不要的列。
44.問:要列印某供應商的商品,但太多供應商了很麻煩?
答:可以在供應商商品瀏覽列印,這樣可以只列印一個供應商所供應的商品。
45.問:商品進價經常變化,但又不能定死;能不能監控價格變化?
答:在采購入庫報表中可以查看每個商品的入庫歷史、價格。
46.問:商品進貨時進價過度,銷售一段時間後供應商同意將未銷售的部分商品降低供貨價,在科脈商業管理系統V3.0中如何處理?
答:(1)常規方法是採用「空退空進」的方式來解決,即先用原來的進價將剩餘部分退貨出去,然後再用新的進價做入庫,可以達到目的,但此部分商品的帳期會順延。
(2)採用「庫存調價單」也可以達到目的,即將上次或歷次進貨的部分或全部商品的進價作出調整。
47.問:在科脈啟謀商業管理系統中能否提供一套比較正確的影響成本的單據方法?
答:一般來說,只要是非銷售的、出入庫且不以成本價出入庫的單據就要影響成本。這些業務建議影響成本:贈送入庫單、庫存調價單、庫存更正單、其它單、盤點審批單、驗收入庫單、銷售退貨單、采購退貨單。另外,還有些單據如果企業內部規則不以成本價計的也要讓其影響成本,如:報損單、領用單、各種調撥單等
⑥ 資料庫是怎樣連接的 詳細步驟
首先在stdafx.h中添加如下
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","rsEOF")
上面的路徑根據你自己的更改
然後在你要查詢的地方寫如下代碼:
CoInitialize(NULL);
_ConnectionPtr pConn(__uuidof(Connection));
_RecordsetPtr pRst(__uuidof(Recordset));
_CommandPtr pCmd(__uuidof(Command));
pConn->ConnectionString = "Driver=;Server=mySrvName;Option=16834;Database=mydatabase";
//這里的資料庫連接字串根據你自己的版本寫
pConn->Open("","","",adConnectUnspecified);
pRst = pConn->Execute("Select * from ...",NULL,adCmdText);
//寫入的話是Insert,這個不用多說吧。
while(!pRst->rsEOF)
{
/*
這里寫你怎麼把數據讀取到外面,如下面是吧數據讀到一個ListB0x控制項中
((CListBox*)GetDlgItem(IDC_LIST1))->AddString((_bstr_t)pRst->GetCollect("這里寫屬性名"));
*/
pRst->MoveNext();
}
pRst->Close();
pConn->Close();
pRst.Release();
pConn.Release();
pCmd.Release();
CoUninitialize();
具體地可參考孫鑫MFC視頻教程20課,後半段。
⑦ 資料庫怎麼連接
首先本地要有一個資料庫軟體1、遠程公網的IP地址2、資料庫名3、用戶名4、密碼在你的本地資料庫搜索加入組。就可以在本地直連接到遠程資料庫了!或者空間商會提供你資料庫的IP你可以在本地備份好資料庫用FTP上傳軟體上傳到空間商的網頁管理器還原資料庫,就可以了!
⑧ 資料庫怎麼連接
import java.sql.*;
public class JDBCTest {
public static void main(String[] args){
// 驅動程序名 String driver = "com.mysql.jdbc.Driver";
// URL指向要訪問的資料庫名scutcs String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
// MySQL配置時的用戶名 String user = "root"; // MySQL配置時的密碼 String password = "root";
try { // 載入驅動程序 Class.forName(driver);
// 連續資料庫 Connection conn = DriverManager.getConnection(url, user, password);
這是Java 鏈接MYSQL資料庫的
⑨ 兩個資料庫之間如何進行連接
用db_links可以解決此類問題:
drop database link ss
create database link woody_DB_LINK
connect to woodydb(資料庫實例名稱)
identified by woody123(密碼)
using 'woody.woodycad.com'(連接字元)
然後在oracle安裝目錄下:D:\oracle\network\ADMIN
tnsnames.ora文件裡面根據鏈接情況加上鏈接
woody.woodyCAD.COM =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.24)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = woody.com)
)
)
⑩ 如何連接資料庫
如果您是ACCESS資料庫。這是最簡單的一種資料庫,它通常都是隨著資料庫源碼可以放在一起的,只需要知道FTP地址、賬戶與密碼就可以連接。利用FTP上傳工具上傳即可。上傳工具小編在下方資料參考處提供軟體下載鏈接。