當前位置:首頁 » 數據倉庫 » sqlserver資料庫別名
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sqlserver資料庫別名

發布時間: 2022-04-20 16:18:33

❶ hibernate sql怎麼使用別名

項目環境:hibernate3.6.1 mysql5.7.3 驅動:mysql-connector-java-5.1.26
問題描述:項目是從一個sqlserver 資料庫翻轉到mysql資料庫上的。通過sql查詢,自動映射到對象上,但是總是報錯。奇怪的問題:sql列印出來放到資料庫客戶端上
可以正常執行結果。但是sql就是查詢不出來,報 Column 'account' not found. 這樣的錯。換過驅動,想過框架的調用方式,查詢資料的時候,發現有人
說用query.addEntity("","").list() 可以解決問題,未做驗證。因為不想花大力氣從框架上變動。用驅動源碼跟蹤,發現原來,驅動根本就不識別別名。在查詢
`userAccount`對應的值的時候,傳到驅動的columnName 竟然是 「account」,這也是很多人在網上說的,如果sqlQuey 遇到兩個表有同一個屬性名,查詢會
報錯的bug的原因所在!

代碼部分:

[java] view plain
SQLQuery query = createSQLQuery(orderSql, values);
long totalCount = countSqlResult(sql, values);
page.setTotalItems(totalCount);
setPageParameterToSqlQuery(query, page);
List result = query.setResultTransformer(Transformers.aliasToBean(cl)).list();
page.setResult(result);

平台輸出:

[sql] view plain
select
l.id,
userId,
u.account as `userAccount`,
ip,
ipAddr,
loginTime
from
t_loginlog l
left join
t_user u
on l.userId = u.id
where
1=1 limit ?

[java] view plain
[2015-01-30 14:27:29,031][ERROR][http-8080-1] (JDBCExceptionReporter.java:234) - Column 'account' not found.
2015-1-30 14:27:29 org.apache.catalina.core.StandardWrapperValve invoke
嚴重: Servlet.service() for servlet ishare threw exception
java.sql.SQLException: Column 'account' not found.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920)
at com.mysql.jdbc.ResultSetImpl.findColumn(ResultSetImpl.java:1171)
at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5737)
at org.apache.commons.dbcp.DelegatingResultSet.getString(DelegatingResultSet.java:263)
at org.apache.commons.dbcp.DelegatingResultSet.getString(DelegatingResultSet.java:263)
at org.hibernate.type.descriptor.sql.VarcharTypeDescriptor$2.doExtract(VarcharTypeDescriptor.java:61)
at org.hibernate.type.descriptor.sql.BasicExtractor.extract(BasicExtractor.java:64)
at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:253)
at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:249)
at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:234)
at org.hibernate.loader.custom.CustomLoader$ScalarResultColumnProcessor.extract(CustomLoader.java:505)
at org.hibernate.loader.custom.CustomLoader$ResultRowProcessor.buildResultRow(CustomLoader.java:451)
at org.hibernate.loader.custom.CustomLoader.getResultColumnOrRow(CustomLoader.java:348)
at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:639)
at org.hibernate.loader.Loader.doQuery(Loader.java:829)
at org.hibernate.loader.Loader.(Loader.java:274)
at org.hibernate.loader.Loader.doList(Loader.java:2533)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2276)
at org.hibernate.loader.Loader.list(Loader.java:2271)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:316)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1842)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:165)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:157)
at com.coolsoul.framework.orm.hibernate.HibernateDao.findSqlPage(HibernateDao.java:90)
at com.coolsoul.ishare.loginLog.service.LoginLogService.findPageList(LoginLogService.java:54)
at com.coolsoul.ishare.loginLog.service.LoginLogService
FastClassByCGLIB
fb9ca761.invoke(<generated>)

at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
at com.coolsoul.ishare.loginLog.service.LoginLogService
EnhancerByCGLIB
5ea6d36b.findPageList(<generated>)

at com.coolsoul.ishare.loginLog.controller.LoginLogController.queryList(LoginLogController.java:69)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:176)
at org.springframework.web.servlet.mvc.annotation..invokeHandlerMethod(.java:426)
at org.springframework.web.servlet.mvc.annotation..handle(.java:414)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:662)

解救方法:
困擾了我很久 ,找了很多資料,問題很簡單,就是驅動不支持別名的問題,這里記錄下,為後來人造橋!!! 在連接mysql資料庫的時候添加 useOldAliasMetadataBehavior=true 這個參數!!!!

❷ SQL Server是什麼意思

SQL Server是Microsoft 公司推出的關系型資料庫管理系統。

SQL Server具有使用方便可伸縮性好與相關軟體集成程度高等優點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2012 的大型多處理器的伺服器等多種平台使用。

Microsoft SQL Server 是一個全面的資料庫平台,使用集成的商業智能 (BI)工具提供了企業級的數據管理。

Microsoft SQL Server資料庫引擎為關系型數據和結構化數據提供了更安全可靠的存儲功能,使您可以構建和管理用於業務的高可用和高性能的數據應用程序。

(2)sqlserver資料庫別名擴展閱讀:

在Windows NT 推出後,Microsoft與Sybase 在SQL Server 的開發上就分道揚鑣了,Microsoft 將SQL Server移植到Windows NT系統上,專注於開發推廣SQL Server 的Windows NT 版本。

SQL Server 2000 是Microsoft 公司推出的SQL Server資料庫管理系統,該版本繼承了SQL Server 7.0 版本的優點,同時又比它增加了許多更先進的功能。

具有使用方便可伸縮性好與相關軟體集成程度高等優點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2000 的大型多處理器的伺服器等多種平台使用。

❸ sqlserver這個修改資料庫名稱語句

執行系統存儲過程 SP_renamedb 修改資料庫名稱。
改名之前,必須將該資料庫切換到單用戶模式,更名之後再恢復為多用戶模式。
分三步:
EXEC sp_dboption 'jxgl', 'SINGLE USER', True
EXEC sp_renamedb 'jxgl', '教學管理'
EXEC sp_dboption '教學管理', 'SINGLE USER', False

❹ 如何連接SQLSERVER 2000資料庫

遠程連接sql server 2000伺服器的解決方案

一、 看ping 伺服器IP能否ping通。
這個實際上是看和遠程sql server 2000伺服器的物理連接是否存在。如果不行,請檢查網路,查看配置,當然得確保遠程sql server 2000伺服器的IP拼寫正確。

二 、在Dos或命令行下輸入telnet 伺服器IP 埠,看能否連通。
如telnet 202.114.100.100 1433

通常埠值是1433,因為1433是sql server 2000的對於Tcp/IP的默認偵聽埠。如果有問題,通常這一步會出問題。通常的提示是「……無法打開連接,連接失敗"。
如果這一步有問題,應該檢查以下選項。

1. 檢查遠程伺服器是否啟動了sql server 2000服務。如果沒有,則啟動。

2. 檢查伺服器端有沒啟用Tcp/IP協議,因為遠程連接(通過網際網路)需要靠這個協議。檢查方法是,在伺服器上打開 開始菜單->程序->Microsoft SQL Server->伺服器網路實用工具,看啟用的協議里是否有tcp/ip協議,如果沒有,則啟用它。

3. 檢查伺服器的tcp/ip埠是否配置為1433埠。仍然在伺服器網路實用工具里查看啟用協議裡面的tcp/ip的屬性,確保默認埠為1433,並且隱藏伺服器復選框沒有勾上。
事實上,如果默認埠被修改,也是可以的,但是在客戶端做telnet測試時,寫伺服器埠號時必須與伺服器配置的埠號保持一致。如果隱藏伺服器復選框被勾選,則意味著客戶端無法通過枚舉伺服器來看到這台伺服器,起到了保護的作用,但不影響連接,但是Tcp/ip協議的默認埠將被隱式修改為2433,在客戶端連接時必須作相應的改變。

4. 如果伺服器端操作系統打過sp2補丁,則要對windows防火牆作一定的配置,要對它開放1433埠,通常在測試時可以直接關掉windows防火牆(其他的防火牆也關掉最好)。
5. 檢查伺服器是否在1433埠偵聽。如果伺服器沒有在tcp連接的1433埠偵聽,則是連接不上的。檢查方法是在伺服器的dos或命令行下面輸入
netstat -a -n 或者是netstat -an,在結果列表裡看是否有類似 tcp 127.0.0.1 1433 listening 的項。如果沒有,則通常需要給sql server 2000打上至少sp3的補丁。其實在伺服器端啟動查詢分析器,輸入 select @@version 執行後可以看到版本號,版本號在8.0.2039以下的都需要打補丁。

如果以上都沒問題,這時再做telnet 伺服器ip 1433 測試,將會看到屏幕一閃之後游標在左上角不停閃動。恭喜,馬上可以開始在企業管理器或查詢分析器連接了。

三、 檢查客戶端設置

程序->Microsoft SQL Server -> 客戶端網路使用工具。像在伺服器網路實用工具里一樣,確保客戶端tcp/ip協議啟用,並且默認埠為1433(或其他埠,與伺服器端保持一致就行)。

四、 在企業管理器里或查詢那分析器連接測試

企業管理器->右鍵SQlserver組->新建sqlserver注冊->下一步->寫入遠程IP->下一步->選Sqlserver登陸->下一步->寫入登陸名與密碼(sa,password)->下一步->下一步->完成
查詢分析器->文件->連接->寫入遠程IP->寫入登錄名和密碼(sa,password)->確定

通常建議在查詢分析器里做,因為默認情況下,通過企業管理器注冊另外一台SQL Server的超時設置是4秒,而查詢分析器是15秒。
修改默認連接超時的方法:

企業管理器->工具->選項->在彈出的"SQL Server企業管理器屬性"窗口中,點擊"高級"選項卡->連接設置->在 登錄超時(秒) 後面的框里輸入一個較大的數字

查詢分析器->工具->選項->連接->在 登錄超時(秒) 後面的框里輸入一個較大的數字
通常就可以連通了,如果提示錯誤,則進入下一步。

五、 錯誤產生的原因通常是由於SQL Server使用了"僅 Windows"的身份驗證方式,因此用戶無法使用SQL Server的登錄帳戶(如 sa )進行連接。解決方法如下所示:

1. 在伺服器端使用企業管理器,並且選擇"使用 Windows 身份驗證"連接上 SQL Server。
2. 展開"SQL Server組",滑鼠右鍵點擊SQL Server伺服器的名稱,選擇"屬性",再選擇"安全性"選項卡。

3. 在"身份驗證"下,選擇"SQL Server和 Windows "。

4. 重新啟動SQL Server服務。(在dos或命令行下面net stop mssqlserver停止服務,net start mssqlserver啟動服務,也是一種快捷的方法)。

附註:在連接本地伺服器時,通常使用的是命名管道協議(在伺服器網路實用工具里可以看到啟用的協議有這個),默認埠是445,因此在本地能連通是不能說明什麼問題的,連接遠程伺服器是完全不同的協議)

❺ 用delphi7和ms sql server2005開發資料庫程序時碰到的問題

老兄!操作M$的資料庫還用BDE?比較佩服的說!
強烈要求你改用ADO!無論從效率、安全性和最後產品的分發上來講,操作
SQL
Server
的話,ADO都強過
BDE
很多倍!

❻ Access資料庫與SQL Sever 資料庫區別很大嗎

Access資料庫與SQL Sever 資料庫區別:

1、Access是關聯式資料庫管理系統;SQL Server是一個關系資料庫管理系統

2、Access資料庫數據儲存量小,安全性不夠高,對高強度操作適應性比較差;SQL Server安全性高,真正的客戶機/伺服器體系結構,圖形化用戶界面,使系統管理和資料庫管理更加直觀、簡單,豐富的編程介面工具為用戶進行程序設計提供了更大的選擇餘地。

3、Access資料庫是桌面資料庫系統,而且它可以開發基於自己的桌面資料庫應用(UI),也可以作為前端開發工具與其它資料庫搭配開發應用程序(如SQL Server,DB2,Oracle等);SQL Server資料庫關系資料庫的管理系統,它是一個全面的資料庫平台。

4、Access資料庫部署簡單方便;SQL Server資料庫操作數據比Access較為復雜。

(6)sqlserver資料庫別名擴展閱讀:

ACCESS資料庫特性:使用唯一的別名,傳遞空指針給動態庫,動態庫調用無符號整數,SHIFT和F2鍵調用過程。

SQLserver資料庫特性:

(1)高性能設計,可充分利用WindowsNT的優勢。

(2)系統管理先進,支持Windows圖形化管理工具,支持本地和遠程的系統管理和配置。

(3)強壯的事務處理功能,採用各種方法保證數據的完整性。

(4)支持對稱多處理器結構、存儲過程、ODBC,並具有自主的SQL語言。

網路——SQLserver資料庫

❼ sql server服務,誰能詳細介紹一下

SQL Server FullText Search (MSSQLSERVER):全文檢索服務
如果有全文索引的話要啟動SQL Server FullText Search 沒有的話啟動不啟動沒有影響的

SQL Server Agent 是一個任務規劃器和警報管理器,在實際應用和環境下,您可以將那些周期性的活動定義成一個任務,而讓其在SQL Server Agent 的幫助下自動運行;假如您是一名系統管理員,則可以利用SQL Server Agent 向您通知一些警告信息,來定位出現的問題從而提高管理效率。SQL Server Agent 主要包括以下幾個組件:作業;警報;操作。
主要執行以下步驟在SQL Server Enterprise Manager 中配置SQL Server Agent:

(1) 啟動SQL Server Enterprise Manager, 登錄到指定的伺服器打開Management 文件夾,啟動SQL Server Agent。
(2) 右擊SQL Server Agent 圖標,在彈出菜單中選擇Properties 選項。打開SQL Server Agent Properties 對話框,選中General 標簽頁。如圖17-1 所示。其中各選項的含義為:
System account: 定義SQL Server Agent 運行於哪個系統賬號下,該系統賬號是sysadmin 角色的成員;
This account: 定義SQL Server Agent 運行於哪一個NT 賬號下,該賬號必須是運行SQL Server Agent 伺服器上的sysadmin 角色,選擇此選項,必須在Password處提供密碼。常在下列情況中選中該選項:
把事件轉寄到其它NT 計算機的應用日誌;
如何來創建一個作業,該作業要使用多個計算機上的資源;
通過電子郵件或尋呼通知操作員消息。
Mail Profile 有效的郵件配置文件名,該文件保存通過SQL Mail 為SQL ServerAgent 運行賬號配置的郵件系統正常工作的配置信息;
Save copies of the sent messages in the Sent Items folder: 指定發送消息存放的文件目錄;
File name: 指定SQL Server Agent 日誌文件名,預設名為C:\Mssql7\Log\Sqlagent.out;
Error message pop-up recipient 指定接收網路彈出錯誤消息的接收者名字,這些錯誤消息由SQL Server Agent 寫入它的錯誤日誌。
(3) 選中Advanced 標簽頁
Auto restart SQL Server if it stops unexpectedly :表示如果SQL Server 意外停止運行,則將自動重新啟動;
Auto restart SQL Server Agent if it stops unexpectedly: 表示如果SQL Server Agent意外停止運行,則將自動重新啟動;
Forward events to a different server: 表示將事件轉寄給其它伺服器。在Server 旁的下拉列表中選擇接收伺服器;
Unhandled events: 表示轉寄那些不是在本地伺服器上處理的事件;All 表示所有事件;
If error has severity of or above: 表示只有在錯誤等級大於或等於給定值時,才將事件轉寄給所選伺服器;
Idle CPU(s) Condition: 定義了CPU 空閉狀態的屬性值,即CPU 平均使用率低於給不定期值且該狀態持續的時間超過給定時間,則認為CPU 處於空閉狀態。
4) 選中Alert System 標簽頁
Address formatting for page e-mails: 該區域用來設定消息屬性並在尋呼信息中加入錯誤信息;
Fail-safe operator: 表示失敗安全型操作員,如果由於不確定的原因使消息無法到達指定的操作員,則SQL Server Agent 會把該消息傳給失敗安全型操作員;
(5) 選中Job System 標簽頁
Job history log: 該區域指定日誌的大小以及每件作業的最大行數,從而避免填滿msdb 資料庫;
Job execution: 該區域用來設定在作業執行結束前SQL Server Agent 的最長等待時間,如果超過這一時間作業仍沒有執行,則SQL Server Agent 將關閉;
Non-SysAdmin job step proxy account: 該區域用來設定執行CmdExec 和ActiveScripting
作業的限制。
(6) 選中Connection 標簽頁
SQLServer Connection: 該區域定義了將SQL Server Agent 連接到SQL Server 時使用的認證模式;
SQLServer alias 定義:本地SQL Server 伺服器的別名。
注意:配置完SQL Server Agent之後需要重新啟動,這樣配置才能生效

SQL Server 瀏覽器程序以 Windows 服務的形式運行。SQL Server 瀏覽器偵聽對 MicrosoftSQL Server 資源的傳入請求,並提供計算機上安裝的 SQL Server 實例的相關信息。SQL Server 瀏覽器可用於執行下列操作:

瀏覽可用伺服器列表

連接到正確的伺服器實例

連接到專用管理員連接 (DAC) 端點

SQL Server Browser 服務 (sqlbrowser) 為資料庫引擎和 SSAS 的每個實例提供實例名稱和版本號。SQL Server 瀏覽器隨 SQL Server 一起安裝,為該計算機上運行的早期版本的 SQL Server(從 SQL Server 7.0 開始)提供此服務。

SQL Server 瀏覽器可以在安裝過程中進行配置,也可以使用 SQL Server 配置管理器進行配置。默認情況下,SQL Server Browser 服務會自動啟動:

MicrosoftIntegration Services 是用於生成企業級數據集成和數據轉換解決方案的平台。使用 Integration Services 可解決復雜的業務問題,具體表現為:復制或下載文件,發送電子郵件以響應事件,更新數據倉庫,清除和挖掘數據以及管理 SQL Server 對象和數據。這些包可以獨立使用,也可以與其他包一起使用以滿足復雜的業務需求。Integration Services 可以提取和轉換來自多種源(如 XML 數據文件、平面文件和關系數據源)的數據,然後將這些數據載入到一個或多個目標。

Integration Services 包含一組豐富的內置任務和轉換、用於構造包的工具以及用於運行和管理包的 Integration Services 服務。可以使用 Integration Services 圖形工具來創建解決方案,而無需編寫一行代碼;也可以對各種 Integration Services 對象模型進行編程,通過編程方式創建包並編寫自定義任務以及其他包對象的代碼。

❽ sql server 誇資料庫查詢問題

你先去你要使用的機器上用客戶端工具里建立好這個伺服器的連接,用個別名代表它,比如DB1,埠配置成1049,ip172.16.121.1.然後用這個命令
EXEC sp_addlinkedserver
@server='DB1',--被訪問的伺服器別名
@srvproct='', --sqlserver不需要指定
@provider='SQLOLEDB',
@datasrc='DB1' --要訪問的伺服器

EXEC sp_addlinkedsrvlogin
'DB1', --被訪問的伺服器別名
'false',
NULL,
'dba', --帳號 需要用121.1的登錄密碼
'password' --密碼

然後select * from [DB1].DB_NAME.DBO.TABLE
這就可以查詢到121.1這台伺服器上的數據了。

❾ SQLServer如何完整的修改一個資料庫的名稱

',15,1)
RETURN
--DROP
DATABASE
DB_BEIJING
END
GO
USE
master
GO
--創建測試數庫
CREATE
DATABASE
[DB_BEIJING]
ON
PRIMARY
(
NAME
=
N'DB_BEIJING',
FILENAME
=
N'X:\DATA\DB_BEIJING.mdf'
,
SIZE
=
3072KB
,
FILEGROWTH
=
1024KB
)
LOG
ON
(
NAME
=
N'DB_BEIJING_log',
FILENAME
=
N'W:\Log\DB_BEIJING_log.ldf'
,
SIZE
=
1024KB
,
FILEGROWTH
=
1024KB
)
GO
--以下為修改過程
--step
1
:
修改資料庫名稱
USE
master
GO
ALTER
DATABASE
DB_BEIJING
SET
SINGLE_USER
WITH
ROLLBACK
IMMEDIATE
GO
EXEC
master..sp_renamedb
'DB_BEIJING','DB_SHANGHAI'
GO
ALTER
DATABASE
DB_SHANGHAI
SET
MULTI_USER
GO
--step
2
:
查看修改名稱後的資料庫邏輯名及物理文件名
USE
master
GO
SELECT
name
AS
[Logical
Name],
physical_name
AS
[DB
File
Path],type_desc
AS
[File
Type],
state_desc
AS
[State]
FROM
sys.master_files
WHERE
database_id
=
DB_ID(N'DB_SHANGHAI')
GO
/*
Logical
Name
DB
File
Path
File
Type
State
DB_BEIJING
X:\DATA\DB_BEIJING.mdf
ROWS
ONLINE
DB_BEIJING_log
W:\Log\DB_BEIJING_log.ldf
LOG
ONLINE
*/
--step
3
:
修改資料庫邏輯文件名稱
USE
master
GO
ALTER
DATABASE
DB_SHANGHAI
SET
SINGLE_USER
WITH
ROLLBACK
IMMEDIATE
GO
ALTER
DATABASE
DB_SHANGHAI
MODIFY
FILE
(NAME=N'DB_BEIJING',
NEWNAME=N'DB_SHANGHAI')
GO
ALTER
DATABASE
DB_SHANGHAI
MODIFY
FILE
(NAME=N'DB_BEIJING_log',
NEWNAME=N'DB_SHANGHAI_log')
GO
ALTER
DATABASE
DB_SHANGHAI
SET
MULTI_USER
GO
--step
4
:
修改資料庫物理文件名稱之前先打開xp_cmdshell支持
USE
master
GO
sp_configure
'show
advanced
options',1
GO
RECONFIGURE
WITH
OVERRIDE
GO
sp_configure
'xp_cmdshell',
1
GO
RECONFIGURE
WITH
OVERRIDE
GO
--step
5
:
重命名資料庫物理文件名稱
USE
[master]
GO
ALTER
DATABASE
DB_SHANGHAI
SET
OFFLINE
WITH
ROLLBACK
IMMEDIATE
GO
EXEC
xp_cmdshell
'RENAME
"X:\DATA\DB_BEIJING.mdf",
"DB_SHANGHAI.mdf"'
GO
EXEC
xp_cmdshell
'RENAME
"W:\Log\DB_BEIJING_log.ldf",
"DB_SHANGHAI_log.ldf"'
GO
--step
6
:
將資料庫邏輯名稱指向新的物理文件,並將資料庫online
USE
[master]
GO
ALTER
DATABASE
DB_SHANGHAI
MODIFY
FILE
(NAME
=DB_SHANGHAI,
FILENAME
=
'X:\DATA\DB_SHANGHAI.mdf')
GO
ALTER
DATABASE
DB_SHANGHAI
MODIFY
FILE
(NAME
=DB_SHANGHAI_log,
FILENAME
=
'W:\LOG\DB_SHANGHAI_log.ldf')
GO
ALTER
DATABASE
DB_SHANGHAI
SET
ONLINE
--step
7
:
查看全部修改完成後的資料庫情況
USE
master
GO
SELECT
name
AS
[Logical
Name],
physical_name
AS
[DB
File
Path],type_desc
AS
[File
Type],
state_desc
AS
[State]
FROM
sys.master_files
WHERE
database_id
=
DB_ID(N'DB_SHANGHAI')
GO
/*
Logical
Name
DB
File
Path
File
Type
State
DB_SHANGHAI
X:\DATA\DB_SHANGHAI.mdf
ROWS
ONLINE
DB_SHANGHAI_log
W:\LOG\DB_SHANGHAI_log.ldf
LOG
ONLINE
*/
--step
8
:
關閉xp_cmdshell支持
USE
master
GO
sp_configure
'xp_cmdshell',
0
GO
RECONFIGURE
WITH
OVERRIDE
GO
sp_configure
'show
advanced
options',0
GO
RECONFIGURE
WITH
OVERRIDE
GO

❿ 提供的資料庫別名netdb和時間截記錄表

您好,關於 AspNetDB.mdf由於沒有aspnetdb.mdf資料庫,因此得先建立一個,這個可以通過aspnet_regsql.exe完成,該程序位於C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\下。
1、運行它之後會彈出的窗口:按"Next >"按鈕。
2、我們會發現除了有配置資料庫外,還有刪除資料庫的功能,以後說不定可以派上用場,現在自然選Configure SQL Server for application services,按"Next >"按鈕。
3、現在進入資料庫選擇界面,如果SQLSERVER就安裝在本地的話,可以不用改任何東西,直接按"Next >"。這里的Database顯示為,表示默認資料庫名為aspnetdb,你也可以根據自己的需要更改名稱。