国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

數(shù)據(jù)庫原理 頭歌實訓 數(shù)據(jù)庫常用對象

這篇具有很好參考價值的文章主要介紹了數(shù)據(jù)庫原理 頭歌實訓 數(shù)據(jù)庫常用對象。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

SQL視圖的定義與操縱

第1關:創(chuàng)建行列子集視圖

任務描述

本關任務:創(chuàng)建計算機系的學生信息的視圖 student_cs。

相關知識

行列子集視圖是指視圖的結果集來源于基本表,沒有經(jīng)過二次計算。 #####創(chuàng)建視圖

 
  1. CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
  2. VIEW view_name [(column_list)]
  3. AS select_statement
  4. [WITH [CASCADED | LOCAL] CHECK OPTION]

參數(shù)說明:

  • OR REPLACE:表示替換已有視圖;

  • ALGORITHM:表示視圖選擇算法,默認算法是UNDEFINED(未定義的): MySQL 自動選擇要使用的算法 ;merge合并;temptable臨時表;

  • column_list:可選參數(shù),指定視圖中各個屬性的名詞,默認情況下與 select 語句中查詢的屬性相同;

  • select_statement:表示 select 語句;

  • [WITH [CASCADED | LOCAL] CHECK OPTION]:表示視圖在更新時保證在視圖的權限范圍之內;cascade是默認值,表示更新視圖的時候,要滿足視圖和表的相關條件;local表示更新視圖的時候,要滿足該視圖定義的一個條件即可。

編程要求

根據(jù)提示,在右側編輯器補充代碼:

創(chuàng)建計算機系的學生信息視圖 student_cs。

代碼如下:

?create view student_cs

?as select *

?from student

?where sdept='計算機';

第2關:創(chuàng)建帶聚合函數(shù)的視圖

任務描述

本關任務: 創(chuàng)建由學號和平均成績兩個字段組成的視圖 v_grade_avg。

相關知識

創(chuàng)建帶聚合函數(shù)的視圖時,一定要給聚合函數(shù)列取別名。

編程要求

根據(jù)提示,在右側編輯器補充代碼, 創(chuàng)建由學號和平均成績兩個字段組成的視圖 v_grade_avg。

代碼如下:

create view v_grade_avg

as select sno'學號',AVG(grade)'平均成績'

from score

group by sno;

第3關:在視圖上查詢平均成績

任務描述

本關任務:在視圖 v_grade_avg 上查詢平均成績大于90分的學生信息。

相關知識

為了完成本關任務,你需要掌握:視圖的使用。

視圖的使用

查詢視圖數(shù)據(jù)

對視圖進行查詢,這個是非常簡單的(和使用SQL語句去查詢數(shù)據(jù)表一樣的語法)。雖然視圖是虛擬表,但它依舊是一張表,可通過Select語句進行查詢數(shù)據(jù)。

例:在視圖 V_AVG_S_G 上,查詢平均成績?yōu)?0分及以上的學生學號、姓名和成績;

 
  1. SELECT sno,sname,grade from V_AVG_S_G WHRER 平均成績>=90;

編程要求

在視圖 v_grade_avg 上查詢平均成績大于90分的學生信息,并將代碼補充在右側編輯器中。

代碼如下:

? select *

? from v_grade_avg

? where 平均成績>=90;

第4關:創(chuàng)建信息系學生的視圖

任務描述

本關任務:建立信息系學生的視圖 v_information。

相關知識

為了完成本關任務,你需要掌握:如何創(chuàng)建視圖。

創(chuàng)建視圖

基本語法

可以使用 CREATE VIEW 語句來創(chuàng)建視圖。若要求該視圖在修改和插入數(shù)時要符合WHERE中的條件,創(chuàng)建時需加with check option選項。

編程要求

建立信息系學生的視圖 v_information,并要求進行修改和插入操作時仍需保證該視圖只有信息系的學生,并將代碼補充在右側編輯器中。

代碼如下:

?create view v_information

? as

? select *

? from student

? where sdept='信息'

? with check option;

第5關:修改信息系學生的視圖

任務描述

本關任務:修改信息系學生的視圖 v_information。

相關知識

為了完成本關任務,你需要掌握:如何修改視圖。

修改視圖

1.CREATE OR REPLACE VIEW 語句

語法結構:

 
  1. CREATE OR REPLACE
  2. VIEW view_name [{column_list}]
  3. AS SELECT_STATEMENT
  4. WITH CHECK OPTION

釋義: CREATE OR REPLACE : 【創(chuàng)建或替換已創(chuàng)建的】視圖 view_name : 視圖名稱; column_list : 屬性列; SELECT_STATEMENT :SELECT語句; WITH CHECK OPTION 表示視圖在更新時保證在視圖的權限范圍內。

編程要求

修改信息系學生的視圖 v_information,并要求進行修改和插入操作時仍需保證該視圖只有信息系的學生,并且只返回學號、姓名和專業(yè)三個字段的值,并將代碼補充在右側編輯器中。

代碼如下:

?create or replace

?view v_information

? as

? select sno,sname,sdept

? from student

? where sdept='信息'

? with check option;

第6關:向信息系學生的視圖中插入數(shù)據(jù)

任務描述

本關任務:使用 INSERT 語句向視圖 v_information 中插入一條數(shù)據(jù)。

相關知識

為了完成本關任務,你需要掌握:如何向視圖添加數(shù)據(jù)。

視圖添加數(shù)據(jù)

在視圖上使用INSERT語句添加數(shù)據(jù)時,要符合以下規(guī)則:

  1. 使用INSERT語句向數(shù)據(jù)表中插入數(shù)據(jù)時,用戶必須有插入數(shù)據(jù)的權利;
  2. 由于視圖只引用表中的部分字段,所以通過視圖插入數(shù)據(jù)時只能明確指定視圖中引用的字段的取值。而那些表中并未引用的字段,必須知道在沒有指定取值的情況下如何填充數(shù)據(jù),因此視圖中未引用的字段必須具備下列條件之一;

(1)該字段允許空值; (2)該字段設有默認值; (3)該字段是標識字段,可根據(jù)標識種子和標識增量自動填充數(shù)據(jù); (4)該字段的數(shù)據(jù)類型為 timestamp 或 uniqueidentifier。 3. 視圖中不能包含多個字段值的組合,或者包含使用統(tǒng)計函數(shù)的結果; 4. 視圖中不能包含 DISTINCT 或 GROUP BY子句; 5. 如果視圖中使用了 WITH CHECK OPTION,那么該子句將檢查插入的數(shù)據(jù)是否符合視圖定義中 SELECT 語句所設置的條件。如果插入的數(shù)據(jù)不符合該條件,SQL Server 會拒絕插入數(shù)據(jù); 6. 不能在一個語句中對多個基礎表使用數(shù)據(jù)修改語句。因此,如果要向一個引用了多個數(shù)據(jù)表的視圖添加數(shù)據(jù)時,必須使用多個 INSERT 語句進行添加。

編程要求

使用 INSERT 語句向視圖 v_information 中插入一條數(shù)據(jù)('98001','王立紅','信息','02'),并將代碼補充在右側編輯器補充代碼中。

代碼如下:

? insert ?

? into v_information(sno,sname,sdept,sclass)

? values ?('98001','王立紅','信息','02');

索引與數(shù)據(jù)庫完整性

第1關:創(chuàng)建一般索引

任務描述

本關任務:為 student 表按姓名升序建立索引,索引名為 idx_sname。

相關知識

為了完成本關任務,你需要掌握:

  1. 索引是什么;

  2. 索引的分類;

  3. 索引的創(chuàng)建和刪除;

  4. 查詢索引。

索引是什么

數(shù)據(jù)庫索引是一種提高數(shù)據(jù)庫系統(tǒng)性能的方法。索引能讓數(shù)據(jù)庫服務器更快地查找和獲取表中指定的行。

例如,為了方便讀者快速查找書中的術語,很多書籍在最后附加了索引頁,術語按字母排序,同時給出頁碼。這樣讀者可以根據(jù)術語名,快速獲取頁碼,而不用翻閱整本書。

但是索引也給數(shù)據(jù)庫系統(tǒng)帶來了一定的開銷,所以我們應該謹慎地使用它們。

索引的分類

索引大體可分為單列索引(普通索引,唯一索引,主鍵索引)、組合索引、全文索引、空間索引四類。本實訓我們主要介紹單例索引和組合索引:

  • 單例索引:一個索引只包含單個列,但一個表中可以有多個單列索引;

    • 普通索引:僅加速查詢 最基本的索引,沒有任何限制,是我們大多數(shù)情況下使用到的索引;
    • 唯一索引:索引列中的值必須是唯一的,但允許為空值;
    • 主鍵索引:是一種特殊的唯一索引,不允許有空值。
  • 組合索引:在表的多個字段上創(chuàng)建的索引,只有在查詢條件中使用了這些字段的左邊字段時,索引才會被使用,使用組合索引時遵循最左前綴集合。

索引的創(chuàng)建和刪除

創(chuàng)建索引

創(chuàng)建索引有兩種方式,一種是在建表時創(chuàng)建,另一種是建表后創(chuàng)建:

  • 普通索引:
  1. 創(chuàng)表時創(chuàng)建普通索引:

     
      
    1. CREATE table mytable(
    2. id INT NOT NULL,
    3. username VARCHAR(16) NOT NULL,
    4. INDEX [indexName] (username)
    5. );
  2. 建表后創(chuàng)建普通索引:

     
      
    1. create INDEX 索引名稱 on 表名(字段名 desc/asc);
    2. #或者
    3. ALTER TABLE 表名 ADD INDEX 索引名稱 (字段名);

    asc 代表升序索引,desc 代表降序,mysql 默認升序索引。

  • 唯一索引:

     
      
    1. CREATE UNIQUE INDEX 索引名稱 ON 表名(字段名);
    2. #或者
    3. ALTER TABLE 表名 ADD UNIQUE (字段名);
  • 主鍵索引:主鍵索引一般在建表時創(chuàng)建,會設為 int 而且是 AUTO_INCREMENT 自增類型的,例如一般表的 id 字段。

     
      
    1. CREATE TABLE mytable (
    2. id int(11) NOT NULL AUTO_INCREMENT,
    3. PRIMARY KEY (id)
    4. );
  • 組合索引:組合索引就是在多個字段上創(chuàng)建一個索引。(應用場景:當表的行數(shù)遠遠大于索引鍵的數(shù)目時,使用這種方式可以明顯加快表的查詢速度)

     
      
    1. CREATE INDEX 索引名稱 ON 表名(字段1,字段2,字段3);
    2. #或者
    3. ALTER TABLE 表名 ADD INDEX 索引名稱(字段1,字段2,字段3);

查詢表中索引

查詢索引 SQL

 
  1. show index from 表名;

編程要求

在右側編輯器補充代碼,要求如下:

為 student 表按姓名升序建立索引,索引名為 idx_sname。

代碼如下:create index idx_sname on student(sname asc);

第2關:刪除索引-練習

任務描述

本關任務:刪除索引 idx_sname。

相關知識

刪除索引

同樣,刪除索引也有兩種方式。

 
  1. #使用drop刪除索引
  2. drop index index_name on table_name ;
  3. #使用alter刪除索引
  4. alter table table_name drop index index_name ;
  5. alter table table_name drop primary key ; #刪除主鍵索引

編程要求

根據(jù)提示,在右側編輯器補充代碼,刪除索引 idx_sname。

代碼如下:drop index idx_sname on student;

第3關:創(chuàng)建聯(lián)合索引

任務描述

本關任務:創(chuàng)建聯(lián)合索引 idx_sname_sdept。

相關知識

為了完成本關任務,你需要掌握:如何創(chuàng)建聯(lián)合索引。

創(chuàng)建聯(lián)合索引

  • 語法:

     
      
    1. create index 索引名稱 on 表名(字段名稱)
  • 示例:

     
      
    1. create index firstIndex on student(id, name, address);
  • 注意:

    1.索引名稱、表名、字段名稱 都不要用引號括起來;

2.對于聯(lián)合索引而言,字段名稱可以有多個,中間用英文逗號分隔即可; 3..普通索引數(shù)據(jù)可以重復。

編程要求

在 student 表 sname 字段和 sdept 字段上創(chuàng)建聯(lián)合索引 idx_sname_sdept,并將代碼補充在右側編輯器中。

代碼如下:? create index idx_sname_sdept on student(sname,sdept);

第4關:創(chuàng)建唯一索引

任務描述

本關任務:創(chuàng)建唯一索引 uk_cname。

相關知識

為了完成本關任務,你需要掌握:如何創(chuàng)建唯一索引。

如何創(chuàng)建唯一索引

  • 語法:

     
      
    1. create unique index 索引名稱 on 表名(字段名稱);
  • 示例:

     
      
    1. create unique index secondIndex on student(id, name, address);
  • 注意:

  1. 索引名稱、表名、字段名稱 都不要用引號括起來;
  2. 對于聯(lián)合索引而言,字段名稱可以有多個,中間用英文逗號分隔即可;
  3. 唯一索引數(shù)據(jù)不可重復。

編程要求

在 course 表的 cname 字段上創(chuàng)建唯一索引 uk_cname ,并將代碼補充在右側編輯器中。

代碼如下:?create unique index uk_cname on course(cname);

第5關:創(chuàng)建前綴索引

任務描述

本關任務:創(chuàng)建4個字符的前綴索引 pf_cname。

相關知識

為了完成本關任務,你需要掌握:如何創(chuàng)建前綴索引。

創(chuàng)建前綴索引

創(chuàng)建前綴索引的兩種方式

 
  1. //1.使用CREATE INDEX語句
  2. CREATE INDEX index_name ON table_name (column_name (length));
  3. //2.使用ALTER TABLE語句
  4. ALTER TABLE table_name ADD INDEX (column_name (length));

編程要求

在 course 表的 cname 字段上創(chuàng)建4個字符的前綴索引 pf_cname,并將代碼補充在右側編輯器中。

代碼如下:?create index pf_cname on course(cname(4));

第6關:創(chuàng)建全文索引

任務描述

本關任務:創(chuàng)建全文索引 ft_cname 。

相關知識

為了完成本關任務,你需要掌握:如何創(chuàng)建全文索引。

創(chuàng)建全文索引

創(chuàng)建全文索引的兩種方式

 
  1. //1.ALTER添加
  2. ALTER TABLE table_name ADD FULLTEXT INDEX index_name (column1,column2,...);
  3. //2.CRATE INDEX添加
  4. CREATE FULLTEXT INDEX index_name ON table_name (column1,column2,...);

編程要求

在 course 表的 cname 字段上創(chuàng)建全文索引 ft_cname ,并將代碼補充在右側編輯器中。

代碼如下:? create fulltext index ?ft_cname on course(cname);

如有錯誤,歡迎指正。文章來源地址http://www.zghlxwxcb.cn/news/detail-759085.html

到了這里,關于數(shù)據(jù)庫原理 頭歌實訓 數(shù)據(jù)庫常用對象的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 頭歌實訓-離散數(shù)學-圖論!

    頭歌實訓-離散數(shù)學-圖論!

    5階無向完全圖的邊數(shù)為:10 設圖 G 有 n 個結點, m 條邊,且 G 中每個結點的度數(shù)不是 k ,就是 k+1 ,則 G 中度數(shù)為 k 的節(jié)點數(shù)是: n(k+1)-2m 若一個圖有5個頂點,8條邊,則該圖所有頂點的度數(shù)和為多少?16 他讓輸出關聯(lián)矩陣和鄰接矩陣這不簡單么? 我是直接擺爛了 輸出個球呀

    2024年02月04日
    瀏覽(54)
  • 【頭歌實訓】kafka-入門篇

    【頭歌實訓】kafka-入門篇

    本關任務:使用 Kafka 命令創(chuàng)建一個副本數(shù)量為 1 、分區(qū)數(shù)量為 3 的 Topic 。 為了完成本關任務,你需要掌握:1.如何使用 Kafka 的常用命令。 課程視頻《Kafka簡介》 Kafka 簡述 類 JMS 消息隊列,結合 JMS 中的兩種模式,可以有多個消費者主動拉取數(shù)據(jù),在 JMS 中只有點對點模式才

    2024年02月03日
    瀏覽(29)
  • 頭歌實訓-機器學習(邏輯回歸)

    1.邏輯回歸簡述 2.邏輯回歸算法詳解 3.sklearn邏輯回歸 - 手寫數(shù)字識別 4.邏輯回歸案例 - 癌細胞精準識別

    2024年04月13日
    瀏覽(27)
  • 【頭歌實訓】PySpark Streaming 入門

    【頭歌實訓】PySpark Streaming 入門

    本關任務:使用 Spark Streaming 實現(xiàn)詞頻統(tǒng)計。 為了完成本關任務,你需要掌握: Spark Streaming 簡介; Python 與 Spark Streaming; Python Spark Streaming API; Spark Streaming 初體驗(套接字流)。 Spark Streaming 簡介 Spark Streaming 是 Spark 的核心組件之一,為 Spark 提供了可拓展、高吞吐、容錯的

    2024年02月04日
    瀏覽(71)
  • 頭歌實訓平臺C語言

    目錄 C語言程序設計編輯與調試環(huán)境 ?第1關打印輸出 Hello World? ?第2關打印輸出圖形 ?第3關求3個數(shù)的最大值 ?第4關熟悉C語言調試過程 順序結構程序設計 第1關加法運算 第2關不使用第3個變量,實現(xiàn)兩個數(shù)的對調 第3關用宏定義常量 第4關數(shù)字分離 第5關計算總成績和平均成績

    2023年04月25日
    瀏覽(35)
  • 獲取頭歌實訓參考答案(EduCoder)

    頭歌EduCoder平臺實訓答案在此,里面搜集了一些答案,可以查查有沒有想看的。 https://edaser.github.io/ 一定 不要直接復制答案 ,建議還是自己做,實在不會做的,參考看完后要獨立完成。 在這里可以查詢一些實訓的答案,后臺的數(shù)據(jù)庫記錄了幾百個實訓關卡的答案,實現(xiàn)的方

    2024年02月11日
    瀏覽(75)
  • 【頭歌實訓】分布式文件系統(tǒng) HDFS

    【頭歌實訓】分布式文件系統(tǒng) HDFS

    本關任務:使用 Hadoop 命令來操作分布式文件系統(tǒng)。 為了完成本關任務你需要了解的知識有:1. HDFS 的設計,2. HDFS 常用命令。 HDFS的設計 分布式文件系統(tǒng) 客戶:幫我保存一下這幾天的數(shù)據(jù)。 程序猿:好嘞,有多大呢? 客戶: 1T 。 程序猿:好沒問題,買個硬盤就搞定了。

    2024年04月15日
    瀏覽(27)
  • Educoder_頭歌實訓_離散數(shù)學_圖論

    Educoder_頭歌實訓_離散數(shù)學_圖論

    目錄 第1關:圖的概念 任務描述 相關知識 圖的概念 習題參考 第2關:圖的表示 任務描述 相關知識 圖的表示 編程要求 測試說明 習題參考 第3關:單源最短通路問題 任務描述 相關知識 單源最短通路 Dijkstra算法 編程要求 測試說明 習題參考 本關任務:學習圖的基本概念,完

    2024年02月03日
    瀏覽(35)
  • 湖南大學python頭歌實訓 實驗2:分支語句(一)

    湖南大學python頭歌實訓 實驗2:分支語句(一)

    第二章-Python語言基礎-2.1簡單計算問題的求解(理科) 第1關:數(shù)據(jù)輸入與輸出 編程要求 根據(jù)提示,在右側編輯器補充代碼,完成如下程序的編寫。 第一題 在屏幕上輸出字符串:hi, \\\"how are you\\\" ,I\\\'m fine and you 第二題 從鍵盤輸入兩個整數(shù),計算兩個數(shù)相除的商與余數(shù) 假設輸入

    2024年04月13日
    瀏覽(25)
  • 數(shù)字邏輯---頭歌實訓作業(yè)---加法器設計(Logisim)

    數(shù)字邏輯---頭歌實訓作業(yè)---加法器設計(Logisim)

    第1關:半加器設計 如有任何不解或者想要答案代碼,可在評論區(qū)喊話我哦,希望我的答案對你有幫助,點個關注再走吧,感謝?。?! 本關卡最終答案: ? 任務描述 本關任務:利用在Logisim中的“組合邏輯分析”工具自動生成半加器電路。 相關知識 半加器電路是指對兩個輸

    2023年04月13日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包