當前位置:首頁 » 操作系統 » 五班資料庫

五班資料庫

發布時間: 2024-04-23 13:59:57

1. 利用SPOT-5遙感影像更新土地利用資料庫技術的探討——以黑龍江省望奎縣為例

王志 魏麗君

(黑龍江省國土資源勘測規劃院,哈爾濱,150056)

摘要:更新土地利用資料庫是國土資源信息化建設的重要內容,是為各級土地管理部門的土地利用變更調查、土地規劃、耕地保護、建設項目用地管理等提供准確、翔實、現勢性的基礎數據。本文具體結合黑龍江省望奎縣資料庫更新的實際情況,著重對利用SPOT-5遙感影像更新土地利用資料庫技術所採用的一些新技術、新方法加以闡述,對更新土地利用資料庫存在的問題加以分析,並且提出解決問題的辦法。

關鍵詞:遙感;土地利用更新;數字正射影像圖;「3S」;望奎縣;黑龍江省

遙感技術應用始於20 世紀50年代,至今已經歷了50 多年的發展。隨著遙感衛星技術的進步,遙感影像解析度得到大幅度的提高,並以速度快、時間短、成本低等許多優勢,在國土資源調查方面已被廣泛應用。特別是在利用遙感技術快速更新土地利用資料庫方面,提供了重要的技術支持。

縣級土地管理是整個土地管理的基礎,由於近年來經濟與社會的高速發展,土地利用基礎圖件在更新上落後於土地利用狀況變化,不能准確、及時地反映土地利用狀況。大大阻礙了經濟、社會發展的需要。在此背景下,應用遙感技術更新土地利用資料庫已迫在眉睫,使用高解析度遙感數據源,結合 GPS 和 GIS 技術實現土地利用資料庫的更新,從而為各級土地管理部門提供准確、翔實、現勢性強的土地利用狀況信息。為此,本文以黑龍江省望奎縣為例,採用 SPOT-5 2.5 m 高解析度衛星遙感數據為信息源,將製作好的1∶1萬遙感數字正射影像圖與土地詳查矢量數據疊加,通過矢量、柵格結合的方法,輔以專家知識、人機交互提取變化信息,將外業調查後的變化信息屬性賦予矢量數據,然後重新建立拓撲關系,生成更新後的土地利用資料庫。

1 項目區的基本情況

望奎縣是黑龍江省以農業為主的一個縣,位於黑龍江省中部,松嫩平原與小興安嶺西南邊緣過渡地帶。地處東經126°10′23″~126°59′00″,北緯46°32′07″~47°08′24″。東南以克音河、諾敏河、呼蘭河三條界河與綏化市、蘭西縣相鄰,西以通肯河為界,與青岡縣相望,北與海倫市接壤。全縣幅員面積2320km2,南北長約62km,東西寬約60km。

望奎縣形狀近似平行四邊形,由於受小興安嶺余脈的影響,地勢東高西低,東西坡降約在千分之一,南北坡降三千分之一左右。最高海拔250.9m,最低點海拔127.8m,絕對高差123.1m,平均海拔167m。地貌類型大體可分三個單元,東部和南部丘陵起伏漫川漫崗,中部過渡地帶微有起伏,西部低窪平坦。

2 總體技術路線

利用遙感影像更新土地利用資料庫,自動化程度較高,能夠及時、真實、客觀地反映土地利用狀況。因此,利用 SPOT-5 2.5 m 遙感影像來更新望奎縣土地利用資料庫,與日常採用的變更方法相比,在總體技術路線上,會有一些新的特點。

2.1 影像土地分類采樣表的建立

總體上來說,項目區域特點不同,比如山區、丘陵、平原、沙漠等,在遙感影像上反映出的地類表徵不同。而且,選擇解析度的高低與影像的時相等各方面,也會影響著遙感影像反映出的地類表徵。因此,建立起一個適合本項目區域的影像土地分類采樣表對於內業解譯、提取變化信息顯得非常重要。土地分類采樣表也就是影像的解譯標志,它是在影像上能直接反映和判別地物信息的影像特徵,它是識別地物屬性的主要依據,包括形狀、大小、圖案、色調、紋理、陰影、位置、布局、解析度等。在望奎縣資料庫更新項目選取法國 SOPT-5遙感影像,通過野外調查確定和地物間的對應關系,藉助有關輔助信息(規劃圖、地形圖等有關資料等),對各類型在影像圖上反映的特徵做出描述,建立起一套有代表性的影像土地分類采樣表,大大方便了內業解譯與變化信息提取工作。圖1為采樣表的一部分。

圖1 影像土地分類采樣表

2.2 「3S」 集成技術在更新土地利用資料庫中的綜合應用

「3 S」集成技術是指 RS (Remote Sensing)、GPS (Global Positioning System)、GIS (Geographical Information System)在平行發展的進程中,逐漸綜合應用的技術,三者的有機結合,構成了一個一體化信息獲取、信息處理、信息應用的技術系統,是一個充分利用各自技術特點的空間技術應用體系,並逐步成為一個實踐性和應用性較強的新學科。

一方面,GPS 測量在 SOPT -5 遙感影像製作(幾何校正配准)中的應用,在SOPT-5 遙感影像上選取明顯地物點,通過外業 GPS 高精度測量來進行影像圖的幾何糾正,製作 1∶1 萬遙感數字正射影像圖;另一方面在 GIS 支持下的土地利用更新,包括數據矢量化編輯、疊加、拓撲關系的建立。在望奎縣土地利用更新過程中,使用的是國產 GIS 軟體,即武漢中地公司開發的 MAPGIS6.5 軟體來進行的土地利用資料庫的更新工作。

2.3 矢量數據與柵格數據相結合,多種信息提取方法並用

矢量數據主要包括土地利用現狀資料庫;柵格數據主要包括1∶1 萬遙感數字正射影像圖和掃描糾正後的土地利用現狀圖。通過矢量數據和柵格數據對比分析,進行矢量化更新,提取變化信息。信息提取方法包括人工目視解譯、計算機自動提取、人工目視解譯與計算機自動提取相結合。本次更新中主要採用的是以人工目視解譯為主,人機互動式進行土地利用資料庫的更新。

2.4 遙感數據與土地利用基礎圖件相結合

充分利用土地利用現狀調查、城鎮地籍調查、行政勘界、建設用地批次用地成果、土地整理、復墾成果以及日常變更數據輔助確定土地利用類型與變化情況,減少外業調查工作量,縮短更新土地利用資料庫的時間。而且,保證了土地利用類型的准確性。

2.5 內業判讀,外業核查的路線

遙感對地觀測僅僅反映了地物的光譜特性,即土地覆蓋的表徵,而土地利用圖反映的是土地利用的狀況,土地覆蓋的變化並非完全代表土地利用的變化。此外,通過人工目視解譯提取出來的變化屬性信息需要外業調查,如零星地物、線狀地物的寬度以及權屬等。因此,需要內、外業相結合確定土地利用類型,這樣可以保證本次更新的徹底性,做到不重不漏,實現土地利用資料庫的全面更新。

3 工作方法

工作方法主要分為四個步驟:①SPOT-5 2.5 m遙感影像處理過程,包括製作1∶1 萬遙感數字正射影像圖;②內業處理過程,包括變化信息提取、外業前圖件製作;③外業調查過程,包括核實變化信息、調查零星地物及線狀地物寬度、權屬界線等;④土地利用資料庫的更新入庫過程。工作流程圖見圖2。

3.1 製作 1∶1 萬遙感數字正射影像圖

衛星遙感數字正射影像圖(Remote Sensing Digital Orthophoto Map,簡稱RSDOM),是利用衛星遙感獲取的具有一定解析度的全色影像及多光譜影像,經幾何糾正及相應的圖像處理後生成的影像數據集,它同時具有地圖的幾何特性和影像特徵。本次遙感影像數據源採用的是法國 SPOT-5 2.5 m 全色影像與10 m 多光譜數據衛星數據,其數據解析度完全滿足資料庫更新的要求。景寬為60km2×60km2,含雲量為零,以整景為單元,利用衛星影像處理軟體 ERDAS,將2.5m 全色影像與10m 多光譜數據融合。由於望奎縣地勢較為平坦,故採用加權乘法的融合方法,其優點是能較好地保留高解析度圖像的紋理信息及多光譜圖像的彩色信息,製作衛星遙感數字正射影像圖。再利用圖像處理軟體 photomapper製作1∶1 萬數字正射影像圖。影像處理技術流程見圖3。

3.2 內業處理

利用國產 GIS 軟體 MAPGIS6.5,建立工程數據,通過矢量數據與柵格數據相結合的方法,通過遙感影像與土地利用矢量數據對比,人機互動式進行資料庫更新。在內業中無法判定的信息,特殊標記出來,在製作外業圖件時同時列印出來,以便通過外業調查來核實土地利用變化狀況。

圖2 資料庫更新工作流程圖

矢量化更新採集包括:①圖形數據的更新採集,採用分層方式進行,分層按《建庫標准》要求,主要包括等高線、水系、道路、行政界線、權屬界線、地類界、其他帶有寬度的線狀地物、零星地物、文字注記等,同時根據建庫軟體的需要,對各主要層次進行細分,以達到不同圖形要素可以明顯區分,在建庫時分別採用;②屬性數據的更新採集,嚴格以外業提供的表格地類屬性為准,大部分屬性通過分類編碼、圖層、實體定義加以區分和自動轉換,再通過幾何圖形的相對位置關系確定其權屬;③圖幅數據的接邊工作,接邊按照規范所規定的原則將相鄰圖幅分割開的同一圖形對象不同部分拼接成完整對象,接邊處理包括圖形接邊和屬性接邊,屬性接邊就是確保相鄰圖幅接邊要素其屬性的一致性。

3.3 外業調查

外業調查是獲取土地現狀信息的關鍵和基礎,如果沒有扎實細致的外業調查工作,即使是最新的遙感影像數據,也無法准確地判讀。另外,項目涉及的合鄉合村權屬界線的調查工作,也必須實地調查。外業調查包括行政界線調查、權屬界線調查、零星地物調查、線狀地物寬度調查、地類調查、調查居民點、用地單位和河流等名稱調查等。依據《土地利用更新調查技術規定》及相關技術規定,按照《全國土地分類》(過渡期間適用)三級分類標准,將所有外業調查信息記錄在「土地利用更新調查記錄手簿」上。

圖3 影像處理技術流程圖

3.4 土地利用資料庫更新

本次更新所採用的資料庫軟體是愛地土地利用管理信息系統。因此,首先修改數據字典,然後修改分幅索引圖數據和行政區索引圖數據,最後將准確的入庫所需要的文件包括零星地物點文件、線狀地物線文件、地類圖斑面文件以及圖廓整飾注記點文件進行入庫,然後進行全縣面積的統計匯總、標准格式的分幅土地利用現狀圖的輸出以及各種土地匯總表格的列印。

4 存在問題與解決方法

項目採用 SPOT-5 遙感影像更新土地利用資料庫,發揮了遙感影像獲取數據速度快、精度高、范圍廣的特點,既縮短調查時間,又保證調查精度、節省調查費用。但在本次更新調查過程中也發現了一些問題,有待於進一步研究和解決。

4.1 影像處理與精度評定

在 SPOT-5 遙感影像處理方面,影像質量應層次豐富、清晰易讀、色調均勻、反差適中。本次項目在影像處理方面雖然滿足了工作要求,但在影像質量上還要有所提高,從長遠來看,如果選用數據源為美國的快鳥,那麼它的解析度為0.61m,與 SPOT-5 2.5m相比解析度高出了4 倍多,這對影像處理質量方面要求更高。它不僅直接影響著變化信息的提取,而且還影響著目視解譯的准確性。所以應該積累經驗,加強在影像處理質量上的提高。

精度評定是對數字正射影像圖製作質量的一個評定標准。精度評定採用外業特徵控制點實測坐標與其影像同名點圖像坐標的較差作為評定參考,可以藉助 GPS 在影像上同名地物點上實地測量坐標,與圖像坐標進行較差分析,這是利用遙感影像更新土地利用資料庫前期的一個重要環節。只有符合國家標准,才可以利用遙感影像來進行更新工作。

4.2 矢量化線狀地物的偏移處理與屏幕矢量採集處理問題

通過矢量、柵格數據結合的方法,將土地利用資料庫與1∶1 萬數字正射影像圖套合更新,出現矢量線狀地物與同名影像上線狀地物偏移的問題。根據國家標准與黑龍江省土地利用更新技術方案要求,在資料庫文件與影像套合時,當矢量線條與影像上的同名線狀地物偏差大於圖上1 mm (相當於 SPOT-5 2.5 m 影像的4個像素)時視為偏移,對偏移的線狀地物應進行糾正,如果偏移的線狀地物不發生寬度、地類碼的變更,可採用線工具中平移、復制等進行糾正處理;如果屬性改變,將通過外業調查核實變化信息。

在此基礎上,通過影像進行屏幕矢量線狀地物偏移處理。與此同時,又涉及到一個屏幕放大倍數的問題,如果在屏幕採集時放大倍數過大,將會出現影像的失真,看不清線狀地物的邊緣輪廓,影響線狀地物的偏移處理位置;但屏幕採集時放大倍數過小,又會出現線狀地物偏移處理不完全,過於粗糙,套合不準確。在項目進行時經過多次實驗,一致認為參照遙感影像矢量化放大倍數標准為 0.9 倍為宜。這樣,既保證了影像的邊緣清晰、不失真效果,又保證了線狀地物偏移處理的完全性。

4.3 資料庫更新的工作量較大

與傳統更新方法相比,利用 SPOT-5 遙感影像更新土地利用資料庫優勢非常的明顯。但是由於涉及前期的准備和外業調查工作量依然很大,在前期提取變化信息時,主要還是採用人工目視解譯。而且,土地利用資料庫還是20世紀90年代初的詳查成果,所以提取變化信息數量較大。本次更新項目提取的變化地塊近兩萬塊,不僅如此,還要通過外業將提取的變化信息一一核實,並且每一個變化信息都要記錄在「土地利用更新調查記錄手簿」上。這個工作量也較大,而且有不可避免的人為誤差存在。所以,在利用遙感影像更新土地利用資料庫同時,應該在此基礎上研究探索,尋求更有效的方法在計算機上進行變化信息的提取,減少外業的工作量,提高數據的准確性。

4.4 完善數據質量檢查機制,資料庫更新進一步規范

數據質量檢查貫穿更新土地利用資料庫項目的始終,是資料庫建設工作中極其重要的組成部分,其工作量占整個建庫工作的60%以上,數據質量檢查是保障資料庫質量的重要工具。質量檢查包括計算機邏輯檢查和人工檢查,主要是針對數據結構和精度進行檢查。本次項目中成立三級質量檢查機制,有小組自檢、一級檢查和二級檢查,為項目的質量保駕護航。

在項目實施的同時,完全參照國家有關標准和要求以及省級出台的有關規范。但是,在項目進行當中,有些比較細致的工作仍無章可循。所以,在更新土地利用資料庫方面還需要進一步規范標准和要求,以便達到數據的共享。

4.5 需要培養一支高素質的土地更新調查隊伍

在項目進行的前期,需要對更新土地利用資料庫隊伍進行強化培訓。因為,更新調查質量好壞決定著更新項目的成敗;而且,土地更新調查涉及到土地管理、地學、土壤學、農學、測繪學、信息學等多門學科,調查人員必須具備上述各學科的理論知識和應用技能,才能保證土地更新調查的質量。

採用 SOPT-5 遙感影像更新土地利用資料庫與傳統方法相比,省時快速、減少人力、節約資金、數據准確,保證了更新調查成果質量,為新一輪土地利用總體規劃修編、農村集體土地登記發證、基本農田保護、土地開發復墾整理、建設用地審批等提供了准確、翔實的數據。而且,遙感技術的應用將會推動土地變更調查工作自動化和土地資源信息化,大大提高土地利用變更調查數據的准確性和及時性,從根本上解決土地利用現狀圖的更新問題。

參考文獻

陳建平.基於「3S」技術的土地利用現狀更新調查.浙江省第二測繪院,2005

周飛.廣西土地利用更新調查資料庫建設作業流程及存在問題初探.廣西測繪,2005 (2)

劉鳳仙,張瑋,陳應輝.縣級土地利用現狀資料庫更新的方法探討.北京:地質出版社,2005

任凌.應用「3S」集成技術進行土地利用動態監測.河南省安陽市國土資源局規劃科,2005

土地利用調查新技術新方法培訓班學習資料.國土資源部幹部教育培訓中心,2005 (9)

王力,尹君等.基於 RS 和 GIS 的土地利用變更研究.國土資源科技管理,2005 (2)

趙愛華,楊鳳海等.「3S」技術在土地生態環境調查中的應用.北京:地質出版社,2005

土地利用更新調查技術規定.國土資源部,2004 (3)

劉順喜.土地資源調查.北京:當代中國出版社,2006

2. sql和MySQL有什麼區別

mssql和mysql的區別
mssql 是微軟的那個 SQL Server,運行於windows 2000,2003等平台

mysql 是個開源的資料庫Server,可運行在windows平台、unix\\linux平台,其標准版是免費的,可以到www.mysql.com 看看

asp\\php只是一種解釋語言,不一定mssql不能用php,也不一定mysql非得用php,只不過asp-mssql,php-mysql是一種常用的組合

SQL資料庫完全手冊_1

SQL是Structured Quevy Language(結構化查詢語言)的縮寫。SQL是專為資料庫而建立的操作命令集,是一種功能齊全的資料庫語言。在使用它時,只需要發出「做什麼」的命令,「怎麼做」是不用使用者考慮的。SQL功能強大、簡單易學、使用方便,已經成為了資料庫操作的基礎,並且現在幾乎所有的資料庫均支持SQL。
##1 二、SQL資料庫數據體系結構
SQL資料庫的數據體系結構基本上是***結構,但使用術語與傳統關系模型術語不同。在SQL中,關系模式(模式)稱為「基本表」(base table);存儲模式(內模式)稱為「存儲文件」(stored file);子模式(外模式)稱為「視圖」(view);元組稱為「行」(row);屬性稱為「列」(column)。名稱對稱如^00100009a^:
##1 三、SQL語言的組成
在正式學習SQL語言之前,首先讓我們對SQL語言有一個基本認識,介紹一下SQL語言的組成:
1.一個SQL資料庫是表(Table)的集合,它由一個或多個SQL模式定義。
2.一個SQL表由行集構成,一行是列的序列(集合),每列與行對應一個數據項。
3.一個表或者是一個基本表或者是一個視圖。基本表是實際存儲在資料庫的表,而視圖是由若干基本表或其他視圖構成的表的定義。
4.一個基本表可以跨一個或多個存儲文件,一個存儲文件也可存放一個或多個基本表。每個存儲文件與外部存儲上一個物理文件對應。
5.用戶可以用SQL語句對視圖和基本表進行查詢等操作。在用戶角度來看,視圖和基本表是一樣的,沒有區別,都是關系(表格)。
6.SQL用戶可以是應用程序,也可以是終端用戶。SQL語句可嵌入在宿主語言的程序中使用,宿主語言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada語言等。SQL用戶也能作為獨立的用戶介面,供交互環境下的終端用戶使用。
##1 四、對資料庫進行操作
SQL包括了所有對資料庫的操作,主要是由4個部分組成:
1.數據定義:這一部分又稱為「SQL DDL」,定義資料庫的邏輯結構,包括定義資料庫、基本表、視圖和索引4部分。
2.數據操縱:這一部分又稱為「SQL DML」,其中包括數據查詢和數據更新兩大類操作,其中數據更新又包括插入、刪除和更新三種操作。
3.數據控制:對用戶訪問數據的控制有基本表和視圖的授權、完整性規則的描述,事務控制語句等。
4.嵌入式SQL語言的使用規定:規定SQL語句在宿主語言的程序中使用的規則。
下面我們將分別介紹:
##2 (一)數據定義
SQL數據定義功能包括定義資料庫、基本表、索引和視圖。
首先,讓我們了解一下SQL所提供的基本數據類型:(如^00100009b^)
1.資料庫的建立與刪除
(1)建立資料庫:資料庫是一個包括了多個基本表的數據集,其語句格式為:
CREATE DATABASE <資料庫名> 〔其它參數〕
其中,<資料庫名>在系統中必須是唯一的,不能重復,不然將導致數據存取失誤。〔其它參數〕因具體資料庫實現系統不同而異。
例:要建立項目管理資料庫(xmmanage),其語句應為:
CREATE DATABASE xmmanage
(2) 資料庫的刪除:將資料庫及其全部內容從系統中刪除。
其語句格式為:DROP DATABASE <資料庫名>
例:刪除項目管理資料庫(xmmanage),其語句應為:
DROP DATABASE xmmanage
2.基本表的定義及變更
本身獨立存在的表稱為基本表,在SQL語言中一個關系唯一對應一個基本表。基本表的定義指建立基本關系模式,而變更則是指對資料庫中已存在的基本表進行刪除與修改。
(1)基本表的定義:基本表是非導出關系,其定義涉及表名、列名及數據類型等,其語句格式為:
CREATE TABLE〔<資料庫名>.〕<表名>
(<列名> 數據類型 〔預設值〕 〔NOT NULL / NULL〕
〔,<列名> 數據類型 〔預設值〕 〔NOT NULL / NULL〕〕......
〔,UNIQUE (列名〔,列名〕......)〕
〔,PRIMARY KEY(列名)〕
〔,FOREIGN KEY(列名〔,列名〕......)REFERENCE <表名>(列名〔,列名〕......)〕
〔,CHECK(條件)〕 〔其它參數〕)
其中,〈資料庫名〉.〕指出將新建立的表存放於該資料庫中;
新建的表由兩部分組成:其一為表和一組列名,其二是實際存放的數據(即可在定義表的同時,直接存放數據到表中);
列名為用戶自定義的易於理解的名稱,列名中不能使用空格;
數據類型為上面所介紹的幾種標准數據類型;
〔NOT NULL/NULL〕指出該列是否允許存放空值,SQL語言支持空值的概念,所謂空值是「不知道」或「無意義」的值,值得注意的是數據「0」和空格都不是空值,系統一般默認允許為空值,所以當不允許為空值時,必須明確使用NOT NULL;
〔,UNIQUE〕將列按照其規定的順序進行排列,如不指定排列順序,則按列的定義順序排列;
〔PRIMARY KEY〕用於指定表的主鍵(即關系中的主屬性),實體完整性約束條件規定:主鍵必須是唯一的,非空的;
〔,FOREIGN KEY (列名〔,列名〕......) REFERENCE<表名>(列名〔,列名〕......)〕是用於指定外鍵參照完整性約束條件,FOREIGN KEY指定相關列為外鍵,其參照對象為另外一個表的指定列,即使用REFERENCE引入的外表中的列,當不指定外表列名時,系統將默認其列名與參照鍵的列名相同,要注意的是:使用外鍵時必須使用參照,另外數據的外鍵參照完整性約束條件規定:外鍵的值要麼與相對應的主鍵相同,要麼為空值(具體由實現系統不同而異)
〔,CHECK〕用於使用指定條件對存入表中的數據進行檢查,以確定其合法性,提高數據的安全性。
例:要建立一個學生情況表(student)
CREATE TABLE student //創建基本表student
(st_class CHAR(8),// 定義列st_class班級,數據類型為8位定長字元串
st_no CHAR(10) NOT NULL,//定義列st_no學號,類型為10位定長字元串,非空
st_name CHAR(8) NOT NULL,//定義列st_name姓名,類型為8位定長字元串,非空
st_sex CHAR(2),//定義列st_sex性別,類型為2位定長字元串
st_age SMALLINT,//定義列st_age年齡,類型為短整型
PRIMARY KEY (st_no))//定義st_no學號為主鍵。
例:要建立課程設置表(subject)
CREATE TABLE subject//創建基本表subject
(su_no CHAR(4) NOT NULL,// 定義列su_no課號,類型為4位定長字元串,非空
su_subject CHAR(20) NOT NULL,// 定義列su_subject課程名,類型為20位定長字元串,非空
su_credit INTEGER,// 定義列su_credit學分,類型為長整數
su_period INTEGER,//定義列su_period學時,類型為長整數
su_preno CHAR(4),//定義列su_preno先修課號,類型為4位定長字元串
PRIMARY KEY(su_no))//定義su_no課號為主鍵。
例:要建立學生選課表(score)
CREATE TABLE score //創建基本表score
(st_no CHAR(10),//定義列st_no學號,類型為10位定長字元串
su_no CHAR(4),//定義列su_no課號,類型為4位定長字元串
sc_score INTEGER NULL,//定義列sc_score,類型為長整形,可以為空值
FOREIGN KEY (st_no) REFERENCE student,//從表student中引入參照外鍵st_no,以確保本表與表student的關聯與同步
FOREIGN KEY (suno) REFERENCE subject)//從表subject中引入參照外鍵su_no,以確保本表與表subject的關聯與同步
(2)基本表的刪除:用以從資料庫中刪除一個基本表及其全部內容,其語句格式為:
DROP TABLE〔<資料庫名>.〕表名
例如:將上面建立的表都刪除
DROP TABLE student,subject,score
(3)基本表的修改:在基本表建立並使用一段時間後,可能需要根據實際要求對基本表的結構進行修改,即增加新的屬性或刪除屬性。

增加屬性的語句格式為:
ALTER TABLE 〔<資料庫名>.〕表名 ADD
(<列名> 數據類型 〔預設值〕 〔NOT NULL / NULL〕
〔,<列名> 數據類型〔預設值〕〔NOT NULL / NULL〕〕......
〔,UNIQUE (列名〔,列名〕......)〕
〔,PRIMARY KEY(列名)〕
〔,FOREIGN KEY(列名〔,列名〕......) REFERENCE <表名>(列名〔,列名〕......)〕
〔,CHECK(條件)〕〔其它參數〕)
例如:在基本表student中加入列stborn出生日期,數據類型為DATE,且不能為空值
ALTER TABLE student ADD (stborn DATE NOT NULL)
刪除屬性的語句格式為:
ALTER TABLE 〔<資料庫名>.〕表名 DROP
( <列名> 數據類型 〔預設值〕〔NOT NULL / NULL〕
〔,<列名> 數據類型 〔預設值〕〔NOT NULL / NULL〕〕......)
例如:將基本表student中的列st_age刪除
ALTER TABLE student DROP (st_age)
3.視圖定義與刪除
在SQL中,視圖是外模式一級數據結構的基本單位。它是從一個或幾個基本表中導出的表,是從現有基本表中抽取若乾子集組成用戶的「專用表」。這種構造方式必須使用SQL中的SELECT語句來實現。在定義一個視圖時,只是把其定義存放在系統的數據中,而並不直接存儲視圖對應的數據,直到用戶使用視圖時才去求得對應的數據。
(1)視圖的定義:定義視圖可以使用CREATE VIEW語句實現,其語句格式為:
CREATE VIEW 視圖名 AS SELECT語句
從一個基本表中導出視圖:
例:從基本表student中導出只包括女學生情況的視圖
CREATE VIEW WOMANVIEW AS //創建一個視圖WOMANVIEW
SELECT st_class,st_no,st_name,st_age //選擇列st_class,st_no,st_name,st_age顯示
FROM student //從基本表student引入
WHERE st_sex=『女』//引入條件為性別為「女」,注意字元變數都使用單引號引用
從多個基本表中導出視圖:
例如:從基本表student和score中導出只包括女學生且分數在60分以上的視圖
CREATEVIEW WOMAN_SCORE AS //定義視圖WOMANSCORE
SELECT student.st_class,student.st_no,student.st_name,student.st_age,score.sc_score //有選擇性顯示相關列
FROM student.score //從基本表student和score中引入
WHERE student.st_sex=『女』AND score.sc_score>=60 AND student.st_no=score.st_no //選擇條件:性別為「女」 且分數在60分以上。並使用st_no將兩表聯系起來。
以後如果進行這一視圖的應用,則只需使用語句
SELECT * FROM WOMAN_SCORE //其中「*」為通配符,代表所有元素
(2)視圖的刪除:用於刪除已不再使用的視圖,其語句格式如下:
DROP VIEW 視圖名
例:將上面建立的WOMAN_SCORE視圖刪除
DROP VIEW WOMAN_SCORE
4.索引的定義與刪除
索引屬於物理存儲概念,而不是邏輯的概念。在SQL中拋棄了索引概念,直接使用主鍵概念。值得一提的是,有些關系DBMS同時包括索引機制和主鍵機制,這里我們推薦使用主鍵機制,因為它對系統資源佔用較低且效率較高。
(1)索引的定義:索引是建立在基本表之上的,其語句格式為:
CREATE 〔UNIQUE〕 INDEX 索引名 ON
〔<資料庫名>.〕表名(列名 〔ASC/DESC〕〔,列名 〔ASC/DESC〕〕......)
這里,保留字UNIQUE表示基本表中的索引值不允許重復,若預設則表示索引值在表中允許重復;DESC表示按索引鍵降序排列,若預設或ASC表示升序排列。
例:對基本表student中的st_no和st_age建立索引,分別為升序與降序,且索引值不允許重復
CREATE UNIQUE INDEX STINDEX ON//創建索引STINDEX
student(st_no ASC,st_age DESC)//對student中的st_no和st_age建立索引
(2)索引的刪除:
DROP INDEX 索引名
例:刪除上面建立的索引STINDEX
DROP INDEX STINDEX
##2 (二)數據查詢
SQL是一種查詢功能很強的語言,只要是資料庫存在的數據,總能通過適當的方法將它從資料庫中查找出來。SQL中的查詢語句只有一個:SELECT,它可與其它語句配合完成所有的查詢功能。SELECT語句的完整語法,可以有6個子句。完整的語法如下:
SELECT 目標表的列名或列表達式集合
FROM 基本表或(和)視圖集合
〔WHERE條件表達式〕
〔GROUP BY列名集合
〔HAVING組條件表達式〕〕
〔ORDER BY列名〔集合〕…〕
整個語句的語義如下:從FROM子句中列出的表中,選擇滿足WHERE子句中給出的條件表達式的元組,然後按GROUPBY子句(分組子句)中指定列的值分組,再提取滿足HAVING子句中組條件表達式的那些組,按SELECT子句給出的列名或列表達式求值輸出。ORDER子句(排序子句)是對輸出的目標表進行重新排序,並可附加說明ASC(升序)或DESC(降序)排列。

3. 誰可以幫忙做下這個題目呀 資料庫課程設計

資料庫課程設計報告
計網0831資料庫課程設計
1、數據的導入和導出今天是資料庫實習的第一天,對於我們來說資料庫雖然是今年剛剛學過的課程,但是我們已經考試完一段時間了,所以也很久沒有翻書本了,很多知識在剛剛做的時候還是很陌生的,不得不翻一下書本,下面就是在第一天實習中所產生的問題報告和分析結果。
在做實訓前,老師先給我們講了資料庫如何導入EXCL表,在老師的指導下我們學會了,為創建表提供了方便。
首先我們是建立了一個新的KCSJ資料庫,建立的數據語句如下:
用SQL語句在D:\KCSJ下創建課程設計資料庫(KCSJ)
(一)CREATE DATABASE KCSJ
ON
(NAME=KCSJ_DATA,
FILENAME='D:\KCSJ_DATA.MDF')
LOG ON
(NAME=KCSJ_LOG,
FILENAME='D:\KCSJ_LOG.LDF')
將KCSJ.XLS文件中的數據導入KCSJ資料庫中。導入後在資料庫中將生成以下五個基本表:
學生(學號,姓名,性別,年齡,入學成績,班級,籍貫)
成績(學號,課程號,成績)
課程(課程號,課程名,教師名)
三角形(a,b,c,s)
迴文數(A1,A2)
其中:a> 學生、成績、課程、三角形、迴文數是表的名字。
b> 學號、姓名、性別、班級、籍貫、課程名和教師名為字元型,長度分別為10 、10、2、6、8、20、10;
c> 入學成績為整型。
d> 年齡、課程號和成績為整型或微整型。
e> A1為整型;A2為字元型,長度為2。
f> a、b、c為float類型,代表三角形的三邊,s為float類型,代表三角形的面積。
在導入資料庫中KCSJ.XLS文件的數據導入的時候是在所有任務--導入數據—數據源為excel97-2000- 文件位置—導入表中的數據—修改類型和長度 最後確定。
用企業管理器創建資料庫(JW0831),將KCSJ資料庫中的五個表導入該資料庫中。
打開所有任務 導入數據源 選擇KSCJ 資料庫 下一步 再選擇jw0831資料庫 選擇所有 確定 就可以將KCSJ資料庫中的五個表導入該資料庫中。
簡單的結構化查詢
--(1)查詢學生的詳細記錄
select*from 學生
--(2)查詢學生表中前兩個班級(班級名稱不能重復)
select top 2 班級 from 學生
group by 班級
在做本題的時候,由於想的比較復雜,外加題意有點模糊,所以轉了很大一個圈,並在老師的側外指導下通過group by分組才把本題做了出來。
--(3)顯示把 成績表中各科學生的成績加 20 分後的信息
select*from 成績
where 成績='成績'+20
在做本題的時候,由於題意理解錯誤,所以我先用updata語句來進行更新,但是在做到其它題的時候,聽到老師在指導其它同學的時候,把題意一說,我才恍然大悟,自己的方向又錯了。然後又重新思考,接著就做出了上面的答案。
--(4)查詢來自逗寧波地 學生的學號、姓名、籍貫
select 學號,姓名,籍貫 from 學生
where 籍貫='寧波'
--(5)查詢選修4號課程且考試成績在70分以上的學生的學號以及所選修的課程號和成績,顯示前3條結果記錄
select top 3*from 成績
where 成績>=70 and 課程號='4'
--(6)查詢入學成績在 300-400 分之內的學生的詳細情況,並按入學成績降序排序 ( 用兩種方法完成 )
select * from 學生
where 300<入學成績 and 入學成績<400 order by 入學成績 desc
select * from 學生
where 入學成績 between 300 and 400 order by 入學成績 desc
--(7)統計學生表中的學生人數
select count(*)from 學生
對於今天的題目做的多了,忽然發現很多題的類型都差不多,都是運用基本的書本知識,然後融會貫通,舉一反三,然後不費吹灰之力就做出來了,我說的不費吹灰之力是簡單的,但是有些還是費了好大一番功夫的。
--(8)查詢學生表中姓李,姓名列包含兩個字的學生的基本情況
select * from 學生
where 姓名 like '李_'
--(9)查詢名字中第 2 個字為『北'的學生的基本信息
select * from 學生
where 姓名 like '_北%
在做這幾道題的時候,我解決了並也明白了—和%得區別和用途
--(10)查詢選修 4 號課程,成績在 80-90 分之間的學生學號和成績
select*from 成績
where 80<=成績 and 成績<90 and 課程號='4'
--(11)查詢 JW0831 班和 JW0551 班學生的姓名、性別及班級(用謂詞查詢 in )
select 姓名,性別,班級 from 學生 where 班級 in('JW0831','JW0551')
group by 姓名,性別,班級
對於本道題拿到的時候,還是愣了一下的,因為我忽然不知道什麼是,對於用謂詞查詢 in,自己不會用,在翻書翻了一遍並且詢問了同學才發現如何去用它。
--(12)查詢缺少成績的學生的學號和相應的課程號
select 學號,課程號 from 成績
where 成績 is NULL
--(13)統計選修了4號課程學生人數
SELECT COUNT(*)AS'人數' FROM 成績 where 課程號='4'
--(14)查詢JW0831班家在河北學生的學號、姓名、性別
select 學號,姓名,性別 from 學生
where 籍貫='河北'and 班級='JW0831'
--(15)檢索劉志生老師所授課程的課程號和課程名。
select 課程號,課程名 from 課程
where 教師名='劉志生'
---(16)檢索年齡大於23歲的男學生的學號和姓名。
select 學號,姓名 from 學生
where 性別='男' and 年齡>23
--(17)查詢學生表中姓李的學生的基本情況
select *from 學生
where 姓名 like '李%'
--(18) 統計學生表中所有學生逗入學成績地的平均分、最高分、最低分
select AVG(入學成績) as'平均成績',max(入學成績) as'最高分',min(入學成績) as'最低分'from 學生
--(19)查詢選修了1號或者3號課程,成績及格的學生的學號和成績
select 學號,成績 from 成績
where 成績>=60 and 課程號 in (1,3)
--(20)統計學生表中所有男女生人數
SELECT 性別, COUNT(性別)AS'人數' FROM 學生
group by 性別
對於今天的題除了自己不太熟悉課本知識和同學討論出來的那些分析外,對於其他的題已經沒有什麼問題了,因為我把今天的題做完之後,把報告寫完的同時,對於明天的題我也進行了一番思考,並且還幫助其他同學解決了一些不會的問題。
星期二 天氣 冷 心情 good

3、復雜的結構化查詢
--(1)檢索至少選修劉志生老師所授課程中一門課程的女學生姓名。
select 學生.學號,姓名,性別,課程.課程號 from 學生,成績,課程
where 性別='女' and 課程.課程號 in(select 課程號 from 課程 where 教師名='劉志生')and 學生.學號=成績.學號
and 課程.課程號=成績.課程號
對於今天的課程設計不是像昨天一樣那麼簡單了,簡直是提高了一個很大的層次,簡直是一步三晃啊!不容易啊!就像本題一樣,在查詢的時候要用一個子查詢和三個條件才能把它做出來!
--(2)檢索吳計算同學不學的課程的課程號。
select 課程號 from 課程 where 課程號 not in(select 成績.課程號 from 成績,學生where 姓名='吳計算' and 成績.學號=學生.學號)
在本題中,用的方法還真是一波三折啊!因為如果要查不學的課程,要先查出他學的課程,然後再排掉學過的!充分運用了not in這個語法
--(3)檢索至少選修四門課程的學生學號。
select 學號, count(成績.學號)as '門數' from 成績,課程 where 成績.課程號=課程.課程號
group by 成績.學號
having count(成績.學號)>=4
對於本題的用的是count做統計這個數據語句,外加可以用在group by 語句後的having條件語句。通過本題的聯系,可以很好的運用count 和having語句
--(4)檢索全部學生都選修的課程的課程號與課程名。
select 課程.課程名 ,課程.課程號 from 成績,課程
where 成績.課程號=課程.課程號
group by 課程.課程名,課程.課程號
having count(成績.學號) in (select count(學生.學號)from 學生)
--(5)檢索選修課程包含劉志生老師所授課的學生學號。
select 學號 from 成績,課程
where 教師名='劉志生'and 成績.課程號=課程.課程號
--(6)統計有學生選修的課程門數。
select 學號, count(成績.學號)as '門數' from 成績,課程 where 成績.課程號=課程.課程號
group by 成績.學號
--(7)求選修4號課程的學生的平均年齡。
select AVG(年齡)as'平均年齡',成績.課程號 from 學生,成績
where 課程號='4' and 學生.學號=成績.學號
group by 成績.課程號
--(8)求劉志生老師所授課程的每門課程的學生平均成績。
select avg(成績.成績)as'平均成績',課程.課程號 from 成績,課程
where 教師名='劉志生' and 成績.課程號=課程.課程號
group by 課程.課程號
--(9)統計每門課程的學生選修人數(超過6人的課程才統計)。要求輸出課程號和選修人數,查詢結果按人數降序排列,若人數相同,按課程號升序排列。
select 成績.課程號, count(成績.學號)as '人數' from 成績,課程
where 成績.課程號=課程.課程號
group by 成績.課程號
having count(成績.學號)>=6
order by count(成績.學號) asc
--(10)檢索學號比陸力利同學大,而年齡比他小的學生姓名。
select 學號,姓名 from 學生
where 學號>(select 學號 from 學生 where 姓名='陸力利') and 年齡<(select 年齡 from 學生 where 姓名='陸力利'
--(11)求年齡大於女同學平均年齡的男學生姓名和年齡。
select 姓名,年齡 from 學生
where 性別='男'and 年齡>(select avg(年齡)as'平均年齡'from 學生 where 性別='女')
--(12)統計學生人數超過 5人的班級名稱和對應的人數
select 班級,count(學生.學號)as '人數'from 學生
group by 班級
having count(學生.學號)>=5
--(13)檢索課程號和選修人數,查詢結果按人數升序排列,若人數相同,按課程號降序排列。
select 成績.課程號, count(成績.學號)as '人數' from 成績,課程
where 成績.課程號=課程.課程號
group by 成績.課程號
order by count(成績.學號) asc,成績.課程號 desc
這道題運用很多知識點,不但用了count 統計 還用了 group by 分組 外加排序
--(14)查詢選修課程學生的學號、姓名、所選課程號、取得的成績
select 學生.學號,學生.姓名,成績.課程號,成績.成績 from 學生,成績
where 學生.學號=成績.學號
--(15)查詢學生的學號、課程號和成績等級
select 學號,課程號,成績,(
CASE
WHEN 成績>=90 and 成績<=100 THEN 'A'
WHEN 成績>=80 and 成績<90 THEN 'B'
WHEN 成績>=70 and 成績<80 THEN 'C'
WHEN 成績>=60 and 成績<70 THEN 'D'
ELSE 'E'
END ) as 等級
from 成績
本題運用了一個新的知識點,這個知識點是在老師的ppt課件上找到的,利用這個語句何以很好很方便的為管理系統中的成績分等級,所以在本體中一定要記住本語句的語法如:case when……and then ……else end
今天小結,通過今天一天的課程設計,我覺得我收獲了很多,因為它讓我以前學的不太好的知識點全部都鞏固了一遍,尤其是成績、課程、學生這些表與表的鏈接,每次不是這里連不上就是那裡連不上,但是現在不但可以連上了,還可以幫助其他同學檢查出來錯誤,真是一筆不小的收獲,雖然今天做的題比較難,但是每一次在自己的努力下做出來都會有不小的成就感……
3、復雜的結構化查詢
星期三 天氣 冷 心情 good
外面飄著雪花,美好的一天又已經開始了!實習已經到了一半,離回家的日子也近了很多,所以心情也是越實習越好了!今天的工作當然也完成的比較順利!雖然有的還挺難的!但是相信自己一定就會成功!嘿嘿……看看自己的勞動成果就知道了!
3、復雜的結構化查詢
--(16)查詢選修了英語的學生的姓名和成績;
select 學生.姓名,成績.成績 from 成績,學生,課程
where 課程.課程名='英語'and 學生.學號=成績.學號 and 課程.課程號=成績.課程號
group by 學生.姓名,成績.成績
--(17)分別統計每個班級的男女人數(要求顯示出班級、性別、對應的人數)
SELECT 班級, 性別, COUNT(性別)AS'人數' FROM 學生
group by 班級,性別
--(18)求年齡大於所有女同學年齡的男學生姓名和年齡。
select 姓名,年齡 from 學生
where 性別='男'and 年齡>(select max(年齡) from 學生 where 性別='女')
group by 姓名,年齡

--(19)計算選修了1號課程的學生的平均成績(要求顯示出課程號和對應的平均成績)
select 課程號,avg(成績)as'平均成績'from 成績
where 課程號='1'
group by 課程號

--(20)查詢選修課程學生的學號、姓名、所選課程名、取得的成績
select 學生.學號,姓名,課程.課程名,成績.成績 from 學生,成績,課程
where 學生.學號=成績.學號 and 課程.課程號=成績.課程號
--(21)查詢學生的學號、姓名、性別及所選修各門課程的成績(要求每位學生用一個數據行顯示這些信息)

SELECT 學生.學號, 學生.姓名,學生.性別,
(select 成績 from 成績 where 課程號='1' and 學生.學號=學號) as '數學',
(select 成績 from 成績 where 課程號='2' and 學生.學號=學號) as '英語',
(select 成績 from 成績 where 課程號='3' and 學生.學號=學號) as '計算機基礎',
(select 成績 from 成績 where 課程號='4' and 學生.學號=學號) as '資料庫',
(select 成績 from 成績 where 課程號='5' and 學生.學號=學號) as '政治',
(select 成績 from 成績 where 課程號='6' and 學生.學號=學號) as '體育'

FROM 學生 INNER JOIN 成績 ON 學生.學號=成績.學號
GROUP BY 學生.學號, 學生.姓名,學生.性別
--(22)查詢李路路所學的課程名和對應的成績,並按照成績升序排列。
select 姓名,課程名,成績 from 學生,課程,成績
where 姓名='李路路'and 課程.課程號=成績.課程號 and 學生.學號=成績.學號
order by 成績

--(23)查詢平均成績大於 75 分的課程,要求顯示課程名和平均成績。
select 課程名,avg(成績)as'平均成績' from 課程,成績
where 課程.課程號=成績.課程號
group by 課程名
having avg(成績)>=75
--(24)查詢所選課程平均成績前三名的那些學生的姓名和平均成績。
select top 3 學生.學號,姓名,avg(成績.成績)as'平均成績'from 成績,學生 where 學生.學號=成績.學號 group by 學生.學號,姓名 order by avg(成績.成績) desc

--(25)查詢和李工業在同一個班級的學號和姓名
select 學號,姓名 from 學生
where 班級 in (select 班級 from 學生 where 姓名='李工業')

--(26)查詢JW0831班中入學成績比李里高的學生的姓名
select 姓名 from 學生
where 班級='JW0831' and 入學成績>(select 入學成績 from 學生 where 姓名='李里')

--(27)在學生表中查詢高於入學成績平均分的學生學號、姓名、班級、入學成績
select 學號,姓名,班級,入學成績 from 學生
where 入學成績>(select avg(入學成績)as'平均成績'from 學生)

--(28)查詢沒有選修課程的學生的學號和姓名
select 學生.學號,學生.姓名 from 學生
where 學號 not in(select 學號 from 成績 group by 學號 )

--(29)查詢選修了 5(含5) 門以上課程的學生的姓名。
select 姓名 from 學生,成績,課程 where 成績.課程號=課程.課程號 and 學生.學號=成績.學號
group by 成績.學號,姓名
having count(成績.學號)>=5
--(30)查找同名同姓的學生信息。
select a1.* from 學生 a1,學生 a2
where a1.姓名=a2.姓名 and a1.學號<>a2.學號
星期四 天氣 冷 心情 good
數據管理
--(1)利用學生表創建一個新表(不含數據):優秀(學號,姓名,性別),
--然後在學生表中檢索每一門課程成績都大於等於80分的學生學號、姓名和性別,
--並把檢索到的值送往優秀表中。
select 學號,姓名,性別 into 優秀 from 學生
where 5>6
insert into 優秀 select 學號,姓名,性別 from 學生 where 學號 in (select 學號 from 成績 group by 學號 having min(成績)>=80 )

--(2)把李路路同學的選課和成績全部刪去。
delete from 成績
where 成績 in(select 成績 from 學生,成績 where 學生.學號=成績.學號 and 姓名='李路路')
--(3)把低於總平均成績的女同學成績提高5%。
UPDATE 成績 SET 成績=成績*(1+0.05) WHERE 成績<(select avg(成績.成績)as'平均成績'from 成績) and 學號 in(select 學號 from 學生 where 性別='女')
--(4)把選修數學課不及格的成績全改為空值。
UPDATE 成績 SET 成績=null WHERE 成績<60 AND 課程號=(select 課程號 from 課程 where 課程名='數學')
--(5)在成績表修改4號課程的成績,若成績小於等於75分時提高5%,若成績大於75分時提高4%(用兩個UPDATE語句實現)。
UPDATE 成績 SET 成績=成績*0.5 WHERE 成績<=75 and 課程號='4'
UPDATE 成績 SET 成績=成績*0.4 WHERE 成績>75 and 課程號='4'
--(6)將選修4號課程且成績沒有及格的學生的成績調整為 60 分。
UPDATE 成績 SET 成績=60 WHERE 成績<60 AND 課程號='4'
自定義函數的使用
編寫一函數(hws),判斷一個整數是否為迴文數,若是函數值為逗是地,否則為逗否地,利用該函數判斷迴文數基本表中A1列的整數是否為迴文數,若是,則A2列的值為逗是地,否則為逗否地。
create function hws(@A1 int)
returns char(2)
as
begin
declare @y int,@r int,@c char(2),@z int
select @y=0,@z=@A1
while @A1!=0
select @r=@A1%10,@y=@y*10+@r,@A1=@A1/10
if @y=@z
set @c='是'
else
set @c='否'
return @c
end
update 迴文數 set A2=dbo.hws(A1)。
星期五 天氣 冷 心情 good
游標的使用
利用游標可以訪問單獨數據行的特點,逐一對三角形基本表中的數據行(三條邊)進行處理,求三角形的面積。
Declare yb cursor
For
Select*from 三角形
Declare @a float,@b float,@c float,@p float,@s float
Open yb
Fetch next from yb into @a,@b,@c,@s
While @@fetch_status=0
Begin
If @a+@b>@c and @a+@c>@b and @b+@c>@a
select @p=(@a+@b+@c)/2.0,@s=round(sqrt(@p*(@p-@a)*(@p-@b)*(@p-@c)),2)
else
set @s=null
update 三角形 set s=@s where current of yb
fetch next from yb into @a,@b,@c,@s
end
close yb
deallocate yb

心得體會
時光匆匆,一個星期的實習已經接近尾聲了,對於本次的實習心情就是輕松加愉快,收獲也是碩果累累,在老師的安排下,實習的過程是根據每天老師給的任務,按時完成作業然後再把報告寫完根據規劃每天都有條不絮的干著自己的事情,對於我是一個不會安排時間的人,生活中重來沒有規劃,所以事情每次幹完不是緊一陣就是松一陣的,所以通過這次實習中在老師的安排下,自己也懂得了安排時間的重要性,也從中吸取到了一些經驗。
在本次實習中我不僅把本學期學習的資料庫基本知識進行了點到點的復習,也把它進行了鞏固,在原來沒有學好的地方通過本次的實習學的比以前學的更好,不僅如此,我們在做課程設計的時候還學會了獨自的思考和協作,有些知識點我們運用的不是很好,但是後面再老實的幫助和在同學的探討下,最後都把它解決了出來。除此之外,我也感覺到實習並不是因為完成任務而實習,它是為了讓我們更好的掌握知識,並把知識運用到生活中去的,就像藝術一樣,源於生活,而應用於生活一樣。資料庫的學習,也是為了以後生活中方便自己方便他人而學習的。
由於每天緊張的課程,一路都是匆匆來匆匆去,所以一個班同學的交流也是很少的,通過實習所以同學之間交流的機會也就比較多了一點,比才的感覺也因此增進了不少,以上就是本次在實習中所得到的心得,至於沒有感受到的,將在以後的生活中再次的吸取生活中的經驗。來進行學習中的總結。

4. 創建資料庫的五個屬性

創建資料庫的五個屬性:比如學生表存學號,姓名、年齡、性別、班級等。

選擇開始菜單中→程序→【Management SQL Server 2008】→【SQL Server Management Studio】命令,打開【SQL Server Management Studio】窗口,並使用Windows或 SQL Server身份驗證建立連接。

在【對象資源管理器】窗口中展開伺服器,然後選擇【資料庫】節點,右鍵單擊【資料庫】節點,從彈出來的快捷菜單中選擇【新建資料庫】命令。

非關系型資料庫:

隨著近些年技術方向的不斷拓展,大量的NoSql資料庫如MongoDB、Redis、Memcache出於簡化資料庫結構、避免冗餘、影響性能的表連接、摒棄復雜分布式的目的被設計。

指的是分布式的、非關系型的、不保證遵循ACID原則的數據存儲系統。NoSQL資料庫技術與CAP理論、一致性哈希演算法有密切關系。所謂CAP理論,簡單來說就是一個分布式系統不可能滿足可用性、一致性與分區容錯性這三個要求。

以上內容參考:網路-資料庫

5. 資料庫是什麼

資料庫,可視為電子化的文件櫃,即存儲電子文件的處所。

所謂「資料庫」是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗餘度、與應用程序彼此獨立的數據集合。在資料庫中,用戶可以對文件中的數據進行新增、查詢、更新、刪除等操作。

因為使用io流文件存儲數據有很多弊端如文件存儲數據存儲效率低、不管存還取操作都較麻煩、一般只能保存小量字元串數據等。為了解決這些弊端,才有資料庫的出現,使用資料庫存儲數據就可以很好的解決這些弊端。

(5)五班資料庫擴展閱讀:

資料庫的結構:

一個資料庫由一個或一組數據表組成。每個資料庫都以文件的形式存放在磁碟上,即對應於一個物理文件。不同的資料庫,與物理文件對應的方式也不一樣。

對於dBASE,FoxPro和Paradox格式的資料庫來說,一個數據表就是一個單獨的資料庫文件,而對於Microsoft Access、Btrieve格式的資料庫來說,一個資料庫文件可以含有多個數據表。

資料庫中的數據是以表為單位進行組織的。一個表是一組相關的按行排列的數據;每個表中都含有相同類型的信息。表實際上是一個二維表格,例如,一個班所有學生的考試成績,可以存放在一個表中,表中的每一行對應一個學生,這一行包括學生的學號,姓名及各門課程成績。

參考資料來源:網路-資料庫

熱點內容
啟用java 發布:2024-05-04 11:51:46 瀏覽:968
mac下開發php 發布:2024-05-04 11:28:53 瀏覽:627
java介面及實現方法 發布:2024-05-04 11:05:08 瀏覽:566
iphone怎麼清理應用緩存 發布:2024-05-04 11:05:02 瀏覽:409
rest上傳文件 發布:2024-05-04 11:03:19 瀏覽:281
情侶玩游戲解壓視頻 發布:2024-05-04 11:00:57 瀏覽:778
c文件夾大小 發布:2024-05-04 10:54:35 瀏覽:677
回憶源碼 發布:2024-05-04 10:28:20 瀏覽:235
mmm源碼 發布:2024-05-04 09:57:29 瀏覽:262
清除後台緩存的軟體 發布:2024-05-04 09:57:22 瀏覽:833