日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sql server 2008学习5 sql基础

發布時間:2024/9/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sql server 2008学习5 sql基础 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

查看數據庫的信息:

  • INFORMATION_SCHEMA.CHECK_CONSTRAINTS
  • INFORMATION_SCHEMA.COLUMN_DOMAIN_USAGE
  • INFORMATION_SCHEMA.COLUMN_PRIVILEGES
  • INFORMATION_SCHEMA.COLUMNS?? 查看數據庫中的所有列
  • INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE
  • INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE
  • INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS
  • INFORMATION_SCHEMA.DOMAINS
  • INFORMATION_SCHEMA.KEY_COLUMN_USAGE
  • INFORMATION_SCHEMA.PARAMETERS
  • INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
  • INFORMATION_SCHEMA.ROUTINE_COLUMNS
  • INFORMATION_SCHEMA.ROUTINES
  • INFORMATION_SCHEMA.SCHEMATA?
  • INFORMATION_SCHEMA.TABLE_CONSTRAINTS
  • INFORMATION_SCHEMA.TABLE_PRIVILEGES
  • INFORMATION_SCHEMA.TABLES?? 查看數據庫中表
  • INFORMATION_SCHEMA.VIEW_COLUMN_USAGE
  • INFORMATION_SCHEMA.VIEW_TABLE_USAGE
  • INFORMATION_SCHEMA.VIEWS?????? 查看數據庫中視圖

group by 子句:

在使用時,select 列表 中的所有列必須為聚合列或是 group by 子句中包括的列.

同樣,如果在select 列表中使用聚合列,select列表必須值包括聚合列,否則必須有一個 group by 子句.

count聚合函數

除了count(*)函數以外,以其他任意形式使用的count函數都忽略null值.

having 子句

對 分組后的數據 進行 過濾.

系統存儲過程

exec sp_help 表名??? 查看表的屬性

inner join

stu?????

???????????????????? sec

sql :?? selert a.Name,b.tel,b.qq from stu a join sec b on a.sec=b.ID

cross join

返回的 join兩側表記錄的笛卡爾積

約束

鍵約束: 主鍵約束,外鍵約束,唯一約束

系統存儲過程 查看 表的約束:?? exec sp_helpconstraint 表名

設置主鍵:? alter table 表名 add constraint 約束名 primary key (列名)

設置外鍵:? alter table 表名 add constraint 約束名 foreign key (本表外鍵列名)? references 外鍵表名(外鍵表的列名)

那么也可以在 一個表中建立外面外鍵連接 同個表中的其他列.

需要注意的是,在添加外鍵之前表中至少要有一行數據.因為 實際上 是在檢查并強制外鍵操作之后才選擇并填充標識值的 .

那就意味著當檢查發生時,還沒有值供第一行引用.

關于外鍵的考慮:

1.要想使外鍵的值為 必須 或是 可選的,那么就需要把外鍵列 賦值為 null,那么 用戶插入外鍵的值時,即使 被引用的表的列沒有值,

那么 引用表依然可以插入數據.

2.外鍵 實現雙向的方式.

sql server默認是不讓刪除 或修改 被引用表的數據的.因為如果修改了,那么就會 使 引用表 產生很多孤立數據.

那么就可以使用 cascade, 即:級聯操作.? 當修改或刪除 被引用表的信息時,可以級聯影響到 引用表的數據.

唯一約束:和主鍵類似, 指定列的每個值必須是唯一的.

由于 唯一約束 不會自動防止設置一個null值,如果允許列為null,那么只能插入一個null,因為在唯一約束看來,null都是相等的.

對已有的表創建約束:?? alter table table_name add constraint AK_uniquename unique (columnName)

Check約束

創建check約束: alter table table_name add constraint CN_name check (條件) //幾乎所有where的條件可以應用再此

default約束

默認值 只在 insert語句中使用,而在 update ,delete語句中 被 忽略掉.

如果在 insert中提供了值,那么就不會使用默認值,如果沒提供,永遠都是默認值的.

創建default約束:? alter table table_name add constraint constraint_name default ‘default_value’ for column_name

禁用約束

不能禁用主鍵約束或者唯一約束,僅適用于 外鍵和檢查約束

在創建約束時,忽略無效的數據(應用在給已存在數據的表中加約束,但是原來的數據不符合現在的約束標準)

alter table table_name with nocheck add constraint constraint_name check (條件)

下面看這個sql? 用于屏蔽約束( 主要用于 向當前表中導入外部數據,那有可能外部數據的格式不符合當前的列約束,可以暫時屏蔽掉約束)

alter table table_name nocheck constraint contraint_name

下面是操作check_s這個約束,禁用之前:

這樣就屏蔽的了一個 約束,那么可以通過? 執行? sp_helpconstraint ,來查看 該約束的狀態, 禁用之后:

恢復check約束,? sql? :? alter table table_name check constraint constraint_name

總結

以上是生活随笔為你收集整理的sql server 2008学习5 sql基础的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。