資料庫學習之簡單的SQL語句,資料庫sql語句

來源:互聯網
上載者:User

資料庫學習之簡單的SQL語句,資料庫sql語句

1、資料庫的結構

1.1資料庫

不同資料庫叫做Catalog(在有的 DBMS 中也稱為 Database,即資料庫) 。採用多 Catalog 以後可以給我們帶
來如下好處:
便於對各個 Catalog 進行個人化管理。 DBMS 都允許我們指定將不同的 Catalog 儲存在不
同的磁碟上, 由於人力資源資料相對次要一些, 因此我們可以將 HR 儲存在普通硬碟上,
而將 BIZ 儲存在 RAID 硬碟上。 我們還可以對每個 Catalog 所能佔據的最大磁碟空間、日
志大小甚至優先順序進行指定,這樣就可以針對不同的業務資料進行個人化定製了。
避免了命名衝突。同一個 Catalog 中的表名是不允許重複的,而不同 Catalog 中的表名
則是可以重複的,這樣 HR 中可以有 Persons 表,而 BIZ 中也可以有 Persons 表,二者結
構可以完全不相同,儲存的資料也不會互相干擾。
 安全性更高。DBMS 允許為不同的 Catalog 指定不同的使用者,並且可以限定使用者能訪問
的 Catalog。比如使用者 hr123 只能訪問 HR,而使用者 sales001 只能訪問 BIZ。這就大大加
強了系統資料的安全性。

1.2表

解決這個問題的方法就是將不同類型的資料放到不同的 “地區” 中,我們將這種地區叫做 “表”( T able)。

1.2.1欄欄位

1.2.2記錄


2資料的增刪改

2.1建表語句

(1)CREA TE  T ABLE  T_Person  (FName  VARCHAR(20),FAge  INT ,FRemark  VARCHAR(20),PRI MARY 
KEY  (FName)); 

(2)CREA TE T ABLE T_Debt (FNumber V ARCHAR(20),FAmount  DECIMAL(10,2) NOT NULL, 
FPerson VARCHAR(20),PRIMARY KEY (FNumber), 
FOREIGN KEY (FPerson) REFERENCES T_Person(FName)) ; 


2.2資料的插入

2.2.1簡單的 INSERT 語句

INSERT INTO T_Person(FName,FAge,FRemark)  VALUES('T om',18,'USA')

需要注意的是 V ALUES 前列出的欄位名和 VALUES 後邊列出的欄位值是按順序一一對應的。

2.2.2簡化的 INSERT 語句  

      INSERT 語句中也並不需要我們指定表中的所有列,比如在插入資料的時候某些欄位沒
有值,我們可以忽略這些欄位。下面我們插入一條沒有備忘資訊的資料:
INSERT INTO T_Person(FAge,FName) VALUES(22,'LXF')。

      INSERT 語句還有另一種用法,可以不用指定要插入的表列,這種情況下將按照定義表
中欄位順序來進行插入,我們執行下面的 SQL:
INSERT INTO T_Person VALUES('luren1',23,'China')。

2.2.3非空約束對資料插入的影響

   正如“非空約束” 表達的意思, 如果對一個欄位添加了非空約束, 那麼我們是不能向這
個欄位中插入 NULL 值的。T_Debt 表的 F Amount 欄位是有非空約束的,如果我們執行下面
SQL:
    INSERTINTO T_Debt (FNumber , FPerson) V ALUES ('1', 'Jim') 。

2.2.4主鍵對資料插入的影響

     主鍵是在同一張表中必須是唯一的, 如果在進行資料插入的時候指定的主鍵與表中已有
的資料重複的話則會導致違反主鍵約束的異常。

2.2.5外鍵對資料插入的影響

      外鍵是指向另一個表中已有資料的約束, 因此外鍵值必須是在目標表中存在的。 如果插
入的資料在目標表中不存在的話則會導致違反外鍵約束異常。

2.3 資料的更新

 2.3.1簡單的資料更新

UPDATE 語句用來對資料表中的資料進行更新。UPDATE T_Person  SET FRemark = 'SuperMan' 。

UPDATE T_PersonSET  FRemark = 'Sonic', FAge=25 。

2.3.2帶 WHERE 子句的 UPDATE 語句

UPDATE  T_Person  SET  FAge = 12  WHERE FNAME='T om' 。

UPDATE T_Person SET FAge = 22 WHERE FName='jim' OR FName='LXF' 。


2.3.2主鍵對資料更新的影響

主鍵是在同一張表中必須是唯一的, 如果在進行資料更新的時候指定的主鍵與表中已有
的資料重複的話則會導致違反主鍵約束的異常。

2.3.3外鍵對資料更新的影響

外鍵是指向另一個表中已有資料的約束, 因此外鍵值必須是在目標表中存在的。 如果更
新後的資料在目標表中不存在的話則會導致違反外鍵約束異常。


2.4資料的刪除

資料庫中的資料一般都有一定的生命週期,當資料不再需要的時候我們就要將其刪除,
執行 DELETE 語句就可以將資料從表中刪除。不過需要注意的就是如果被刪除的資料行是某
個外部索引鍵關聯關係中的被引用資料的話, 則進行刪除的時候會失敗, 如果要刪除成功則必須首
先刪除引用者才可以。

2.4.1簡單的資料刪除

DELETE FROM T_Debt; DELETE FROM T_Person; 

不過 DELETE 語句僅僅是刪除表中的資料行, 而表的結構還存在, 而 DROP T ABLE 語句則不僅將表中的資料行全部刪除,而且還將表的結構也刪除。DELETE 語句也提供了 WHERE 語句進行資料的過濾,這樣只有符合過濾條件的資料行才會被刪除。

2.4.2帶 WHERE 子句的 DELETE 語句

DELETE FROM T_Person WHERE FAge > 20 or FRemark = 'Mars' 。

DROP TABLE T_Debt; 
DROP TABLE T_Person;




我現在在學資料庫,一定要先學SQL語句?

資料庫技術應該電腦技術比較核心的一種,不僅作業系統,而且資料存放區都要用的。
學習資料庫可以自己參與到一個項目,或者去實際操作資料庫,這樣提高的快些。
目前來說,案頭的小型資料庫有Foxpro不錯,用的最多的是SQL Server2000,大型的有Oracle等等。
推薦你可以學習SQL Server2000,比較簡單。

編程是一門說難就難,說簡單就簡單的東西,如果要問從什麼入手,我覺的還是先學[C語言],先要對如何編程有一個概念,然後學習資料庫,可以學學[ASSECC]或是[SQL],這兩個都是簡單的資料庫,在後面學[HTML]和[ASP](裡面可以理解的去學習[VBscript]和[JAVAscript]兩個指令碼語言),有了這幾門語言做基礎,就可以學習難一點的東西了。學習C++的物件導向概念,當自己認為對物件導向裡面的三大特性{衍生類別與繼承;多態性;...(第3個有點忘記,好象是封裝,或者是把派生和繼承分開,總之3大特性.....)}掌握的能夠在自己編程的時候能夠理解能夠靈活運用就可以學習[JAVA]了,可能你原來聽說過[JAVA],[C++]是簡單的物件導向,[JAVA]就好象是[C++]和[C語言]的綜合,[JAVA]是基本上全部物件導向概念,但裡面的編程結構:如--迴圈;判斷則是C語言的機制。
上面學完了,就可以更深一步了,有了[JAVA]的學習,就可以學習[J2EE]了,還可以學[ASP.NET]......
可能你看到我的回複以後覺的要學這麼多東西有點太BT了,我和你說的這個學習順序完全是一個專業電腦編程學校的授課順序,而且脫產班只要1年......說的俗點,如果你是這個方面的“蟲子”,你會做到的。
最後說一句:“加油~~~~!!!”。
 
新手,有一定的資料庫原理基礎知識,可以看懂基本SQL語句現在想學SQL Server,懂的人給點好的建議

資料庫語言:Select, Delete, Isnert Into,Update。最常用就是這四個。
如何掌握呢?
先在機器上安裝Sql 2005吧。
安裝完成後,在這裡:
www.w3school.com.cn/sql/index.asp跟著這個教程,一步步的看看,每一句都敲一遍。然後在看看sql的原理。應該就差不多了。至少應該知道“樹”
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.