欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      淺談SQL語(yǔ)言教學(xué)的一點(diǎn)體會(huì)

      時(shí)間:2019-05-15 07:52:12下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《淺談SQL語(yǔ)言教學(xué)的一點(diǎn)體會(huì)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《淺談SQL語(yǔ)言教學(xué)的一點(diǎn)體會(huì)》。

      第一篇:淺談SQL語(yǔ)言教學(xué)的一點(diǎn)體會(huì)

      淺談SQL語(yǔ)言教學(xué)的一點(diǎn)體會(huì)

      【摘要】SQL語(yǔ)言是數(shù)據(jù)庫(kù)原理、數(shù)據(jù)庫(kù)應(yīng)用等課程的核心內(nèi)容,也是這些課程的重點(diǎn)及難點(diǎn),本文結(jié)合SQL語(yǔ)言在實(shí)際工程中的應(yīng)用,從教學(xué)內(nèi)容取舍、教學(xué)過(guò)程等方面,提出了一些應(yīng)對(duì)策略。

      【關(guān)鍵詞】數(shù)據(jù)庫(kù)應(yīng)用SQL語(yǔ)言教學(xué)教學(xué)內(nèi)容

      【基金項(xiàng)目】河北聯(lián)合大學(xué)教改資助項(xiàng)目,項(xiàng)目編號(hào)Z1108-08。

      【中圖分類(lèi)號(hào)】G64 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】2095-3089(2014)06-0144-01

      SQL(Structured Query Language)語(yǔ)言作為數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)操作語(yǔ)言,在基于數(shù)據(jù)庫(kù)的應(yīng)用系統(tǒng)開(kāi)發(fā)中應(yīng)用十分廣泛,SQL語(yǔ)言也是數(shù)據(jù)庫(kù)應(yīng)用、數(shù)據(jù)庫(kù)原理、多種開(kāi)發(fā)工具類(lèi)課程以及畢業(yè)設(shè)計(jì)等實(shí)踐環(huán)節(jié)均會(huì)涉及到的內(nèi)容,并且是這些課程的重點(diǎn)及難點(diǎn),學(xué)生能否掌握及熟練使用SQL語(yǔ)言,是能否進(jìn)行數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開(kāi)發(fā)的基礎(chǔ)和關(guān)鍵。盡管SQL語(yǔ)言具有高度結(jié)構(gòu)化的特點(diǎn),基本的SQL語(yǔ)句語(yǔ)法也并不復(fù)雜,通過(guò)教師的講解絕大多數(shù)學(xué)生都能夠理解,但是要弄懂全部的語(yǔ)法結(jié)構(gòu)并將SQL語(yǔ)句靈活應(yīng)用于實(shí)際項(xiàng)目,卻讓很多學(xué)生感到力不從心。本文針對(duì)SQL語(yǔ)言教學(xué)過(guò)程中遇到的一些實(shí)際問(wèn)題,提出了解決方法和應(yīng)對(duì)策略。

      一、語(yǔ)法過(guò)于龐雜,令學(xué)生望而卻步。

      多數(shù)教材考慮到語(yǔ)法的完整性,會(huì)羅列出SQL語(yǔ)句的全部語(yǔ)法,使得看上去相當(dāng)龐雜,學(xué)生很難搞清楚所有的語(yǔ)法構(gòu)成成分,從而增加了學(xué)生的畏難情緒。

      比如SQL語(yǔ)句中最常用的SELECT語(yǔ)句的語(yǔ)法如下:

      [WITH ]

      SELECT[ ALL | DISTINCT ]

      [ TOP expression [ PERCENT ] [ WITH TIES ] ]

      [ INTO new_table ]

      [ FROM table_source ]

      [ WHERE search_condition ]

      [ GROUP BY group_by_expression]

      [ HAVING search_condition]

      [ ORDER BY order_expression [ ASC | DESC ] ]

      ::=

      {*

      | { table_name | view_name | table_alias }.*

      |{column_name | [ ] expression | $IDENTITY|$ROWGUID} [ [ AS ] column_alias ]

      | udt_column_name [ {.| :: } { { property_name | field_name } | method_name(argument [,...n])} ]

      | column_alias = expression } [ ,…n ]

      面對(duì)如此龐雜的語(yǔ)法,很多同學(xué)會(huì)望而卻步。

      筆者針對(duì)這個(gè)問(wèn)題,提出如下的解決方法:

      1.摒棄完整語(yǔ)法,通過(guò)簡(jiǎn)單的例子引入最簡(jiǎn)單的語(yǔ)法,培養(yǎng)成就感。

      興趣是最好的老師,而成就感能有效的提高學(xué)生的學(xué)習(xí)興趣。所以在學(xué)習(xí)SQL語(yǔ)言的過(guò)程中,應(yīng)該摒棄復(fù)雜的SQL語(yǔ)法,讓學(xué)生很快并經(jīng)常性的體驗(yàn)到成就感,樹(shù)立起學(xué)生對(duì)學(xué)好SQL語(yǔ)言的信心。

      例如通過(guò)查詢(xún)學(xué)生基本信息的示例“SELECT 學(xué)號(hào),姓名 FROM 學(xué)生表”入手,總結(jié)出最簡(jiǎn)單的SELECT語(yǔ)句語(yǔ)法為:

      SELECT 列名1,列名2,…, 列名n FROM表名

      然后通過(guò)逐步加深應(yīng)用的需求來(lái)逐漸增加語(yǔ)法成分。而極少用到的語(yǔ)法成分,則可不講解。完整的語(yǔ)法結(jié)構(gòu)可以最后給出,并且只講語(yǔ)法符號(hào)的含義,而不講語(yǔ)法的含義,感興趣的學(xué)生自己閱讀相關(guān)參考手冊(cè)了解具體含義,教師負(fù)責(zé)答疑。

      2.能用中文表示的語(yǔ)法成分盡量用中文表示。

      多數(shù)教材考慮到語(yǔ)法的規(guī)范性,或者是為了與MSDN保持一致,SQL語(yǔ)句采用全英文語(yǔ)法,使得部分英文不太好的學(xué)生產(chǎn)生抵觸情緒。通過(guò)筆者實(shí)踐,除了關(guān)鍵詞外,盡量使用中文形式的語(yǔ)法,會(huì)更容易被學(xué)生接受。

      二、學(xué)生不知道如何應(yīng)用SQL語(yǔ)句解決實(shí)際問(wèn)題。

      通過(guò)教師講解,多數(shù)學(xué)生都能掌握基本SQL語(yǔ)句的編寫(xiě),但是多數(shù)同學(xué)不能將所學(xué)內(nèi)容靈活應(yīng)用于實(shí)際項(xiàng)目。比如學(xué)生能夠理解函數(shù)、自連接等內(nèi)容,但是給出實(shí)際問(wèn)題時(shí)卻不知道如何解決。針對(duì)這種問(wèn)題,筆者結(jié)合多年的教學(xué)及工程經(jīng)歷,精心收集、設(shè)計(jì)了一些數(shù)據(jù)庫(kù)應(yīng)用的案例,比如超市的進(jìn)銷(xiāo)存系統(tǒng)、公司的財(cái)務(wù)管理系統(tǒng)、學(xué)校的學(xué)生成績(jī)管理系統(tǒng)、網(wǎng)站的后臺(tái)管理等,讓學(xué)生將所學(xué)內(nèi)容與工程實(shí)際緊密結(jié)合起來(lái),著手處理和解決實(shí)際應(yīng)用問(wèn)題。

      如:在進(jìn)銷(xiāo)存系統(tǒng)中,銷(xiāo)售單表(產(chǎn)品編碼, 產(chǎn)品名稱(chēng), 銷(xiāo)售單號(hào), 數(shù)量,單價(jià),金額),有類(lèi)似表1的統(tǒng)計(jì)要求。

      表1 銷(xiāo)售情況統(tǒng)計(jì)表

      產(chǎn)品編碼:0001 產(chǎn)品名稱(chēng):聯(lián)想筆記本電腦

      解1 使用內(nèi)連接

      select t1.*,(select sum(金額)from銷(xiāo)售單表where 產(chǎn)品編碼=t1.產(chǎn)品編碼 and 銷(xiāo)售單號(hào)<=t1.銷(xiāo)售單號(hào))

      from 銷(xiāo)售單表t1 where 產(chǎn)品編碼=‘0001’

      解2 使用標(biāo)量函數(shù)

      create function uf_sum(@產(chǎn)品編碼 char(20),@銷(xiāo)售單號(hào) char(20))

      returns decimal(12,2)

      as

      begin

      declare @sum decimal(12,2)

      select @sum=sum(金額)from 銷(xiāo)售情況統(tǒng)計(jì)表 where 產(chǎn)品編碼=@產(chǎn)品編碼 and 銷(xiāo)售單號(hào)<=@銷(xiāo)售單號(hào)

      return @sum

      end

      select t1.*,dbo.uf_sum(產(chǎn)品編碼,銷(xiāo)售單號(hào))

      from 銷(xiāo)售情況統(tǒng)計(jì)表 t1 where 產(chǎn)品編碼=‘0001’

      三、教師講得多,學(xué)生練得少。

      1.多年來(lái)受多種因素的制約,課程評(píng)價(jià)基本上沿襲以理論考核為主,以閉卷為主。然而,在實(shí)際工程中強(qiáng)調(diào)的卻是團(tuán)隊(duì)合作、強(qiáng)調(diào)充分利用互聯(lián)網(wǎng)信息等現(xiàn)代化手段,因此課程考核方式應(yīng)采取開(kāi)放式考核、實(shí)際項(xiàng)目考核,加大上機(jī)考核的比重,實(shí)踐性較強(qiáng)的知識(shí)點(diǎn)盡量放在上機(jī)操作上進(jìn)行考核,重點(diǎn)測(cè)試學(xué)生的實(shí)踐技能,把任務(wù)分解給學(xué)生,在上機(jī)時(shí)獨(dú)立完成。

      2.加大上機(jī)的比重,上機(jī)課時(shí)不少于三分之一,甚至可以達(dá)到50%。

      針對(duì)上述問(wèn)題提出的解決方案,經(jīng)過(guò)教學(xué)實(shí)踐檢驗(yàn),提高了學(xué)生解決實(shí)踐問(wèn)題的能力,收到了較好的教學(xué)效果。

      第二篇:sql語(yǔ)言

      11.2.2 數(shù)據(jù)定義命令

      1.CreateTable命令

      Create Table <表名>(<列名1><數(shù)據(jù)類(lèi)型1>[<列級(jí)完整性約束1>][,<列名2>] <數(shù)據(jù)類(lèi)型2>[<列級(jí)完整性約束2>][,……][,<列名n>] <數(shù)據(jù)類(lèi)型n>[<列級(jí)完整性約束n>][<表級(jí)完整性約束n>]); 語(yǔ)句功能:創(chuàng)建一個(gè)以<表名>為名的、以指定的列屬性定義的表結(jié)構(gòu)。

      2.Alter Table命令

      Alter Table<表名>

      [ ADD <新列名> <數(shù)據(jù)類(lèi)型> [ 完整性約束 ] ]

      [ DROP <完整性約束名> ]

      [ MODIFY <列名> <數(shù)據(jù)類(lèi)型> ];

      語(yǔ)句功能:修改以<表名>為名的表結(jié)構(gòu)。

      3.Drop命令

      Drop Table <表名>

      語(yǔ)句功能:刪除以<表名>為名的表。

      11.2.3 數(shù)據(jù)查詢(xún)命令 SELECT

      語(yǔ)法形式為:

      SELECT [ALL|DISTINCT] 目標(biāo)列FROM 表(或查詢(xún))

      [WHERE 條件表達(dá)式]

      [GROUP BY 列名1 HAVING 過(guò)濾表達(dá)式]

      [ORDER BY 列名2[ASC|DESC]]

      功能

      根據(jù)WHERE子句中的表達(dá)式,從指定的表或視圖中找出滿足條件的記錄,按目標(biāo)列顯示數(shù)據(jù)GROUP BY子句按列名1的值進(jìn)行分組,每一組產(chǎn)生一條記錄,HAVING短語(yǔ)對(duì)組進(jìn)行輸出過(guò)濾

      ORDER BY子句按列名2 對(duì)查詢(xún)結(jié)果的值進(jìn)行排序

      1.SELECT語(yǔ)句示例

      例11.1查詢(xún)所有學(xué)生的基本情況

      SELECT學(xué)號(hào),姓名,性別,出生日期,專(zhuān)業(yè)

      FROM Student;

      例11.2查詢(xún)所有男生的信息記錄。

      SELECT *

      FROM student

      WHERE 性別=“男”;

      例11.1查詢(xún)所有的專(zhuān)業(yè),查詢(xún)結(jié)果中不出現(xiàn)重復(fù)的記錄。

      SELECT DISTINCT 專(zhuān)業(yè) FROM Student ;

      例11.4 查詢(xún)學(xué)生的人數(shù)和平均年齡

      SELECT Count(*)AS 人數(shù),Avg(Year(Date())-Year(出生年月))AS平均年齡 FROM Student ; 例85 查詢(xún)計(jì)算機(jī)專(zhuān)業(yè)學(xué)生的學(xué)號(hào)、姓名和專(zhuān)業(yè)

      SELECT 學(xué)號(hào),姓名,專(zhuān)業(yè) FROM Student WHERE 專(zhuān)業(yè)=“計(jì)算機(jī)” ;

      例11.6顯示所有非計(jì)算機(jī)專(zhuān)業(yè)學(xué)生的學(xué)號(hào)、姓名和年齡

      SELECT 學(xué)號(hào), 姓名, Year(Date())-Year(出生年月)AS 年齡

      FROM StudentWHERE 專(zhuān)業(yè)<>“計(jì)算機(jī)” ;

      例11.7 查詢(xún)1981年(包括1981年)以前出生的女生姓名和出生年月。

      SELECT 姓名,出生年月 FROM Student

      WHERE 出生年月 < #1/1/1982# AND 性別=“女” ;

      例11.8 查詢(xún)選修了1號(hào)課程的學(xué)生的學(xué)號(hào)及其成績(jī),查詢(xún)結(jié)果按分?jǐn)?shù)降序排列。

      Select 學(xué)號(hào),成績(jī)Fromsc

      Where課程號(hào)= “1”

      Order By 成績(jī) DESC;

      例11.9查詢(xún)選修了2門(mén)(包括2門(mén))以上課程的學(xué)生的學(xué)號(hào)和課程數(shù)

      SELECT 學(xué)號(hào), Count(*)AS 課程數(shù) FROM Sc

      GROUP BY 學(xué)號(hào)HAVING Count(*)>=2 ;

      例11.10查詢(xún)所有課程的成績(jī)?cè)?0分以上的學(xué)生的學(xué)號(hào)

      SELECT 學(xué)號(hào) FROM ScGROUP BY 學(xué)號(hào)

      HAVING Min(成績(jī))>=70 ;

      例11.11 查詢(xún)所有學(xué)生的學(xué)號(hào)、姓名、課程和成績(jī)

      SELECT Student.學(xué)號(hào),Student.姓名,Sc.課程, Sc.成績(jī)

      使用內(nèi)連接格式

      SELECT Student.學(xué)號(hào),Student.姓名,Sc.課程,Sc.成績(jī)

      2.ORDER BY、GROUP BY、HAVING子句示例

      例11.12 對(duì)學(xué)生成績(jī)表,統(tǒng)計(jì)每人的平均分和課程數(shù),按學(xué)號(hào)遞減排序

      SELECT學(xué)號(hào), COUNT(課程號(hào))AS 課程數(shù), AVG(成績(jī))AS平均成績(jī)

      FROM sc

      學(xué)號(hào)

      ORDER BY學(xué)號(hào)DESC;

      例11.13查詢(xún)選修了2門(mén)(包括2門(mén))以上課程、最低成績(jī)?cè)?0分以上的學(xué)生的學(xué)號(hào)、課程數(shù)和最低分 SELECT 學(xué)號(hào), Min(成績(jī))AS 成績(jī)之Min, Count(課程)AS 課程之Count FROM ScGROUP BY Sc.學(xué)號(hào)

      HAVING(((Min(成績(jī)))>=60)AND((Count(課程))>2));

      3、多表連接查詢(xún)SELECT語(yǔ)句

      WHERE 條件,在兩表中有相同的屬性值

      例11.14 查詢(xún)所有學(xué)生的學(xué)號(hào)、姓名、課程和成績(jī)

      SELECT Student.學(xué)號(hào),Student.姓名,Sc.課程, Sc.成績(jī)

      FROM Student,Sc WHERE Student.學(xué)號(hào) = Sc.學(xué)號(hào);

      4.嵌套查詢(xún)

      在SQL中,將一個(gè)SELECT語(yǔ)句查詢(xún)塊嵌套在另一個(gè)SELECT語(yǔ)句的WHERE子句或HAVING子句中稱(chēng)為嵌套查詢(xún)

      例11.15 查詢(xún)沒(méi)有學(xué)過(guò)大學(xué)計(jì)算機(jī)基礎(chǔ)的學(xué)生的學(xué)號(hào)、姓名和專(zhuān)業(yè)

      SELECT Student.學(xué)號(hào), Student.姓名, Student.專(zhuān)業(yè)

      FROM Student

      (SELECT Sc.學(xué)號(hào)

      FROM Sc

      WHERE Sc.課程=“大學(xué)計(jì)算機(jī)基礎(chǔ)”);

      嵌套查詢(xún)示例

      例11.16 查詢(xún)與“鄧倩梅”在同一個(gè)專(zhuān)業(yè)的學(xué)生的學(xué)號(hào)和姓名

      SELECT Student.學(xué)號(hào), Student.姓名

      FROM Student

      WHERE

      FROM Student

      11.2.4SQL中的數(shù)據(jù)更新命令

      結(jié)構(gòu)化查詢(xún)語(yǔ)言SQL是操作關(guān)系數(shù)據(jù)庫(kù)的工業(yè)標(biāo)準(zhǔn)語(yǔ)言

      在SQL中,常用的語(yǔ)句有兩類(lèi):

      數(shù)據(jù)查詢(xún)語(yǔ)句 SELECT

      數(shù)據(jù)更新命令 INSERT、UPDATE、DELETE

      INSERT語(yǔ)句用于數(shù)據(jù)插入 其語(yǔ)法格式為:

      ? 插入一條記錄

      INSERT INTO 表名 [(字段1,…,字段n)] VALUES(值1,…,值n)

      ? 插入查詢(xún)的結(jié)果

      INSERT INTO 表名(字段1,…,字段n)VALUES 子查詢(xún)

      數(shù)據(jù)更新-INSERT語(yǔ)句實(shí)例

      例11.17向表Students中插入一條記錄

      Insert Into student(學(xué)號(hào), 姓名, 出生日期,性別, 專(zhuān)業(yè))VALUES(“20031011”, “陳偉”,男“, ”化學(xué)“)

      注意:

      字符型常量用 單引號(hào) 或 雙引號(hào) 括起來(lái)

      邏輯型字段的值是 True/False、Yes/No 或 On/Off

      日期的表示形式為 MM/DD/YY 或 MM/DD/YYYY

      數(shù)據(jù)更新-DELETE語(yǔ)句

      DELETE語(yǔ)句用于數(shù)據(jù)刪除其語(yǔ)法格式為:

      DELETE FROM 表 [WHERE 條件]

      注意: WHERE子句缺省,則刪除表中所有的記錄(表還在)

      例11.18 刪除表Students中所有學(xué)號(hào)為990301的記錄

      DELETE FROM Students WHERE 學(xué)號(hào)=“990301”

      例11.19 刪除表Sc中成績(jī)低于70分的記錄

      DELETE FROM Sc WHERE 成績(jī)<70

      數(shù)據(jù)更新-UPDATE語(yǔ)句

      UPDATE語(yǔ)句用于數(shù)據(jù)修改其語(yǔ)法格式為:

      UPDATE 表 SET 字段1=表達(dá)式1, …,字段n=表達(dá)式n [WHERE 條件]

      注意: WHERE子句缺省,則修改表中所有的記錄

      例11.20 將表Student中學(xué)生王濤的姓名改為王寶 #12/28/80#,”

      UPDATE Students SET 姓名=“王寶” WHERE 姓名=“王濤”

      UPDATE語(yǔ)句一次只能對(duì)一個(gè)表進(jìn)行修改

      SQL是英文Structured Query Language的縮寫(xiě),意思為結(jié)構(gòu)化查詢(xún)語(yǔ)言。SQL語(yǔ)言的主要功能就是同各種數(shù)據(jù)庫(kù)建立聯(lián)系,進(jìn)行溝通。按照ANSI(美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì))的規(guī)定,SQL被作為關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)的標(biāo)準(zhǔn)語(yǔ)言。SQL語(yǔ)句可以用來(lái)執(zhí)行各種各樣的操作,例如更新數(shù)據(jù)庫(kù)中的數(shù)據(jù),從數(shù)據(jù)庫(kù)中提取數(shù)據(jù)等。目前,絕大多數(shù)流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL語(yǔ)言標(biāo)準(zhǔn)。包括數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)查詢(xún)和數(shù)據(jù)控制四個(gè)方面,共9個(gè)命令。

      SQL語(yǔ)言使用使用數(shù)據(jù)定義語(yǔ)言(Data Definition Language,簡(jiǎn)稱(chēng)DDL)實(shí)現(xiàn)數(shù)據(jù)定義功能。1、創(chuàng)建數(shù)據(jù)表

      【命令格式】

      CREATETABLE<表名> [free]

      (<字段名1><數(shù)據(jù)類(lèi)型>[(<寬度>[,<小數(shù)位數(shù)>]),<字段名2>…])

      【功能】定義(也稱(chēng)創(chuàng)建)一個(gè)表結(jié)構(gòu)。

      【命令格式】

      CREATETABLE<表名> [free]

      (<字段名1><數(shù)據(jù)類(lèi)型>[(<寬度>[,<小數(shù)位數(shù)>]),[NULL|NOTNULL]<字段名2>…])

      【功能】定義(也稱(chēng)創(chuàng)建)一個(gè)表結(jié)構(gòu)。

      【命令格式】

      CREATETABLE<表名> [free]

      (<字段名1><數(shù)據(jù)類(lèi)型>[(<寬度>[,<小數(shù)位數(shù)>]),[NULL|NOTNULL]

      [CHECK<表達(dá)式>[error<提示信息]

      <字段名2>…])

      【功能】定義(也稱(chēng)創(chuàng)建)一個(gè)表結(jié)構(gòu)。

      【命令格式】

      CREATETABLE<表名> [free]

      (<字段名1><數(shù)據(jù)類(lèi)型>[(<寬度>[,<小數(shù)位數(shù)>]),[NULL|NOTNULL]

      [CHECK<表達(dá)式>[error<提示信息]

      [DEFAULT<表達(dá)式>]

      <字段名2>…])

      【功能】定義(也稱(chēng)創(chuàng)建)一個(gè)表結(jié)構(gòu)。

      【命令格式】

      CREATETABLE<表名> [free]

      (<字段名1><數(shù)據(jù)類(lèi)型>[(<寬度>[,<小數(shù)位數(shù)>]),[NULL|NOTNULL]

      [CHECK<表達(dá)式>[error<提示信息]

      [DEFAULT<表達(dá)式>]

      [PRIMARY KEY/UNIQUE]

      <字段名2>…])

      【功能】定義(也稱(chēng)創(chuàng)建)一個(gè)表結(jié)構(gòu)。

      【例11-1】創(chuàng)建一個(gè)表STUD(學(xué)生信息表),它由以下字段組成:學(xué)號(hào)(C,8);姓名(C,8);性別(C,2);出生年月(D);入校總分(N,3);三好生(L);特長(zhǎng)(M);照片(G)。

      CREATE TABLESTUD

      (學(xué)號(hào)C(8),姓名C(8),性別 C(2),出生年月 D, 入??偡?N(3),;三好生 L,特長(zhǎng) M,照片 G)

      【例11-2】創(chuàng)建一個(gè)表STUD(學(xué)生信息表),它由以下字段組成:學(xué)號(hào)(C,8);姓名(C,8);性別(C,2);出生年月(D);入??偡?N,3)。

      并要求:學(xué)號(hào)為主鍵并不能為空值;姓名也不允許為空值,性別字段必須是“男”或者“女”;出生年月取值范圍在1970到1990年之間。

      CREATE TABLESTUD

      (學(xué)號(hào)C(8)PRIMARY KEYNOT NULL,;

      姓名C(8),;性別C(2),;出生年月 D,;入??偡?N(3))

      【例11-2】創(chuàng)建一個(gè)表STUD(學(xué)生信息表),它由以下字段組成:學(xué)號(hào)(C,8);姓名(C,8);性別(C,2);出生年月(D);入校總分(N,3)。

      并要求:學(xué)號(hào)為主鍵并不能為空值;姓名也不允許為空值,性別字段必須是“男”或者“女”;出生年月取值范圍在1970到1990年之間。

      CREATE TABLESTUD

      (學(xué)號(hào)C(8)PRIMARY KEYNOT NULL,;

      姓名C(8), NOT NULL;性別C(2),;出生年月 D,;入??偡?N(3))

      【例11-2】創(chuàng)建一個(gè)表STUD(學(xué)生信息表),它由以下字段組成:學(xué)號(hào)(C,8);姓名(C,8);性別(C,2);出生年月(D);入??偡?N,3)。

      并要求:學(xué)號(hào)為主鍵并不能為空值;姓名也不允許為空值,性別字段必須是“男”或者“女”;出生年月取值范圍在1970到1990年之間。

      CREATE TABLESTUD

      (學(xué)號(hào)C(8)PRIMARY KEYNOT NULL,;

      姓名C(8), NOT NULL;

      性別C(2), DEFAULT=“男”CHECK 性別=“男”O(jiān)R 性別 =“女” ERROR“性別必須是男或女”;出生年月 D,;入??偡?N(3))

      【例11-2】創(chuàng)建一個(gè)表STUD(學(xué)生信息表),它由以下字段組成:學(xué)號(hào)(C,8);姓名(C,8);性別(C,2);出生年月(D);入??偡?N,3)。

      并要求:學(xué)號(hào)為主鍵并不能為空值;姓名也不允許為空值,性別字段必須是“男”或者“女”;出生年月取值范圍在1970到1990年之間。

      CREATE TABLESTUD

      (學(xué)號(hào)C(8)PRIMARY KEYNOT NULL,;

      姓名C(8), NOT NULL;

      性別C(2), DEFAULT=“男”CHECK 性別=“男”O(jiān)R 性別;

      =“女” ERROR“性別必須是男或女”;

      出生年月 D, CHECK(出生年月)<={^1990-01-01} and 出生;

      年月>={^1970-01-01},;

      入??偡?N(3))

      2、修改數(shù)據(jù)表

      【命令格式1】

      ALTER TABLE <表名>[ADD/ ALTER

      [COLUMN] <新字段名><數(shù)據(jù)類(lèi)型>[<寬度>[,<小數(shù)位數(shù)>]]

      [NULL |NOTNULL]]

      [CHECK<表達(dá)式>[error<提示信息>]]

      [DEFAULT <表達(dá)式>]

      [PRIMARY KEY/UNIQUE]]

      【功能】修改表結(jié)構(gòu)。、插入記錄

      【格式1】INSERTINTO<表名>[<字段名表>]VALUES(<表達(dá)式表>)

      【格式2】INSERTINTO<表名>FROMARRAY<數(shù)組名>|FROMMEMVAR

      【功能】在指定的表文件末尾追加一條記錄。格式1用表達(dá)式表中的各表達(dá)式值賦值給<字段名表>中的相應(yīng)的各字段。格式2用數(shù)組或內(nèi)存變量的值賦值給表文件中各字段。

      【說(shuō)明】如果某些字段名在INTO子句中沒(méi)有出現(xiàn),則新記錄在這些字段名上將取空值(或默認(rèn)值)。但必須注意的是,在表定義說(shuō)明了NOTNULL的字段名不能取空值。

      <字段名表>:指定表文件中的字段,缺省時(shí),按表文件字段的順序依次賦值。

      <表達(dá)式表>:指定要追加的記錄各個(gè)字段的值。

      【例11-6】在表文件STUD的末尾追加三條記錄。

      ***用表達(dá)式方式追加第一條記錄***

      INSERTINTOSTUD

      (學(xué)號(hào),姓名,性別,班級(jí)名,系別代號(hào));

      VALUES

      (“011110”,“李建國(guó)”,“男”,“計(jì)0121”,“01”)

      DIMENSIONDATA[5]

      DATA(1)=“011103”

      DATA(2)=“李寧”

      DATA(3)=“女”

      DATA(4)=“電0134”

      DATA(5)=“02”

      INSERTINTOSTUDFROMARRAYDATA

      第三篇:SQL語(yǔ)言

      1.輸出任意兩個(gè)字符串變量的值(參考代碼)

      declare @v1 varchar(12),@V2 varchar(12)

      set @v1='中國(guó)'

      set @v2='你好!'

      select @v1+@v2

      2.為以下程序糾錯(cuò)

      declare @v1 varchar(12),@V2 varchar(10)

      set @v1='中國(guó)'

      set @v2='你好!'

      set @s='嗎!'

      select @v1+@v2+@s

      3.運(yùn)行以下代碼,觀察以下全局變量的功能

      select 34@@connections 返回當(dāng)前服務(wù)器的連接數(shù)目

      select 1@@rowcount 返回上一條T-SQL語(yǔ)句影響的數(shù)據(jù)行數(shù) select @@error返回上一條T-SQL語(yǔ)句執(zhí)行后的錯(cuò)誤號(hào) select @@procid返回當(dāng)前存儲(chǔ)過(guò)程的ID號(hào)

      select @@remserver 返回登錄記錄中遠(yuǎn)程服務(wù)器的名字 select @@spid返回當(dāng)前服務(wù)器進(jìn)程的ID標(biāo)識(shí)

      select @@version 返回當(dāng)前SQL Server服務(wù)器的版本和處理器類(lèi)型 select @@language 返回當(dāng)前SQL Server服務(wù)器的語(yǔ)言

      select @@connections

      4.輸入以下代碼并理解其含意

      bggin

      if 3>5

      select 'true'

      else print 'false'

      end

      go

      begin

      if 'a'<'A'

      select 'true'

      else print 'false'

      end

      go

      begin

      if '張'>'李'

      select 'true'

      else print 'false'

      end

      go

      begin

      if getdate()>2008-10-10

      print'true'

      else print'false'

      end

      5.附加數(shù)據(jù)庫(kù)student,并進(jìn)行以下操作

      use student

      select * from xsda

      以XSDa表為例,如果平均成績(jī)高于75分,則顯示“不錯(cuò)!”,否則,顯示“加油呀!”。

      declare @av1 char(12), @av2 char(12)

      set @av1='不錯(cuò)!'

      set @av2='加油!'

      if(select avg(總學(xué)分)from xsda)>75

      begin

      select @av1

      end

      else

      select @av2

      編寫(xiě)一個(gè)程序,顯示每一同學(xué)的成績(jī)等級(jí)

      select xh,zf,dj=

      case

      when zf>70 then '優(yōu)秀'

      when zf>65 then '良好'

      when zf>=60 then '合格'

      else '不合格'

      end

      from xsdn

      6.求1-100偶數(shù)和(參考代碼)

      declare @i int,@s int/*定義變量*/

      set @i=0/*變量賦初值*/

      set @s=0

      while @i<=100/*條件*/

      begin

      set @s=@s+@i/*累加求和*/

      set @i=@i+2/*偶數(shù)*/

      end

      print @s

      7.求10!

      8.為以下程序糾錯(cuò)(求1-100的積)

      declare @i int,@s int

      set @i=0

      set @s=0

      while @i<=100 begin

      set @s=@s*@iset @i=@i+2 end

      print @s

      第四篇:SQL 語(yǔ)言

      SQL語(yǔ)言

      create database student

      on primary

      (name=student_data1,filename='c:student_data1.mdf',size=10M,maxsize=100M,filegrowth=10%)

      filegroupstudent_group分組

      (name=student_data2,filename='c:student_data2.ndf',size=10M,maxsize=100M,filegrowth=10%)

      log on

      (name=student_log1,filename='c:student_data1.ldf',size=10M,maxsize=100M,filegrowth=10%)

      create table xi

      (系編號(hào) char(2)primary key,系名varchar(20))主碼

      insert into xi values('01','物理系')

      insert into xi values('02','化學(xué)系')

      select *from xi查詢(xún)

      create table student

      (學(xué)號(hào) char(11)primary key,姓名varchar(10),民族 char(2)default'漢',出生日期datetime ,獎(jiǎng)學(xué)金 money check(獎(jiǎng)學(xué)金<=8000), 系編號(hào) char(2)foreign key references xi(系編號(hào)))

      默認(rèn)值,約束,外碼

      insert into student values('20090214201','馬帥', '漢','1990-1-8',1500, '01')

      insert into student values('20100214202','周伊','回' ,'1989-2-4',500,'02')

      update student set 出生日期='1911-3-1'where 學(xué)號(hào) ='20100214201'

      更新數(shù)據(jù)

      select* from student/ 3

      alter table student add 性別 char(2)check(性別='男'or 性別='女')

      增加列

      update student set 性別 ='男' where 學(xué)號(hào) ='20090214201' update student set 性別 ='女' where 學(xué)號(hào) ='20100214202' select student* from student where left(學(xué)號(hào),4)=’2009’ 查詢(xún)大三學(xué)生的詳細(xì)信息

      create table kc

      (課程編號(hào) char(2),課程名varchar(20))

      alter table kc alter column 課程編號(hào) char(2)not null 修改字段

      alter table kc addconstraint pk_kcprimary key(課程編號(hào))加主碼(加主碼的字段不能為空)

      insert into kc values('01','語(yǔ)文')

      insert into kc values('02','數(shù)學(xué)')

      insert into kc values('03','英語(yǔ)')

      update kc set課程名 ='歷史學(xué)' where 課程編號(hào)= '05' execute sp_rename '課程編號(hào)','課程名','column'

      改名

      create table cj

      (學(xué)號(hào) char(11)foreign key references student(學(xué)號(hào)))alter table cj add 課程編號(hào) char(2)

      增加列

      alter table cj add foreign key(課程編號(hào))references kc(課程編號(hào))

      增加外碼

      alter table cj add 成績(jī)varchar(3)

      insert into cj values('20100214201','01','69')

      insert into cj values('20100214201','02','90')

      insert into cj values('20100214201','03','56')

      insert into cj values('20100214202','01','26')

      insert into cj values('20100214202','02','54')

      insert into cj values('20100214202','03','89')

      1.select student.*,課程名,成績(jī) ,系名 from student ,kc,cj ,xi where student.系編號(hào) = xi.系編號(hào)and cj.學(xué)號(hào)=student.學(xué)號(hào) and kc.課程編號(hào)=cj.課程編號(hào) and student.學(xué)號(hào)='20100214202'

      查詢(xún)學(xué)號(hào)為20100214202的學(xué)生student表的全部?jī)?nèi)容和每門(mén)課的成績(jī)及所在系

      2.select 姓名,課程名,成績(jī),系名 from student,kc,cj,xi where student.學(xué)號(hào) = cj.學(xué)號(hào) and student.系編號(hào)=xi.系編號(hào) and cj.課程編號(hào)= kc.課程編號(hào) and month(getdate())=month(student.出生日期)and day(getdate())= day(student.出生日期)

      查詢(xún)今天過(guò)生日的學(xué)生的姓名每門(mén)課的成績(jī)及系名

      3.select student.學(xué)號(hào),課程名,成績(jī),系名 from student,kc,cj,xi where student.學(xué)號(hào)=cj.學(xué)號(hào) and kc.課程編號(hào)=cj.課程編號(hào) and student.系編號(hào)=xi.系編號(hào) and cj.學(xué)號(hào) =student.學(xué)號(hào) 查看所有學(xué)生的學(xué)號(hào)的每門(mén)課的成績(jī)及系名

      4.Select count()as 學(xué)生數(shù) from student ,xi where student.系編號(hào)=xi.系編號(hào)and xi.系名=’物理系’

      查看物理系的學(xué)生數(shù)

      5.Select student.姓名,avg(cj.成績(jī))as平均成績(jī) from student, cj where student.學(xué)號(hào)=cj.學(xué)號(hào)

      查看所有學(xué)生的平均成績(jī)

      第五篇:SQL語(yǔ)言簡(jiǎn)介

      SQL語(yǔ)言簡(jiǎn)介

      ㈠、什么是SQL語(yǔ)言

      SQL(Structure Query Languge,結(jié)構(gòu)化查詢(xún)語(yǔ)言)是一種數(shù)據(jù)庫(kù)專(zhuān)用的計(jì)算機(jī)語(yǔ)言,不管是Oracle、MS SQL、Access、MySQL或其他公司的數(shù)據(jù)庫(kù),也不管數(shù)據(jù)庫(kù)建立在大型主機(jī)或個(gè)人計(jì)算機(jī)上,都可以使用SQL語(yǔ)言來(lái)訪問(wèn)和修改數(shù)據(jù)庫(kù)的內(nèi)容。雖然不同公司的數(shù)據(jù)庫(kù)軟件多多少少會(huì)增加一些專(zhuān)屬的SQL語(yǔ)法,但大體上,它們還是遵循ASNI(美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì))制定的SQL標(biāo)準(zhǔn)。因?yàn)镾QL語(yǔ)言具有易學(xué)習(xí)及閱讀等特性,所以SQL逐漸被各種數(shù)據(jù)庫(kù)廠商采用,而成為一種共通的標(biāo)準(zhǔn)查詢(xún)語(yǔ)言。只要你學(xué)會(huì)SQL,即可操作各種數(shù)據(jù)庫(kù)如Visual Foxpro、Access、dBase等等??傊琒QL語(yǔ)言是各種數(shù)據(jù)庫(kù)都可以使用的數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)言。

      SQL語(yǔ)言不僅僅具有查詢(xún)數(shù)據(jù)庫(kù)的功能,而且可以對(duì)數(shù)據(jù)庫(kù)完成選取、增刪、更新與跳轉(zhuǎn)等各種操作。㈡、SQL語(yǔ)言的組成SQL語(yǔ)言是由命令(函數(shù))、子句、運(yùn)算符、加總函數(shù)及通配符等組成,分述如下:

      1、命令

      SQL的命令可分成數(shù)據(jù)定義語(yǔ)言與數(shù)據(jù)操作語(yǔ)言,數(shù)據(jù)定義語(yǔ)言可用來(lái)建立新的數(shù)據(jù)庫(kù)、數(shù)據(jù)表、字段及索引等,本教程不予介紹;另一為數(shù)據(jù)操作語(yǔ)言,可用來(lái)建立查詢(xún)表、排序、篩選數(shù)據(jù)、修改、增刪等動(dòng)作。數(shù)據(jù)定義語(yǔ)言命令常用的有選擇、添加、刪除和修改這四種:

      ⑴、命令:SELECT

      中文意思:選擇

      說(shuō)明:用于找出合乎條件的記錄

      ⑵、命令:INSERT

      中文意思:插入

      說(shuō)明:用于增加一筆記錄或合并兩個(gè)數(shù)據(jù)表

      ⑶、命令:UPDATE

      中文意思:更新

      說(shuō)明:用于更正合乎條件的記錄

      ⑷、命令:DELETE

      中文意思:刪除

      說(shuō)明:用于刪除合乎條件的記錄

      2、子句

      子句是用于設(shè)定命令要操作的對(duì)象(即參數(shù)),SQL所用的子句如下:

      ⑴、子句:FROM

      中文意思:數(shù)據(jù)表

      說(shuō)明:用于指定數(shù)據(jù)表

      ⑵、子句:WHERE

      中文意思:條件

      說(shuō)明:用于設(shè)定條件

      ⑶、GROUP BY

      中文意思:分組(合并)

      說(shuō)明:用于設(shè)定分組

      ⑷、ORDER BY

      中文意思:排序

      說(shuō)明:用于設(shè)定輸出的順序及字段

      3、運(yùn)算符

      子句參數(shù)中的運(yùn)算符使子句構(gòu)成不同的語(yǔ)法格式,如“字段1='100'”、“字段1>'100'”等。運(yùn)算符又分邏輯運(yùn)算符與比較運(yùn)算符。

      ◇邏輯運(yùn)算符如下:

      ⑴、運(yùn)算符:AND

      中文意思:并且

      說(shuō)明:邏輯且

      ⑵、運(yùn)算符:OR

      中文意思:或者

      說(shuō)明:邏輯非

      ⑶、運(yùn)算符:NOT

      中文意思:取反

      說(shuō)明:邏輯非或邏輯反

      ◇比較運(yùn)算符如下:

      ⑴、運(yùn)算符:<說(shuō)明:小于

      ⑵、運(yùn)算符:≤說(shuō)明:小于等于

      ⑶、運(yùn)算符:≥說(shuō)明:大于等于

      ⑷、運(yùn)算符:>說(shuō)明:大于

      ⑸、運(yùn)算符:=說(shuō)明:等于

      ⑹、運(yùn)算符:<>說(shuō)明:不等于

      ⑺、運(yùn)算符:BETWEEN說(shuō)明:用于設(shè)定范圍中文意思:在...之間

      ⑻、運(yùn)算符:LIKE說(shuō)明:用于通配設(shè)定中文意思:如同

      ⑼、運(yùn)算符:IN說(shuō)明:用于集合設(shè)定中文意思:在...之內(nèi)

      4、加總函數(shù)

      加總函數(shù)常常運(yùn)用在命令的參數(shù)中,如:“SELECT SUM(數(shù)學(xué)),AVG(數(shù)學(xué))FROM 成績(jī)單”。⑴、加總函數(shù):AVG

      中文意思:平均

      說(shuō)明:用于求指定條件的平均

      ⑵、加總函數(shù):COUNT

      中文意思:數(shù)量

      說(shuō)明:用于求指定的數(shù)量

      ⑶、加總函數(shù):SUM

      中文意思:和

      說(shuō)明:用于求指定條件的和

      ⑷、加總函數(shù):MAX

      中文意思:最大值

      說(shuō)明:用于求指定條件的最大值

      ⑸、加總函數(shù):MIN

      中文意思:最小值

      說(shuō)明:用于求指定條件的最小值

      5、通配符

      ⑴、通配符:%意義:任何長(zhǎng)度的字符串(包括0)

      ⑵、通配符:_意義:下劃線表示任何一個(gè)字符

      ⑶、通配符:[ ]意義:中括號(hào)表示某個(gè)范圍內(nèi)的一個(gè)字符

      在下一講將說(shuō)明SQL語(yǔ)言是怎樣把命令(函數(shù))、子句、運(yùn)算符、及加總函數(shù)等組合在一起的。

      下載淺談SQL語(yǔ)言教學(xué)的一點(diǎn)體會(huì)word格式文檔
      下載淺談SQL語(yǔ)言教學(xué)的一點(diǎn)體會(huì).doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶(hù)自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        SQL語(yǔ)言總結(jié)

        select 姓名,sum(成績(jī)) as 總分from 學(xué)生 inner join 成績(jī) on 學(xué)生.學(xué)號(hào)=成績(jī).學(xué)號(hào) group by 姓名 答:從通過(guò)學(xué)號(hào)建立的學(xué)生與成績(jī)關(guān)系表中選擇選擇學(xué)生成績(jī)的姓名集合Update 學(xué)......

        sql語(yǔ)言學(xué)習(xí)

        SQL語(yǔ)言學(xué)習(xí) --語(yǔ) 句功 能 --數(shù)據(jù)操作 SELECT--從數(shù)據(jù)庫(kù)表中檢索數(shù)據(jù)行和列 INSERT--向數(shù)據(jù)庫(kù)表添加新數(shù)據(jù)行 DELETE--從數(shù)據(jù)庫(kù)表中刪除數(shù)據(jù)行 UPDATE--更新數(shù)據(jù)庫(kù)表中的數(shù)......

        SQL語(yǔ)言簡(jiǎn)介

        SQL—結(jié)構(gòu)化查詢(xún)語(yǔ)言數(shù)據(jù)定義語(yǔ)言 CREATE DROP ALTER數(shù)據(jù)操縱語(yǔ)言 SELECT INSERT UPDATE DELETE數(shù)據(jù)控制語(yǔ)言 GRANT REVOKE數(shù)據(jù)定義語(yǔ)言CREATE TABLE 學(xué)生 (學(xué)生ID SMALLINT......

        SQL語(yǔ)言(模版)

        SQL語(yǔ)言 1. 數(shù)據(jù)定義: a) Create 創(chuàng)建 b) Drop 刪除對(duì)象 數(shù)據(jù)表 ? 表的創(chuàng)建:create table 表名(字段名1 類(lèi)型 primary key注:主鍵,字段名2 類(lèi) 型,……, check 表級(jí)約束) 例:S(Sno......

        SQL語(yǔ)言匯總

        1. UPDATE MARK SET 總分=語(yǔ)文+數(shù)學(xué)+英語(yǔ)SELECT 準(zhǔn)考證號(hào),姓名,總分 FROM MARK WHERE 語(yǔ)文>=75 AND數(shù)學(xué)>=75 AND 英語(yǔ)>=75 AND 語(yǔ)文+數(shù)學(xué)+英語(yǔ)>=240 ORDER BY 總分 DESC2 UP......

        SQL查詢(xún)語(yǔ)言

        《SQL查詢(xún)語(yǔ)言》教學(xué)設(shè)計(jì) 一、 教學(xué)目標(biāo)分析 認(rèn)知目標(biāo) 學(xué)習(xí)SQL查詢(xún)語(yǔ)言的使用方法。 掌握SQL語(yǔ)言當(dāng)中的SELECT語(yǔ)句 能力目標(biāo) 培養(yǎng)學(xué)生應(yīng)用查詢(xún)語(yǔ)句查詢(xún)數(shù)據(jù)的應(yīng)用能力 情感......

        SQL語(yǔ)言以及SQL

        SQL語(yǔ)言以及SQL*PLUS工具 1. SQL語(yǔ)言組成: ? 數(shù)據(jù)查詢(xún)語(yǔ)言(DQL):SELECT; ? 數(shù)據(jù)操縱語(yǔ)言(DML):INSERT、UPDATE、DELETE; ? 事務(wù)控制語(yǔ)言(TCS):COMMIT、ROLLBACK; ? 數(shù)據(jù)定義語(yǔ)言(DDL):CREATE、DR......

        數(shù)據(jù)庫(kù)sql語(yǔ)言總結(jié)

        插入句型: insertinto [各屬性名]values(,……)刪除元組或者二維表: delete from[ where ]刪除屬性: altertabledropcolumn增加某表的屬性: altertableadd 類(lèi)型 修改句型: update......