---------------------- windows phone 7手機開發、.net培訓、期待與您交流! ----------------------
資料庫概念
1.1 catalog(分類),不同類的資料應該放到不同的資料庫中
a、偏於對各個catalog進行個性化管理
b、避免命名衝突
c、安全性更高
1.2 table(表)
不同型別的資料放到不同的格仔中,將這種區域叫做表。不同的表根據方的資料不同進行空間的優化,找起來也方便。
a、主鍵(primarykey):就是資料行的唯一標識。不會重複的列才能當主鍵。乙個表可以沒有主鍵,但是會非常難以處理,因此沒有特殊裡有表都要設定主鍵。
主鍵有兩種選用策略:業務主鍵和邏輯主鍵。業務主鍵是使用有業務意義的字段做主鍵,比如身份證號、銀行賬號等;邏輯主鍵是使用沒有任何業務意義的字段做主鍵,完全給程式看的,業務人員不會看的資料。因為很難保證業務主鍵不會重複,不會變化,因此推薦用邏輯主鍵。
b、表間關聯、外來鍵:當表**現欄位重複時,可以把原先比較重複的表,化簡為兩個表來表示。乙個表中的主鍵是另外乙個表的外來鍵。外來鍵就是關聯兩個表的鍵.
1.3在資料庫中的資料型別與在c#中的區別
bit相當於c#中的bool型別,
char(10)10個字元
int 32位
bigint 64位
nvarchar(max)無限長的字串
varchar(50)表示不含有中文資訊的字段
nvarchar(50)表示可能含有中文資訊的字段
varchar與char的區別: varchar會用空格填充
varchar用於存放長度不定的字串
1.4 sql語句入門:
1) sql語句中字串用單引號
2) sql語句大小寫不敏感的,
注意:不敏感指的是sql關鍵字,字串值還是大小寫敏感
1.4.1主鍵選擇
⑴ sqlserver中兩種常用的主鍵資料型別:int(或bigint)+標識列(又稱自動增長字段);uniqueidentifier(又稱guid、uuid)
⑵用標識列實現欄位自增可以避免併發問題,不要開發人員控制自增。用標識列的字段在insert的時候不用指定主鍵的值。將字段的(是標識)的值改為』是』,乙個表只能有乙個標識列。
(3)guid演算法是一種可以產生唯一標示的高效演算法,它使用網絡卡mac、位址、納秒級時間、晶元id碼等算出來的,這樣保證每次生成的guid永遠不會重複,無論是同乙個計算機上還是不同的計算機。sqlserver中生成guid的函式newid(), .net中生成的guid的方法:guid.newguid(),返回是guid型別。
(4)int自增字段的優點:占用空間小、無需開發人員干預、易讀;缺點:效率低,資料匯入匯出的時候得很痛苦。
guid的優點:效率高、資料匯入匯出很方便;缺點占用空間大、不易讀。
一般業界主流傾向於使用guid。
1.4.2插入資料insert
insert into tables (id,name,age)values(new id(),tom,18)//guid做主鍵,可以自動生成
insert into tables (name,age)values(tom,18)//id是自動生成
insert into tables values(tom,18)//id是自動生成
可以省略表名後的列名,但是不推薦使用。
1.4.3資料更新update
update tables set 列名1=value1,列名2=value2…
update tables set age=age+1 //用本身字段更新也可以
update person1 set nickname=n』青年人』//有漢字時前加n
where age>=20
update person1 set nickname=n』青年人』//有漢字時前加n
where age=20(等於判斷要用乙個「=」);
update person1 set nickname=n』青年人』//有漢字時前加n
where age<>20 (「<>」不等於)
update person1 set nickname=n』青年人』//有漢字時前加n
where age=20 or(and,not) age=30//或,並且判斷
1.4.4資料刪除delete
delete from tables
delete只是刪除資料,表還在,和drop table不同。
delete 也可以帶where子句來刪除一部分資料:
delete from table where age>20
(未完待續)
---------------------- windows phone 7手機開發、.net培訓、期待與您交流! ----------------------
詳細請檢視:
黑馬程式設計師 sql語句分頁
asp.net unity開發 net培訓 期待與您交流!剛開始學習.net程式設計的時候,有乙個感受,就是學過的基礎知識,剛開始的時候理解了,也會了,但以後老是不用的話,慢慢就會遺忘。所以個人覺得初學者應該學會用學過的知識嘗試著做一些小專案,加深對知識的理解和印象,學以致用。以前學習資料繫結控制項...
黑馬程式設計師 語句
語句是描述乙個型別或告訴程式去執行乙個動作的源 指令 有3種主要語句種類 1 宣告語句 宣告型別或變數的語句 2 嵌入語句 執行動作或管理控制流的語句 3 標籤語句 控制可以跳轉的語句 表示式語句 控制流語句 條件執行一句乙個條件執行或跳過乙個 片段 1 if 2 if.else 3 swith 迴...
黑馬程式設計師 If語句
asp.net android ios開發 net培訓 期待與您交流!順序結構 程式從main 函式進來,從上到下,一行一行的執行,不會發生跳躍。分支結構 有條件的執行,有肯能會不執行。if 語句 if 判斷條件 一般都為關係表示式或者為 bool 型別的值 執行過程 程式執行到if 處,首先判斷 ...