第一篇:SQL基礎(chǔ)數(shù)據(jù)庫語法
一、表空間操作
1.創(chuàng)建表空間
Create tablespace xxx(表名)Datafile ’x:xxxxxx.dbf(文件地址)’ Size 10m(文件大?。゛utoexdend on;2.刪除表空間
Droptablespacexxx(表空間名); 刪除表空間及文件
Drop tablespace xxx including contents and datafiles;
二、用戶操作
1.創(chuàng)建用戶
Create user xxx(用戶名)identified by xxx(密碼)Default tablespace xxx(表名);2.刪除用戶
Drop user xxx(用戶名)cascade;3.授予權(quán)限
Grantconnect,resource(權(quán)限)to xxx(用戶名);Grant dba(最高權(quán)限)to xxx(用戶名);Grant select on scott.emp to xxx(用戶名);Grant update on scott.emp to xxx(用戶名);撤銷權(quán)限
Revoke connect,resource(權(quán)限)fromxxx(用戶名);4.用戶登錄
Connxxx(用戶名)/xxx(密碼)@xxx(表空間名);
三、表數(shù)據(jù)操作
1.創(chuàng)建表結(jié)構(gòu)語法
1)創(chuàng)建表結(jié)構(gòu)
CREATE TABLE student(stu_no CHAR(4)PRIMARY KEY NOT NULL,--學(xué)號(hào),主鍵,非空
stu_name VARCHAR2(30)NOT NULL,--姓名,非空
stu_id VARCHAR2(18),--身份證號(hào),代表18位整數(shù)
stu_gid Number(10),--年級(jí)
stu_age NUMBER(3,0)--年齡);2)復(fù)制表結(jié)構(gòu)
利用現(xiàn)有表創(chuàng)建新表,select 后邊有多少字段,新表將有多少個(gè)字段,主鍵不會(huì)被創(chuàng)建
CREATE TABLE stu_info AS SELECT stu_no,stu_age FROM student;3)修改表結(jié)構(gòu)
修改student表,添加stu_seat(座號(hào))和stu_Address(住址)兩個(gè)列
ALTER TABLE student ADD(stu_seat NUMERIC(2,0),stu_address VARCHAR2(20));修改student表的列的定義 ALTER TABLE student modify(stu_name VARCHAR2(50), stu_address VARCHAR2(100));刪除student表中stu_ address和stu_seat列 ALTER TABLE student drop(stu_address, stu_seat);修改student表列名
Alter table student rename column stu_no TO rempno;
4)刪除表結(jié)構(gòu)
刪除student表結(jié)構(gòu)及數(shù)據(jù) 這種刪除的情況,可以恢復(fù); Drop table student;只刪除表數(shù)據(jù),每條刪除的記錄不寫日志,省資源,效律比delete高
但是,絕對(duì)情況下都不使用truncate刪除表,因?yàn)椴豢梢曰謴?fù)。Truncate table student;5)添加注釋
Comment on table student is '學(xué)生表';Comment on column student.name is '名稱';2.插入表數(shù)據(jù)
往student表插入數(shù)據(jù) Insert into
student(stu_no,stu_name,stu_id,stu_gid,stu_age)values('a001','張大','44***92111',10,19);insert into student(stu_no,stu_name,stu_id,stu_gid,stu_age)values('a002','張二','44***92112',10,20);insert into
student(stu_no,stu_name,stu_id,stu_gid,stu_age)values('a003','張三','44***92113',10,20);commit;最后的commit提交數(shù)據(jù)到數(shù)據(jù)庫,否則只是在緩存插入了表數(shù)據(jù)。
3.刪除表數(shù)據(jù)
根據(jù)條件刪除表數(shù)據(jù)
Delete from student where stu_no='a004';請(qǐng)空表,不寫日志,省資源,效律高,屬于數(shù)據(jù)定義語言 Truncate table student;4.修改表數(shù)據(jù)
修改學(xué)號(hào)為‘a(chǎn)002’學(xué)員的名字為‘李二’
Update student set(列)stu_name='李二' where stu_no='a002';所有學(xué)員的年齡都加1 Update student set(列)stu_age=stu_age+1;5.查詢表數(shù)據(jù)
order bygroup bywherehavinglikein 等子查詢方法 1)distinct去重復(fù)查詢
查詢(結(jié)果)無重復(fù)數(shù)據(jù)行,distinct關(guān)鍵字使用:
查詢結(jié)果包括學(xué)員名字和年齡,如果存在學(xué)員名字和年齡都一樣的多條記錄將只返回一條
-->Select distinctstu_name,stu_age from student;2)Order by結(jié)果排序
Order by 語法默認(rèn)是升序,加desc語法表示降序。E:工的姓名按首字母排序,并寫出姓名的長度(length)。select last_name,length(last_name)from employees order by last_name;降序:
Select last_name,length(last_name)from employees order by last_name desc;
第二篇:SQL數(shù)據(jù)庫心得
黃淮學(xué)院 2015---2016學(xué)年第 一 學(xué)期 《C#數(shù)據(jù)庫應(yīng)用程序開發(fā)技術(shù)與案例教程》課程
題目:
學(xué)習(xí)報(bào)告
院
系:數(shù)學(xué)科學(xué)系 專
業(yè):數(shù)學(xué)與應(yīng)用數(shù)學(xué) 年
級(jí):1301B 姓
名:曹占營 學(xué)
號(hào):1331110101 任課教師:楊鋒英
2015年 12 月 30日
C#數(shù)據(jù)庫學(xué)習(xí)報(bào)告
在日常生活中,我們和朋友、親戚聯(lián)系,會(huì)廣泛用到通訊錄,因此這門課程以通訊錄開發(fā)為案例,教我們學(xué)習(xí)軟件開發(fā)。
軟件開發(fā)是一項(xiàng)非常注重實(shí)踐工作,不可能只憑看書、看視頻就學(xué)會(huì)軟件開發(fā),必須扎扎實(shí)實(shí)、一行一行的編寫代碼,不斷積累項(xiàng)目經(jīng)驗(yàn),才能真正掌握編程技術(shù),所以我們要親自上級(jí)編寫程序,才能真正掌握軟件開發(fā)技術(shù)。
本書分為基礎(chǔ)篇、進(jìn)階篇、高級(jí)篇,由淺入深地介紹了基于C#的數(shù)據(jù)庫編程技術(shù),所用的開發(fā)工具為Visual Studio 2008、SQL Server 2005以及Access 2007。
學(xué)習(xí)數(shù)據(jù)庫的內(nèi)容是從數(shù)據(jù)庫、數(shù)據(jù)表的創(chuàng)建和修改開始的,表是建立關(guān)系數(shù)據(jù)庫的基本結(jié)構(gòu),用來存儲(chǔ)數(shù)據(jù)具有已定義的屬性,在表的操作過程中,有查看表信息、查看表屬性、修改表中的數(shù)據(jù)、刪除表中的數(shù)據(jù)及修改表和刪除表的操作。從課程中讓我更明白一些知識(shí),查詢可以通過SQL語言進(jìn)行完成,這樣加深了查詢語句的基本結(jié)構(gòu),讓我們能更好的掌握其中語句,方便于我們后面的學(xué)習(xí)和應(yīng)用。表是數(shù)據(jù)最重要的一個(gè)數(shù)據(jù)對(duì)象,表的創(chuàng)建好壞直接關(guān)系到數(shù)數(shù)據(jù)庫的成敗,表的內(nèi)容是越具體越好,但是也不能太繁瑣,以后在實(shí)際應(yīng)用中多使用表,對(duì)表的規(guī)劃和理解就會(huì)越深刻。在編程方面是需要我們對(duì)于編程有邏輯思維能力及一定的編程技巧。在數(shù)據(jù)庫中插入表、表中的信息等都需要注意,不然很容易出錯(cuò)。
在基礎(chǔ)篇中,詳細(xì)講解了通訊錄系統(tǒng)的設(shè)計(jì)、開發(fā)和安裝部署這樣一個(gè)完整過程,對(duì)各個(gè)任務(wù)進(jìn)行詳細(xì)講解?;A(chǔ)篇學(xué)習(xí)分為9個(gè)任務(wù),分別為系統(tǒng)分析與設(shè)計(jì)、用戶登錄、主窗體設(shè)計(jì)、聯(lián)系人分組管理、聯(lián)系人管理、用戶密碼修改、數(shù)據(jù)庫備份與恢復(fù)、設(shè)計(jì)“關(guān)于”窗體、系統(tǒng)安裝與部署。學(xué)完基礎(chǔ)篇,即可開發(fā)出一個(gè)功能較為完備的通訊錄系統(tǒng)。在聯(lián)系人管理任務(wù)學(xué)習(xí)中,由于在Contact表中保存的是分組編號(hào),而窗體上要顯示的是分組名稱,所以在查詢語句中需要級(jí)聯(lián)查詢,即SQL語句為”select Contact.Id, Name, Phone, Email, QQ, GroupName from Contact, ContactGroup where Contact.GroupId = ContactGroup.Id”。為了實(shí)現(xiàn)代碼復(fù)用,可以提供查詢功能,根據(jù)用戶選擇的擦尋天劍,拼接產(chǎn)生SQL語句。同時(shí)為了支持模糊查詢,還在SQL語句中用了like語句。通過SqlDataAdapter的Fill方法填充數(shù)據(jù)集,獲取數(shù)據(jù)。數(shù)據(jù)集中有了數(shù)據(jù)以后,我們只需設(shè)置DataGridView控件的DataSource屬性,就可以顯示數(shù)據(jù)了。
在進(jìn)階篇中,介紹了企業(yè)項(xiàng)目開發(fā)中廣發(fā)用到的參數(shù)化SQL語句、存儲(chǔ)過程使用及定義數(shù)據(jù)庫操作類,分為3個(gè)任務(wù)學(xué)習(xí),分別為使用參數(shù)化SQL語句、使用存儲(chǔ)過程、使用自定義數(shù)據(jù)庫操作類,進(jìn)一步提高我們的數(shù)據(jù)庫編程能力。在使用存儲(chǔ)過程任務(wù)學(xué)習(xí)中,了解到存儲(chǔ)過程是在大型數(shù)據(jù)庫系統(tǒng)中,一組為了完成特定功能的SQL語句集,經(jīng)編譯后存儲(chǔ)在數(shù)據(jù)庫中,用戶通過指定存儲(chǔ)過程的名字并給出參數(shù)(如果該存儲(chǔ)過程帶有參數(shù))來執(zhí)行它。在性能方面,存儲(chǔ)過程有如下的優(yōu)點(diǎn)。(1)與編譯,存儲(chǔ)過程預(yù)先編譯好放在數(shù)據(jù)庫內(nèi),減少編譯語句所花的時(shí)間。(2)緩存,編譯好的存儲(chǔ)過程會(huì)進(jìn)入緩存,所以對(duì)于經(jīng)常執(zhí)行的存儲(chǔ)過程,除了第一次執(zhí)行外,其他次執(zhí)行的書都會(huì)有明顯提高。(3)減少網(wǎng)絡(luò)傳輸,特別對(duì)于處理一些數(shù)據(jù)的存儲(chǔ)過程,不必像直接用SQL語句實(shí)現(xiàn)那樣多次傳送數(shù)據(jù)到客戶端。通過前面的學(xué)習(xí),細(xì)細(xì)體會(huì)對(duì)數(shù)據(jù)庫的操作,可以發(fā)現(xiàn),這么多操作其實(shí)可以分為4種。(1)對(duì)數(shù)據(jù)庫進(jìn)行非連接式查詢操作,返回多條記錄。這種操作可以通過SqlDataAdapter對(duì)象的Fill方法來完成,即把查詢得到的結(jié)果填充到DataTable(或DataSet)對(duì)象中。(2)對(duì)數(shù)據(jù)庫進(jìn)行連接式查詢操作,返回多條查詢記錄。這種操作可以通過SqlCommand對(duì)象的ExecuteReader方法來完成,返回SqlDataReader對(duì)象。(3)從數(shù)據(jù)庫中檢索單值。這種操作可以通過SqlCommand對(duì)象的ExecuteNonQuery方法來完成。ExecuteScalar方法返回的是Object類型,需要根據(jù)實(shí)際情況進(jìn)行類型轉(zhuǎn)換。(4)對(duì)數(shù)據(jù)庫執(zhí)行增、刪、改操作。這種操作可以通過SqlCommand對(duì)象的ExecuteNonQuery方法來完成,返回增、刪、改操作后數(shù)據(jù)庫中受影響的行數(shù)。
在高級(jí)篇中,分為4個(gè)任務(wù)學(xué)習(xí),分別為開發(fā)基于三層構(gòu)架的通訊錄程序、開發(fā)基于Access的通訊錄程序、實(shí)現(xiàn)基于抽象工廠模式的三層架構(gòu)、使用MD5加密用戶密碼。首先詳細(xì)講解了基于三層構(gòu)架的通訊錄程序開發(fā)過程以及如何開發(fā)一個(gè)基于Access的通訊錄系統(tǒng)。最后,介紹了如何采用MD5加密技術(shù)對(duì)用戶密碼加密。MD5加密技術(shù)也是實(shí)際項(xiàng)目開發(fā)中廣泛用到的,通過MD5加密用戶密碼,可以提高程序的安全性?!叭龑蛹軜?gòu)”一詞中的“三層”是指:“表示層”、“業(yè)務(wù)邏輯層”、“數(shù)據(jù)訪問層”。表示層:位于最外層,離用戶最近。用于顯示和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作界面。表示層的常見形式為WinFrom和WebForm。業(yè)務(wù)邏輯層:負(fù)責(zé)處理用戶輸入的信息,或者是將這些信息發(fā)送給數(shù)據(jù)訪問層進(jìn)行保存,或者是調(diào)用數(shù)據(jù)訪問層中的函數(shù)再次讀出這些數(shù)據(jù)。業(yè)務(wù)邏輯層也可以包括一些對(duì)“商業(yè)邏輯”描述代碼在里面。數(shù)據(jù)訪問層:僅實(shí)現(xiàn)對(duì)數(shù)據(jù)的保存和讀取操作。可以訪問數(shù)據(jù)庫系統(tǒng)、二進(jìn)制文件、文本文檔或是XML文檔。
在這一學(xué)期有限的幾次實(shí)驗(yàn)課后,我雖然沒有學(xué)會(huì)很多,但也學(xué)會(huì)了一些簡單的操作,我學(xué)會(huì)了一些簡單的數(shù)據(jù)運(yùn)算,會(huì)建立一些簡單的表。有時(shí)候在做實(shí)驗(yàn)時(shí),對(duì)于實(shí)驗(yàn)中的一些東西我不怎么了解,但我還會(huì)去做,因?yàn)槲蚁胫挥卸嗑毩?xí)才能熟練,也才能理解掌握知識(shí)。我不知道這一門課對(duì)其他同學(xué)來說怎么樣,但對(duì)我來說卻有些難,但我會(huì)努力。因?yàn)槲艺J(rèn)為它對(duì)我以后考計(jì)算機(jī)二級(jí)有很大的幫助。
很快這一學(xué)期馬上就要結(jié)束了,數(shù)據(jù)庫這一門課也很快就要結(jié)束了,但這一學(xué)期的學(xué)習(xí)讓我知道了很多,也告訴了我在以后的人生中如何去做事,如何去做人。尤其是老師的耐心,老師的敬業(yè)精神感動(dòng)了我,再做任何事時(shí)都應(yīng)該認(rèn)真負(fù)責(zé),任何一個(gè)人都應(yīng)該被尊重。
第三篇:SQL數(shù)據(jù)庫選擇題及答案
1、在數(shù)據(jù)庫技術(shù)中,獨(dú)立于計(jì)算機(jī)系統(tǒng)的模型是_C__。A、面向?qū)ο蟮哪P虰、關(guān)系模型C、E-R模型D、層次模型
2、數(shù)據(jù)庫系統(tǒng)的控制中樞是__B_。A、數(shù)據(jù)庫、b、數(shù)據(jù)庫管理系統(tǒng)C、數(shù)據(jù)庫管理員D、數(shù)據(jù)庫應(yīng)用系統(tǒng)
3、使用SQL命令將學(xué)生表STUDENT中的學(xué)生年齡AGE字段的值增加1歲,應(yīng)該使用的命令是__C_。
A、UPDATE SET AGE WITH AGE+1
B、REPLACE AGE WITH AGE+1
C、UPDATE STUDENT SET AGE=AGE+1
D、UPDATE STUDENT AGE WITH AGE+1
4、在關(guān)系數(shù)據(jù)庫中,建立數(shù)據(jù)庫表時(shí),將年齡字段值限制在12~40歲之間的這種約束屬于__B__。
A、視圖完整性約束B、域完整性約束C、參照完整性約束D、實(shí)體完整性約束
5、在 SQL 語句中,與 X BETWEEN 20 AND 30 等價(jià)的表達(dá)式是__D_。A、X>=20 AND X<30
B、X>20 AND X<30
C、X>20 AND X<=30
D、X>=20 AND X<=30
6、在數(shù)據(jù)庫中,概念模型是_D__。A、用于現(xiàn)實(shí)的建模,與具體的DBMS有關(guān)B、用于信息世界的建模,與具體的DBMS有關(guān)
C、用于現(xiàn)實(shí)的建模,與具體的DBMS無關(guān)D、用于信息世界的建模,與具體的DBMS無關(guān)
7、數(shù)據(jù)庫的并發(fā)操作可能帶來的問題包括__B_。A非法用戶的使用B丟失更新C數(shù)據(jù)獨(dú)立性會(huì)提高D增加數(shù)據(jù)冗余度
8、在關(guān)系數(shù)據(jù)庫中,模式對(duì)應(yīng)的是__A___。A、視圖和所有基本表
B、視圖和部分基本表
C、基本表
D、索引
9、能實(shí)現(xiàn)絕對(duì)的與平臺(tái)無關(guān)性的Web數(shù)據(jù)庫訪問技術(shù)是_D_。A、ADO
B、ActiveX
C、WebbaseAPI
D、JDBC
10、在下列描述中,正確的描述是__B___。
A、SQL 是一種過程化語言B、SQL 采用集合操作方式
C、SQL 不能嵌入到高級(jí)語言程序中
D、SQL 是一種 DBMS
11、數(shù)據(jù)庫系統(tǒng)是由__A__組成的。A、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和用戶
B、數(shù)據(jù)文件、命令文件和報(bào)表
C、數(shù)據(jù)庫文件結(jié)構(gòu)和數(shù)據(jù)
D、常量、變量和函數(shù)
12、在SQL查詢時(shí),使用WHERE子句指出的是__B__。A、查詢目標(biāo)B、查詢條件C、查詢視圖D、查詢結(jié)果
13、在下列 RDMBS 產(chǎn)品中,屬于小型數(shù)據(jù)庫系統(tǒng)的是_A_。A、Access B、Oracle C、Sybase D、Informix
14、數(shù)據(jù)庫類型是按照_A_來劃分的。
A、數(shù)據(jù)模型B、記錄形式C、數(shù)據(jù)存取方法D、文件形式
15、作為Microsoft Office家族成員之一的_A_數(shù)據(jù)庫,能夠與其他Office組件進(jìn)行數(shù)據(jù)交換共享數(shù)據(jù)資源,易于生成集文字處理、圖表生成和數(shù)據(jù)管理于一體的辦公自動(dòng)化系統(tǒng)。A、Access
B、Oracle
C、Sybase
D、Informix
16、數(shù)據(jù)庫管理系統(tǒng)更適合于_D_方面的應(yīng)用。A、CAD
B、過程控制C、科學(xué)計(jì)算D、數(shù)據(jù)處理
17、下列四組SQL命令,全部屬于數(shù)據(jù)定義語句的命令是_C__。A、CREATE,DROP,ALTER
B、CREATE,DROP,UPDATE
C、CREATE,DROP,GRANT
D、CREATE,DROP,SELECT
18、通過Internet及瀏覽器處理的數(shù)據(jù)庫,應(yīng)該是_C__處理。A、集中式
B、分布式
C、主從結(jié)構(gòu)式D、以上3種模式
19、數(shù)據(jù)的邏輯獨(dú)立性是指__D_。A、數(shù)據(jù)與存儲(chǔ)結(jié)構(gòu)的邏輯獨(dú)立性 B、數(shù)據(jù)元素之間的邏輯獨(dú)立性
C、存儲(chǔ)結(jié)構(gòu)與物理結(jié)構(gòu)的邏輯獨(dú)立性
D、數(shù)據(jù)與程序的邏輯獨(dú)立性
20、在數(shù)據(jù)庫技術(shù)中,獨(dú)立于計(jì)算機(jī)系統(tǒng)的模型是_C__。A面向?qū)ο蟮哪P?/p>
B關(guān)系模型
C、E-R模型
D、層次模型
21、關(guān)系代數(shù)的3個(gè)基本運(yùn)算是–D--、投影、連接。A、關(guān)系與B、蘊(yùn)含C、關(guān)系或D、選擇
22、下面命題不正確的是:A、若冗余數(shù)據(jù)可以控制,則數(shù)據(jù)更新的一致性得以保證
B、數(shù)據(jù)庫減少了不必要的數(shù)據(jù)冗余C、數(shù)據(jù)庫的數(shù)據(jù)可以共享D、數(shù)據(jù)庫中不存在數(shù)據(jù)冗余
23、在基本SQL中不可以實(shí)現(xiàn): A、定義視圖B、并發(fā)控制C、定義基表D、查詢視圖和基表
24、用二維表來表示實(shí)體及實(shí)體之間聯(lián)系的數(shù)據(jù)模型稱為_C___。
A、實(shí)體-聯(lián)系模型B、層次模型C、關(guān)系模型D、網(wǎng)狀模型
25、查找工資在600元以上并且職稱為工程師的紀(jì)錄,邏輯表達(dá)式為_D___。
A、“工資”>600.OR.職稱=“工程師”
B、工資>600.AND.職稱=工程師
C、“工資”>600.AND.“職稱”=“工程師”
D、工資>600.AND.職稱=“工程師”
26、數(shù)據(jù)庫鏡像可以用于__C_。(1分)
A、實(shí)現(xiàn)數(shù)據(jù)庫的安全性
B、實(shí)現(xiàn)數(shù)據(jù)共享C、進(jìn)行數(shù)據(jù)庫恢復(fù)或并發(fā)操作D、保證數(shù)據(jù)庫的完整性
27、在下列類型的數(shù)據(jù)庫系統(tǒng)中,應(yīng)用最廣泛的是__C___。(1分)
A、分布型數(shù)據(jù)庫系統(tǒng)B、邏輯型數(shù)據(jù)庫系統(tǒng)C、關(guān)系型數(shù)據(jù)庫系統(tǒng)D、層次型數(shù)據(jù)庫系統(tǒng)
28、在下列描述中,正確的描述是__B__。(1分)A、SQL 是一種過程化語言B、SQL 采用集合操作方式
C、SQL 不能嵌入到高級(jí)語言程序中
D、SQL 是一種 DBMS
第四篇:數(shù)據(jù)庫sql語言總結(jié)
插入句型:
insertinto<表名> [各屬性名]values(<常量1>,<常量2>……)
刪除元組或者二維表:
delete from<表名>[ where <條件> ]
刪除屬性:
altertable<表名>dropcolumn<列名>
增加某表的屬性:
altertable<表名>add<列名> 類型
修改句型:
update<表名>set<列名> =<表達(dá)式>[where<條件>]
修改某表當(dāng)中的屬性類型:
altertable<表名>altercolumn<列名><轉(zhuǎn)換的類型>;
顯示表的一些基本情況
EXEC sp_help'<表名>'
更改當(dāng)前數(shù)據(jù)庫中用戶創(chuàng)建對(duì)象(如表、列或用戶定義數(shù)據(jù)類型)的名稱 sp_rename ‘<舊的表名>’, ‘<新的表名>’
修改表的列名 sp_rename'<表名>.
小注:上面的語句最后不需要加分號(hào)
判斷表中是否存在某列的語句
if exists(select * from syscolumns where id = object_id('stu')and name='Sno')
print 'stu exists'
else print 'stu not exists'
將表中的某列設(shè)置為主碼:
alter table stu addSno char primary key;
判斷表是否存在if exists(select count(*)from sysobjects where type='U' and name='stu')
查詢某個(gè)表中字段的列名和數(shù)據(jù)類型
select column_name,data_type from information_schema.columns where table_name = '表名';
第五篇:SQL數(shù)據(jù)庫學(xué)習(xí)心得
SQL數(shù)據(jù)庫學(xué)習(xí)心得
一 數(shù)據(jù)庫課程總結(jié)
(一)數(shù)據(jù)庫概述數(shù)據(jù)
(1)數(shù)據(jù)庫中存儲(chǔ)的基本對(duì)象,是描述事物的符號(hào)記錄(如存儲(chǔ)某一個(gè)人
(2)數(shù)據(jù)的種類包括文字、圖形、圖象、聲音
(3)數(shù)據(jù)的特點(diǎn)是數(shù)據(jù)與其語義是不可分的。數(shù)據(jù)庫
(1)(database,簡稱DB)是指長期存儲(chǔ)在電腦內(nèi)有組織的、可共享的數(shù)據(jù)集合;
(2)數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagement System,簡稱DBMS),是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。關(guān)系數(shù)據(jù)庫基礎(chǔ)
(1)元組(Tuple)表中的一行即為一個(gè)元組。
(2)屬性(Attribute)表中的一列即為一個(gè)屬性,給每一個(gè)屬性起一個(gè)名稱即屬性
名。
(3)主碼(Key)表中的某個(gè)屬性組,它可以唯一確定一個(gè)元組。
(4)域(Domain)屬性的取值范圍。
(5)分量元組中的一個(gè)屬性值。
(二)SQL Server概述SQL Server的版本
(1)企業(yè)版,作為生產(chǎn)使用
(2)個(gè)人版,供移動(dòng)用戶使用
(3)標(biāo)準(zhǔn)版,作為小工作組或部門使用
(4)開發(fā)板,供程序員開發(fā)測試使用SQL數(shù)據(jù)庫的創(chuàng)建
(1)創(chuàng)建數(shù)據(jù)庫的過程就是確定數(shù)據(jù)庫名稱、大小、存放位置等信息。
(2)數(shù)據(jù)庫文件包括主數(shù)據(jù)庫文件(.mdf)、次數(shù)據(jù)文件(.ndf)、事務(wù)日志文件(.ldf)
(3)3種方式創(chuàng)建數(shù)據(jù)庫:使用數(shù)據(jù)庫創(chuàng)建向?qū)А⑹褂闷髽I(yè)管理器、使用SQL語句在查
詢分析器中創(chuàng)建。
(三)數(shù)據(jù)庫中的表創(chuàng)建表兩種方式:使用企業(yè)管理器、使用SQL語句
2修改表,修改操作包括:增加字段、刪除字段、修改字段(名稱、修改其已有的屬性)兩種方式,使用企業(yè)管理器、使用SQL語句
(四)數(shù)據(jù)查詢
1基本的SELECT語句,例查詢Readers表中所有記錄的信息SELECT*FROM Readers 2查詢語句的統(tǒng)計(jì)功能
3數(shù)據(jù)的連接
外連接的結(jié)果集中,不僅包括滿足連接條件記錄,還包括不滿足連接條件的記錄。連接方式分為:左外連接、右外連接、全外連接。
(五)數(shù)據(jù)完整性
1定義:數(shù)據(jù)完整性是指存儲(chǔ)在數(shù)據(jù)庫中的數(shù)據(jù)的一致性和準(zhǔn)確性。
2實(shí)體完整性
又稱行完整性,要求表中不能存在完全相同的記錄,而且每條記錄都要具有一個(gè)非空且不重復(fù)的主鍵值。
3使用約束:約束是保證數(shù)據(jù)完整性的有效方法,(1)PRIMARY KEY(主鍵約束)特點(diǎn):每個(gè)表只能定義一個(gè)主鍵、主鍵值不可為空、主鍵值不可重復(fù)。
(2)UNIQUE(唯一約束)確保表中的某非主鍵列不輸入重復(fù)值,PRIMARY KEY 與 UNIQUE的區(qū)別、約束數(shù)量、是否允許NULL值
(3)CHECK(檢查約束),用于限制輸入到列中的值的范圍
(六)數(shù)據(jù)庫的安全
1對(duì)于SQL Server來說,提供身份驗(yàn)證和權(quán)限驗(yàn)證兩種保護(hù)方式。
(1)身份驗(yàn)證模式: Windows驗(yàn)證模式,只限于本機(jī)使用; 混合驗(yàn)證模式,本機(jī)或遠(yuǎn)程均可訪問角色管理是一種權(quán)限管理的方法,角色中的每一用戶都擁有此角色中的所有權(quán)限。3數(shù)據(jù)庫角色提供了在數(shù)據(jù)庫級(jí)別上的管理權(quán)限組。
(七)備份與恢復(fù)
1備份數(shù)據(jù)庫,使用SQL語句備份
步驟:(1)創(chuàng)建備份設(shè)備
(2)備份數(shù)據(jù)庫(完全數(shù)據(jù)庫備份、差異備份、日志備份、文件與文件組備份)2恢復(fù)數(shù)據(jù)庫(使用企業(yè)管理器恢復(fù)、使用SQL語句恢復(fù))
二 數(shù)據(jù)庫課程心得
在學(xué)習(xí)數(shù)據(jù)庫和數(shù)據(jù)表創(chuàng)建和修改時(shí),了解到表是建立關(guān)系數(shù)據(jù)庫的基本結(jié)構(gòu),用來存儲(chǔ)數(shù)據(jù)具有已定義的屬性,在表的操作過程中,有查看表信息、查看表屬性、修改表中的數(shù)據(jù)、刪除表中的數(shù)據(jù)及修改表和刪除表的操作。從課程中中讓我更明白一些知識(shí),表是數(shù)據(jù)最重要的一個(gè)數(shù)據(jù)對(duì)象,表的創(chuàng)建好壞直接關(guān)系到數(shù)數(shù)據(jù)庫的成敗,表的內(nèi)容是越具體越好,但是也不能太繁瑣,以后在實(shí)際應(yīng)用中多使用表,對(duì)表的規(guī)劃和理解就會(huì)越深刻。我們上機(jī)的另一個(gè)內(nèi)容是數(shù)據(jù)庫的約束、視圖、查詢。從中我們了解到查詢語句的基本結(jié)構(gòu),和簡單SELECT語句的使用,多表連接查詢。而在視圖的操作中,也了解到了視圖是常見的數(shù)據(jù)庫對(duì)象,是提供查看和存取數(shù)據(jù)的另一種途徑,對(duì)查詢執(zhí)行的大部分操作,使用視圖一樣可以完成。使用視圖不僅可以簡化數(shù)據(jù)操作,還可以提高數(shù)據(jù)庫的安全性,不僅可以檢索數(shù)據(jù),也可以通過視圖向基表中添加、修改和刪除數(shù)據(jù)。存儲(chǔ)過程、觸發(fā)器也是我們學(xué)習(xí)的內(nèi)容之一,在操作中有建立存儲(chǔ)過程,執(zhí)行存儲(chǔ)過程,及查看和修改存儲(chǔ)過程,這些都是非?;A(chǔ)的東西,但對(duì)用戶卻是非常重要的呢,只有熟悉了T_SQL語言,才能更好的掌握更多的東西。我們還學(xué)習(xí)了,SQL管理、數(shù)據(jù)的導(dǎo)入、導(dǎo)出、備份和還原。有SQL Server 安全訪問控制;登錄賬戶的管理;數(shù)據(jù)庫角色的管理;用戶權(quán)限管理。維護(hù)數(shù)據(jù)庫的安全是確保數(shù)據(jù)庫正常運(yùn)行的重要工作。數(shù)據(jù)的備份是對(duì)SQL Server數(shù)據(jù)事務(wù)日志進(jìn)行拷貝,數(shù)據(jù)庫備份記錄了在進(jìn)行備份操作的數(shù)據(jù)庫中所有數(shù)據(jù)的狀態(tài)。而數(shù)據(jù)的備份還分為數(shù)據(jù)庫完整備份、差異備份、事務(wù)日志備份、文件及文件組備份。做數(shù)據(jù)備份就是為了以后的數(shù)據(jù)庫恢復(fù)用。我們還做了倉庫管理數(shù)據(jù)庫,其中的要求包含了許多數(shù)據(jù)庫的對(duì)象,綜合了我們所學(xué)的許多知識(shí),讓我們更努力的把所學(xué)到的東西運(yùn)用上去。