要完成標(biāo)題的需要,在SQLServer中是一件非常簡單的事情。通常的可以有3種方式:1、DTS工具 2、BCP 3、分布式查詢DTS就不需要說了,因為那是圖形化操作界面,很容易上手。這里主要講下后面兩們,分別以查、增、刪、改作為簡單的例子:
直接以T-SQL的形式表現(xiàn)出來。
一、SQLServer和Access
1、查詢Access中數(shù)據(jù)的方法:
select * from OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')
或select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="c:\DB2.mdb";User ID=Admin;Password=')...serv_user
2、從SQLServer向Access寫數(shù)據(jù):
insert into OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from Accee表')
select * from SQLServer表
或用BCPmaster..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" out "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"'
上面的區(qū)別主要是:OpenRowSet需要mdb和表存在,BCP會在不存在的時候生成該mdb
3、從Access向SQLServer寫數(shù)據(jù):
有了上面的基礎(chǔ),這個就很簡單了
insert into SQLServer表 select * from
OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from Accee表')
或用BCP
master..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" in "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"'
4、刪除Access數(shù)據(jù):
delete from OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')
where lock=0
5、修改Access數(shù)據(jù):
update OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')
set lock=1
SQLServer和Access大致就這么多。
二、SQLServer和Excel
1、向Excel查詢
select * from OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;HDR=yes;database=c:\book1.xls;','select * from [Sheet1$]') where c like '%f%'
select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;IMEX=2;DATABASE=c:\book1.xls',[sheet1$])
1)hdr=yes時可以把xls的第1行作為字段看待,如第1個中hdr=no的話,where時就會報錯
2)[]和美圓$必須要,否則M$可不認(rèn)這個賬
2、修改Execl
update OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;hdr=yes;database=c:\book1.xls;','select * from [Sheet1$]')
set a='erquan' where c like '%f%'
3、導(dǎo)入導(dǎo)出
insert into OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;hdr=yes;database=c:\book1.xls;','select * from [Sheet2$]')(id,name)
select id,name from serv_user
或BCP master..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" out "c:\book2.xls" -c -q -S"." -U"sa" -P"sa"'
從Excel向SQLServer導(dǎo)入:
select * into serv_user_bak
from OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;HDR=yes;database=c:\book1.xls;','select * from [Sheet1$]')
如果表serv_user_bak不存在,則創(chuàng)建有關(guān)BCP和分布式查詢的詳細(xì)解答,就查SQLServer自帶的幫助吧。SQLServer和txt文件、HTML文件、VFP文件的數(shù)據(jù)交換都顯得非常容易了。
其實這些內(nèi)容在幫助里都有,總結(jié)了一下,方便大家參考。以上內(nèi)容都經(jīng)過測試。
]]>2樓: 個人覺得是沒有開SQL SERVER驗證,連接串是什么
下面最經(jīng)典的帖子,
一."SQL Server 不存在或訪問被拒絕"
這個是最復(fù)雜的,錯誤發(fā)生的原因比較多,需要檢查的方面也比較多.
一般說來,有以下幾種可能性:
1,SQL Server名稱或IP地址拼寫有誤
2,服務(wù)器端網(wǎng)絡(luò)配置有誤
3,客戶端網(wǎng)絡(luò)配置有誤
要解決這個問題,我們一般要遵循以下的步驟來一步步找出導(dǎo)致錯誤的原因.
============= 首先,檢查網(wǎng)絡(luò)物理連接 =============
ping <服務(wù)器IP地址/服務(wù)器名稱>
如果 ping <服務(wù)器IP地址> 不成功,說明物理連接有問題,這時候要檢查硬件設(shè)備,如網(wǎng)卡,HUB,路由器等.還有一種可能是由于客戶端和服務(wù)器之間安裝有防火墻軟件造成的,比如 ISA Server.防火墻軟件可能會屏蔽對 ping,telnet 等的響應(yīng)
因此在檢查連接問題的時候,我們要先把防火墻軟件暫時關(guān)閉,或者打開所有被封閉的端口.
如果ping <服務(wù)器IP地址> 成功而,ping <服務(wù)器名稱> 失敗
則說明名字解析有問題,這時候要檢查 DNS 服務(wù)是否正常.
有時候客戶端和服務(wù)器不在同一個局域網(wǎng)里面,這時候很可能無法直接使用服務(wù)器名稱來標(biāo)識該服務(wù)器,這時候我們可以使用HOSTS文件來進(jìn)行名字解析,
具體的方法是:
1.使用記事本打開HOSTS文件(一般情況下位于C:\WINNT\system32\drivers\etc).
添加一條IP地址與服務(wù)器名稱的對應(yīng)記錄,如:
172.168.10.24 myserver
2.或在 SQL Server 的客戶端網(wǎng)絡(luò)實用工具里面進(jìn)行配置,后面會有詳細(xì)說明.
====接著,我們要到服務(wù)器上檢查服務(wù)器端的網(wǎng)絡(luò)配置,檢查是否啟用了命名管道.是否啟用了 TCP/IP 協(xié)議等等 =============
點擊:程序 -- Microsoft SQL Server -- 服務(wù)器網(wǎng)絡(luò)使用工具
打開該工具后,在"常規(guī)"中可以看到服務(wù)器啟用了哪些協(xié)議.
一般而言,我們啟用命名管道以及 TCP/IP 協(xié)議.
點中 TCP/IP 協(xié)議,選擇"屬性",我們可以來檢查 SQL Server 服務(wù)默認(rèn)端口的設(shè)置
一般而言,我們使用 SQL Server 默認(rèn)的1433端口.如果選中"隱藏服務(wù)器",則意味著客戶端無法通過枚舉服務(wù)器來看到這臺服務(wù)器,起到了保護(hù)的作用,但不影響連接.
以下內(nèi)容含腳本,或可能導(dǎo)致頁面不正常的代碼 |
---|
說明:上面顯示的是代碼內(nèi)容。您可以先檢查過代碼沒問題,或修改之后再運行. |
如果你不喜歡使用Access 2000和升級向?qū)нM(jìn)行移植,那么這篇文章作為向遷移一個Access應(yīng)用程序到SQL Server。要遷移Access應(yīng)用程序,你需要首先把數(shù)據(jù)遷移到SQL Server 7.0,然后把Access查詢移植到數(shù)據(jù)庫或SQL文件,最后是移植應(yīng)用程序。
●移植中使用的SQL Server工具
SQL Server中的一些工具可以幫助你移植Access數(shù)據(jù)和應(yīng)用程序
*SQL Server企業(yè)管理器
SQL Server企業(yè)管理器允許對SQL Server和SQL Server對象的企業(yè)范圍的設(shè)置和管理。SQL Server企業(yè)管理器提供了一個強(qiáng)大的任務(wù)安排引擎、管理警告能力、以及內(nèi)建的復(fù)制管理界面。你還可以用SQL Server企業(yè)管理器來:
管理登錄和用戶權(quán)限
創(chuàng)建腳本
管理SQL SERVER對象的備份
備份數(shù)據(jù)庫和事務(wù)日志
管理表、視圖、存儲過程、觸發(fā)器、索引、規(guī)則、缺省設(shè)定和自定義數(shù)據(jù)類型
創(chuàng)建全文索引、數(shù)據(jù)庫圖表和數(shù)據(jù)庫維護(hù)方案
輸入輸出數(shù)據(jù)
轉(zhuǎn)換數(shù)據(jù)
執(zhí)行不同的Web網(wǎng)絡(luò)管理任務(wù)
缺省情況下,SQL Server企業(yè)管理器被SQL Server作為服務(wù)器軟件的一部分安裝在運行Windows NT操作系統(tǒng)的計算機(jī)上,同時作為客戶軟件的一部分安裝在運行Windows NT和Windows 95操作系統(tǒng)的計算機(jī)上。你很可能要從SQL Server企業(yè)管理器的圖形用戶界面啟動數(shù)據(jù)轉(zhuǎn)換服務(wù)(Data Transformation Services,DTS)。
數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS)
數(shù)據(jù)轉(zhuǎn)換服務(wù)允許你在使用一個OLE DB結(jié)構(gòu)的多個數(shù)據(jù)源之間輸入和輸出數(shù)據(jù),這樣的數(shù)據(jù)源有Microsoft Excel電子表格,以及在運行SQL Server 7.0的多臺計算機(jī)之間執(zhí)行數(shù)據(jù)庫和數(shù)據(jù)庫對象的傳輸。你還可以用DTS來執(zhí)行數(shù)據(jù)轉(zhuǎn)換,以便用它來通過一個在線事務(wù)處理系統(tǒng)建立數(shù)據(jù)倉庫和數(shù)據(jù)商場。
DTS向?qū)г试S你交互的創(chuàng)建使用OLE DB和ODBC來進(jìn)行輸入、輸出、確認(rèn)和不同數(shù)據(jù)的轉(zhuǎn)換的DTS包。向?qū)н允許你在相關(guān)數(shù)據(jù)庫之間拷貝計劃和數(shù)據(jù)。
SQL SERVER查詢分析器(Server Query Analyzer)
SQL SERVER查詢分析器是一個圖形化查詢工具,它允許你可視化的分析一個查詢方案,同時執(zhí)行多重查詢、查看數(shù)據(jù)、獲得索引建議。SQL Server查詢分析器提供顯示方案(showplan)選項,可以用它來報告SQL Server查詢優(yōu)化器選擇的數(shù)據(jù)獲取方案。
SQL Server輪廓(Server Profiler)
SQL SERVER輪廓實時捕捉服務(wù)器活動的連續(xù)的記錄。SQL Server輪廓允許你監(jiān)控通過SQL Server產(chǎn)生的事件,過濾基于用戶指定準(zhǔn)則的事件和直接跟蹤到顯示器、文件或者表的輸出。使用SQL Server輪廓,你可以重放先前的捕捉記錄。這個工具幫助應(yīng)用程序開發(fā)人員鑒別可能使應(yīng)用程序性能惡化的事務(wù)。當(dāng)從一個基于文件的體系結(jié)構(gòu)移植一個應(yīng)用程序到一個基于客戶/服務(wù)器的體系結(jié)構(gòu)時,它是很有幫助的,因為最后的步驟包含針對應(yīng)用程序的新客戶/服務(wù)器環(huán)境優(yōu)化該應(yīng)用程序的操作。
移動表格和數(shù)據(jù)
使用DTS向?qū)нw移你的Access數(shù)據(jù)到SQL Server,你可以使用這些步驟:
在SQL SERVER企業(yè)管理器中的Tools(工具)菜單上,選擇Data Transformation Services(數(shù)據(jù)轉(zhuǎn)換服務(wù)),然后選擇Import Data(導(dǎo)入數(shù)據(jù))。
在Choose a Data Source(選擇數(shù)據(jù)源)對話框中選擇Microsoft Access as the Source,然后鍵入你的.mdb數(shù)據(jù)庫(.mdb文件擴(kuò)展名)的文件名或通過瀏覽尋找該文件。
在Choose a Destination(選擇目標(biāo))對話框中,選擇Microsoft OLE DB Provider for SQL Server,選擇數(shù)據(jù)庫服務(wù)器,然后單擊必要的驗證方式。
在Specify Table Copy(指定表格復(fù)制)或Query(查詢)對話框中,單擊Copy tables(復(fù)制表格)。
在Select Source Tables(選擇源表格)對話框中,單擊Select All(全部選定)。
移植Microsoft Access查詢
你必須以這些格式之一遷移你現(xiàn)有的Access查詢到SQL Server:
Transact-SQL腳本
Transact-SQL語句通常從數(shù)據(jù)庫程序被調(diào)用,但是你可以使用包含在SQL Server 7.0中的SQL Server查詢分析器在數(shù)據(jù)庫中直接運行它們。SQL Server查詢分析器幫助開發(fā)者針對開發(fā)數(shù)據(jù)庫測試Transact-SQL語句,或運行Transact-SQL語句執(zhí)行查詢、數(shù)據(jù)操作(INSERT、UPDATE、DELETE)或數(shù)據(jù)定義(CREATE TABLE)。
存儲過程
開發(fā)者可以把大多數(shù)源于Access查詢(SELECT、INSERT、UPDATE 和 DELETE)的Transact-SQL語句轉(zhuǎn)換為存儲過程。用Transact-SQL寫的存儲過程可以用來封裝和標(biāo)準(zhǔn)化你的數(shù)據(jù)訪問,存儲過程實際上存儲在數(shù)據(jù)庫內(nèi)。存儲過程能帶或者不帶參數(shù)運行,可以從數(shù)據(jù)庫程序調(diào)用,也可以從SQL Server查詢分析器手動執(zhí)行。
視圖
視圖作為虛擬的表格從一個或更多的表格顯露指定的行和列。它們允許用戶創(chuàng)建查詢而不用直接實現(xiàn)那些復(fù)雜的底層查詢。視圖不支持參數(shù)。向視圖加入一個更多的表格不能使用INSERT、UPDATE、或DELETE語句修改。視圖可以用Transact-SQL語句調(diào)用,并且也可以在SQL Server查詢分析器中的*.scripts中使用。SQL Server視圖和SQL-92標(biāo)準(zhǔn)不支持視圖中的ORDER BY 子句。
更多關(guān)于Transact-SQL、存儲過程或者視圖的信息,見SQL Server Books Online。
Access查詢類型
SQL Server移植選項和注釋
一個SELECT語句可以被存儲在Transact-SQL文件、存儲過程或者視圖中。
創(chuàng)建存儲過程是實現(xiàn)把數(shù)據(jù)庫應(yīng)用程序開發(fā)同數(shù)據(jù)庫設(shè)計的物理實現(xiàn)分離的最好方法。存儲過程在一個地方創(chuàng)建,并且被應(yīng)用程序調(diào)用。
如果底層數(shù)據(jù)庫改變了,并且存儲過程被仔細(xì)的修改以反映這些變化,則對存儲過程的調(diào)用不會被“中斷”。
CROSSTAB
交叉表經(jīng)常用于摘要報告。
Access交叉表可以在SQL腳本中作為Transact-SQL SELECT語句實現(xiàn),也可以作為存儲過程或者一個視圖實現(xiàn)。每次一個查詢被列舉的時候,數(shù)據(jù)節(jié)點將會重執(zhí)行,請確保使用最新的數(shù)據(jù)。
根據(jù)不同的數(shù)據(jù)庫需要,也許把交叉表中的數(shù)據(jù)存儲為臨時表比較合適(請參看下一行的MAKE TABLE)。臨時表只需要很少的資源,但是只提供了創(chuàng)建臨時表的時刻,數(shù)據(jù)的一個照相。
MAKE TABLE
Access的MAKE TABLE可以在Transact-SQL腳本或者存儲過程中作為Transact-SQL的CREATE TABLE語句實現(xiàn)。語法如下:
SELECT [ ALL | DISTINCT ]
[ {TOP integer | TOP integer PERCENT} [ WITH TIES] ]
]]>
可能是你沒有正確設(shè)置數(shù)據(jù)庫的模式,完整模式。
三、Log文件存放路徑
在MSDN上看過一篇文章說,同一臺電腦上再次設(shè)置Log Shipping時,不要使用相同的目錄存放Log文件。這個沒有考證過,只提一下,提醒大家!
數(shù)據(jù)庫考試簡介——微軟數(shù)據(jù)庫管理員 (MCDBA)
微軟認(rèn)證數(shù)據(jù)庫管理員 (MCDBA) 可獲得如下權(quán)益(2000 年 1 月 1 日生效):
業(yè)界對您具備的微軟產(chǎn)品和技術(shù)的知識與熟練程度的認(rèn)可。
在取得認(rèn)證的第一年內(nèi)訂閱全年 TechNet 或 TechNet Plus 享有預(yù)零售價的 50% 的折扣。(實行細(xì)節(jié)可能會隨著您的所在地點有所變化,請查看您的 Welcome Kit。)
訂閱“微軟開發(fā)人員網(wǎng)絡(luò)”(MSDN?)在獲得認(rèn)證后的一年內(nèi),MCDBA 可以獲得一年的 MSDN 訂閱折扣.(實行細(xì)節(jié)可能會隨著您的所在地點有所變化,請查看您的 Welcome Kit。)MSDN 專業(yè)版的折扣額為 200 美元,MSDN Universal(通用版)的折扣為 500 美元。
訂閱一年期 SQL Server Magazine。 SQL Server Magazine 是供 SQL Server 專家閱讀的首選資源。該雜志由業(yè)界的專家撰稿,包含了技術(shù)和實際技巧以及有關(guān)建議,是每位使用 SQL Server 人士的必備之物。通常全年的定價是 49.95 美元,對于 MCDBA 免費。
通過 安全的 MCP Web 站點 直接從微軟公司獲得技術(shù)和產(chǎn)品信息。
從部分公司獲得獨享的產(chǎn)品和服務(wù)折扣。現(xiàn)已通過認(rèn)證的個人可以通過訪問 MCP 安全站點 ,并單擊“其他權(quán)益”來獲取有關(guān)的獨享折扣信息。獲得最高級認(rèn)證的人員可以選擇“最高級權(quán)益”。
MCDBA 徽標(biāo)、證書、成績單、皮夾卡、領(lǐng)帶夾向同事和客戶表明您的微軟認(rèn)證專家(MCP)身份。在認(rèn)證時可以從 MCP 安全 Web 站點 下載徽標(biāo)和成績單的電子文件。
邀請參加微軟舉行的會議、技術(shù)培訓(xùn)會議以及特別活動。
免費訪問 Microsoft Certified Professional Magazine Online (《微軟認(rèn)證專家在線雜志》 -- 一份有關(guān)職業(yè)生涯及專業(yè)前景展望的雜志)。 Microsoft Certified Professional Magazine Online Web 站點的安全內(nèi)容包括本期雜志(只有 MCP 才能訪問),其他僅在線發(fā)行的內(nèi)容和專欄,一個只對 MCP 開放的數(shù)據(jù)庫和與微軟和其他技術(shù)專家定期的在線技術(shù)討論。
加入 PASS(SQL Server 專業(yè)協(xié)會)時享有折扣。除了在其中扮演重要角色外(這是唯一由用戶主持并經(jīng)過 Microsoft 批準(zhǔn)的全球性 SQL Server 用戶組),該協(xié)會的成員還能夠獨享各種教育機(jī)會。PASS 還邀請 MCP 利用 PASS 的表決資格,只需 50 美元即可享受會員的所有權(quán)益(比正常價格低 100 美元)。 請訪問 MCP 安全 Web 站點 了解有關(guān)如何獲得此項權(quán)益的詳細(xì)信息。
MCDBA 要求
微軟認(rèn)證數(shù)據(jù)庫管理員 (MCDBA) 報考人需要通過三門核心考試和一門選修考試,這些考試能夠有效和可靠地衡量實施和管理 Microsoft SQL Server數(shù)據(jù)庫的技術(shù)熟練和精通程度。
圖1:Your Data,Any Where、Any Time、Any Device. But not on your finger.
1.2 主要檢索技術(shù)的區(qū)別
& F$ m0 C. B% @7 h
有了數(shù)據(jù)但是沒有被使用,那么這些數(shù)據(jù)不應(yīng)該被稱為信息。它們無非是不斷充斥設(shè)備和網(wǎng)絡(luò)的比特而已,但是如何把數(shù)據(jù)提供給必要的人員,檢索技術(shù)是其中非常有效的途徑之一。本文筆者主要基于微軟平臺,針對SQL Server 2005提供的全文檢索技術(shù)進(jìn)行介紹。與關(guān)系數(shù)據(jù)查詢、多維數(shù)據(jù)庫查詢和基于XML的XQuery、XPath不同,全文檢索技術(shù)主要處理對象是基于超大數(shù)據(jù)量的文本數(shù)據(jù)和結(jié)構(gòu)化的二進(jìn)制數(shù)據(jù)上類似LIKE的模糊查詢。主要區(qū)別見下表。
關(guān)系數(shù)據(jù)庫查詢 | 多維數(shù)據(jù)查詢 | XML查詢 | 全文檢索 | |
檢索技術(shù) | SQL | MDX | XQuery、XPath | SQL (extension) |
主要處理對象 | 關(guān)系二維數(shù)據(jù) | 結(jié)構(gòu)化多維數(shù)據(jù) | 層次型數(shù)據(jù) | 大容量二維和層次型數(shù)據(jù)的模糊檢索 |
主要應(yīng)用領(lǐng)域 | 一般的OLTP類應(yīng)用 | 一般的OLAP類分析型應(yīng)用 | 面向Internet、Intranet的松散耦合SOA應(yīng)用 | 企業(yè)內(nèi)部知識管理類應(yīng)用 |
索引 | 大量使用非聚簇索引,一般保存在數(shù)據(jù)庫中。 | 通過層次型、保存中間結(jié)果的方式,通過不同的軸向快速定位信息剖面。 | 基于XPath的索引,索引一般保存在數(shù)據(jù)庫中。 | 基于關(guān)鍵字的索引,保存在文件系統(tǒng)中。每個表僅支持一個索引。 |
表1:全文檢索與關(guān)系數(shù)據(jù)庫查詢、多維數(shù)據(jù)查詢、XML查詢的對比
]]>>下一步->寫入登陸名與密碼(sa,password)->下一 步->下一步->完成 查詢分析器->文件->連接->寫
入遠(yuǎn)程IP->寫入登錄名和密碼(sa,password)->確 定
通常建議在查詢分析器里做,因為默認(rèn)情況下,通過企業(yè)管理器注冊另外一臺SQL Server的超時設(shè)置
是4秒,而查詢分析器是15秒。
修改默認(rèn)連接超時的方法:
企業(yè)管理器->工具->選項->在彈出的"SQL Server企業(yè)管理器屬性"窗口中,點擊"高級"選項卡->連接設(shè)
置->在登錄超時(秒) 后面的框里輸入一個較大的數(shù)字
查詢分析器->工具->選項->連接->在登錄超時(秒) 后面的框里輸入一個較大的數(shù) 字
通常就可以連通了,如果提示錯誤,則進(jìn)入下一步。
TOP |