實現SQL server數據庫完整性

1.創建一個數據庫名為“erp”

  1. 主數據文件:初始容量為5MB,最大容量為50MB,遞增量為1MB,其余參數自設。
  2. 事務日志文件:初始容量為3MB,最大容量為20MB,遞增量為10%,其余參數自設。

創建的數據庫如下:

二、在erp數據庫下創建兩個表:

  • 創建“erp” 數據庫

首先建立一個“新建查詢”然后在“新建查詢”的頁面寫入以下代碼后點擊執行:

CREATE?DATABASE?[erp]

?CONTAINMENT =?NONE

?ON??PRIMARY?

(?NAME?=?N'erp',?FILENAME?=?N'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\erp.mdf'?,?SIZE =?8192KB ,?MAXSIZE =?51200KB ,?FILEGROWTH =?1024KB )

?LOG?ON?

(?NAME?=?N'erp_log',?FILENAME?=?N'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\erp_log.ldf'?,?SIZE =?3072KB ,?MAXSIZE =?20480KB ,?FILEGROWTH =?10%)

?WITH?CATALOG_COLLATION =?DATABASE_DEFAULT,?LEDGER?=?OFF

GO

代碼執行完成后erp表建立完成,點擊刷新即可看到

二、在“erp”數據庫下創建表請注意完整性的設計

(1)創建“部門表”

首先建立一個“新建查詢”然后在“新建查詢”的頁面寫入以下代碼后點擊執行:

USE?[erp]

GO

SET?ANSI_NULLS?ON

GO

SET?QUOTED_IDENTIFIER?ON

GO

CREATE?TABLE?[dbo].[C](

[CNO] [nchar](10)?NOT?NULL,

[CNAME] [varchar](30)?NOT?NULL,

[CNumber] [int] NULL,

?CONSTRAINT?[PK_C] PRIMARY?KEY?CLUSTERED?

(

[CNO] ASC

)WITH (PAD_INDEX?=?OFF,?STATISTICS_NORECOMPUTE?=?OFF,?IGNORE_DUP_KEY?=?OFF,?ALLOW_ROW_LOCKS?=?ON,?ALLOW_PAGE_LOCKS?=?ON,?OPTIMIZE_FOR_SEQUENTIAL_KEY?=?OFF)?ON?[PRIMARY]

)?ON?[PRIMARY]

GO

  1. 創建“職工表”

首先建立一個“新建查詢”然后在“新建查詢”的頁面寫入以下代碼后點擊執行:

CREATE?TABLE?[dbo].[S](

[SNO] [char](6)?NOT?NULL,

[Sname] [varchar](30)?NOT?NULL,

[Sex] [char](2)?NULL,

[Sphone] [int] NOT?NULL,

[Sadress] [varchar](50)?NULL,

[CNO] [char](10)?NULL,

?CONSTRAINT?[PK_S] PRIMARY?KEY?CLUSTERED?

(

[SNO] ASC

)WITH (PAD_INDEX?=?OFF,?STATISTICS_NORECOMPUTE?=?OFF,?IGNORE_DUP_KEY?=?OFF,?ALLOW_ROW_LOCKS?=?ON,?ALLOW_PAGE_LOCKS?=?ON,?OPTIMIZE_FOR_SEQUENTIAL_KEY?=?OFF)?ON?[PRIMARY],

?CONSTRAINT?[IX_S] UNIQUE?NONCLUSTERED?

(

[Sphone] ASC

)WITH (PAD_INDEX?=?OFF,?STATISTICS_NORECOMPUTE?=?OFF,?IGNORE_DUP_KEY?=?OFF,?ALLOW_ROW_LOCKS?=?ON,?ALLOW_PAGE_LOCKS?=?ON,?OPTIMIZE_FOR_SEQUENTIAL_KEY?=?OFF)?ON?[PRIMARY]

)?ON?[PRIMARY]

GO

ALTER?TABLE?[dbo].[S] ADD??CONSTRAINT?[DF_S_Sex] ?DEFAULT ('男')?FOR?[Sex]

GO

ALTER?TABLE?[dbo].[S] ?WITH?CHECK?ADD??CONSTRAINT?[CK_S] CHECK ?(([Sex]='男'?OR?[Sex]='女'))

GO

ALTER?TABLE?[dbo].[S] CHECK?CONSTRAINT?[CK_S]

GO

執行后生成的頁面屬性:

三、請插入記錄驗證完整性。

1. 正確插入數據

(1)部門表(3條記錄)

點擊“新建查詢”建立一新的頁面輸入一下代碼對所需數據進行插入:

use?erp

INSERT?INTO?A(CNO,?Cname,?Cnumber )

VALUES('S4',?'文員',?'50')

INSERT?INTO?A(CNO,?Cname,?Cnumber )

VALUES('S5',?'董事',?'12')

INSERT?INTO?A(CNO,?Cname,?Cnumber )

VALUES('S6',?'金融操盤手','30')

代碼輸入后點擊執行將數據插入到表A中去,然后用代碼

use erp

select?*?from?A

對表里數據進行查詢結果如下:

  1. 職工表(3條記錄)

點擊“新建查詢”建立一新的頁面輸入一下代碼對所需數據進行插入:

use?erp

INSERT?INTO?S(SNO,?Sname,?Sex,Sphone,Sadress,CNO )

VALUES('I1',?'空心木偶',?'男','13071603','廣東茂名','S1')

INSERT?INTO?S(SNO,?Sname,?Sex,Sphone,Sadress,CNO )

VALUES('I2',?'小紅',?'女','13071604','廣東深圳','S2')

INSERT?INTO?S(SNO,?Sname,?Sex,Sphone,Sadress,CNO )

VALUES('I3',?'小梓',?'男','13071605','廣東廣州','S3')

代碼輸入后點擊執行將數據插入到表A中去,然后用代碼

use erp

select?*?from?S

2. 完整性驗證

(1)違反“部門表”的PRIMARY KEY約束

由前面可以知道“部門號”是表A的主鍵,可以使用INSERT語句插入在表A中添加與已有數據相同的部門號,最后使用SELECT查詢所插入的數據,觀察運行后的結果,如果插入顯示“部門號”重復從而插入失敗即可驗證部門表的PRIMARY KEY(主鍵)約束,代碼如下:

USE ERP

INSERT?INTO?A(CNO,?Cname,?Cnumber )

VALUES('S1',?'經理',?'8')

select?*?from?A

運行結果如下:

(2)違反“部門表”的NOT NULL約束

由前面表的設計可知“部門號”和“部門名稱”都是NOT NULL,所以可以使用INSERT語句在部門表A中添加數據,在“部門號”和“部門名稱”插入的數據為空,最后使用SELECT查詢所插入的數據,從而驗證部門表的NOT NULL約束,代碼如下:

USE?ERP

INSERT?INTO?A(CNO,?Cname,?Cnumber )

VALUES('NULL',?'NULL',?'8')

select?*?from?A

運行的結果如下:

(3)違反“職工表”的PRIMARY KEY約束

由前面可以知道“職工號”是表S的主鍵,可以使用INSERT語句插入在表S中添加與已有數據相同的職工號,最后使用SELECT查詢所插入的數據,觀察運行后的結果,如果插入顯示“職工號”重復從而插入失敗即可驗證職工表的PRIMARY KEY(主鍵)約束,代碼如下:

USE?ERP

INSERT?INTO?S(SNO,?Sname,?Sex,Sphone,Sadress,CNO )

VALUES('I1',?'劉德華',?'男','13071683','廣東湛江','S9')

運行的結果如下:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/207911.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/207911.shtml
英文地址,請注明出處:http://en.pswp.cn/news/207911.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

與脾氣不太好的領導,相處原則和相處技巧分享

前言 工作上我看到有的人擅長和各種類型領導相處,而有的人則和領導相處不愉快,不懂靈活變通的人 和領導相處出現沖突時則是當面懟領導,不給領導面子,之后被領導打壓,甚至有的人和領導相處 不和離開等等,…

多個HTML屬性

在HTML中&#xff0c;屬性用于提供有關HTML元素的附加信息。在這篇文章中你將學習多個HTML屬性&#xff0c;它們可以增強網站的視覺吸引力。 接下來開始吧&#xff01;&#x1f680; Accept 屬性 您可以將accept屬性與<input>元素&#xff08;僅用于文件類型&#xff…

SPECPOWER2008

一、前言# 1、軟件說明# 官網&#xff1a;SERT套件用戶指南2.0.5SPECpower介紹SPEC基準及工具SPECpower_ssj2008測試結果SPECpower_ssj2008-Design_ccs - SPEC# SPEC&#xff08;the Standard Performance Evaluation Corporation&#xff09;是一個由計算機硬件廠商、軟件公…

jsp頁面通過class或者id獲取a標簽上的屬性的值

要通過class和id兩種方式獲取a標簽上的某個屬性的值&#xff0c;或者給其賦值&#xff0c;可以使用JavaScript。以下是兩種方法的示例&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name&q…

[ 藍橋杯Web真題 ]-Markdown 文檔解析

目錄 介紹 準備 目標 規定 思路 補充知識 解法參考 介紹 Markdown 因為其簡潔的語法大受歡迎&#xff0c;已經成為大家寫博客或文檔時必備的技能點&#xff0c;眾多博客平臺都提倡用戶使用 Markdown 語法進行文章書寫&#xff0c;然后再發布后&#xff0c;實時的將其轉化…

【Element-ui】Icon 圖標與Button 按鈕

文章目錄 前言一、Icon 圖標1.1 作用1.2 使用方法1.3 圖標集合 二、Button 按鈕2.1 基礎用法2.2 禁用狀態2.3 文字按鈕2.4 圖標按鈕2.5 按鈕組2.6 加載中2.7 不同尺寸 總結 前言 在前端開發中&#xff0c;界面的設計和交互是至關重要的一部分。一個直觀、易用的界面往往離不開…

AcGeLinearEnt2d::getPerpLine函數

AcGeLinearEnt2d::getPerpLine函數是AutoCAD圖形庫&#xff08;AutoCAD Geometry Library&#xff0c;即AcGe&#xff09;中的一個成員函數&#xff0c;用于獲取一個通過指定點且垂直于當前直線或線性實體的無限長直線。 函數的參數和返回值說明如下&#xff1a; const AcGeP…

js寫旋轉的時鐘動態

目錄 1、css代碼 2.html代碼 3.js代碼 1、css代碼 .box {position: relative;width: 600px;height: 600px;background: url(./images/clock.jpg) no-repeat center;}.hour,.minute,.second {position: absolute;left: 0;top: 0;width: 100%;height: 100%;}.hour {background…

上個月暴漲34.6%后,SoundHound AI股票現在還能買入嗎?

來源&#xff1a;猛獸財經 作者&#xff1a;猛獸財經 揭開SoundHound AI股價波動的原因 S&P Global Market Intelligence的數據顯示&#xff0c;在擺脫了10月份的大幅下跌后&#xff0c;SoundHound AI的股價在11月份實現了34.6%的漲幅。 原因是該公司公布了穩健的第三季…

英文論文查重復率網址

大家好&#xff0c;今天來聊聊英文論文查重復率網址&#xff0c;希望能給大家提供一點參考。 以下是針對論文重復率高的情況&#xff0c;提供一些修改建議和技巧&#xff1a; 英文論文查重復率網址 在撰寫英文論文時&#xff0c;查重是確保論文原創性和質量的重要環節快碼論文…

國產化, 海量數據庫 VastbaseG100 兼容適配

背景&#xff1a; 客戶是國內某家電龍頭企業&#xff0c;應國產化政策要求&#xff0c; 系統需要適配國產數據庫&#xff0c; Vastbase G100 遇到問題&#xff1a; 1. 數據庫連接&#xff1a; Vastbase 是基于 postgresql 進行封裝&#xff0c; 所以理論上是兼容的&#…

Efficient physics-informed neural networks using hash encoding

論文閱讀&#xff1a;Efficient physics-informed neural networks using hash encoding Efficient physics-informed neural networks using hash encoding簡介方法PINN哈希編碼具有哈希編碼的 PINN 實驗Burgers 方程Helmholtz 方程N-S 方程訓練效率對比 總結 Efficient physi…

容器資源視圖隔離 —— 筑夢之路

先做個記錄&#xff0c;抽空再整理 K8s 部署 Lxcfs 準入控制器&#xff0c;實現容器中資源單獨可見 - 「Johny」PlayGround Kubernetes 中利用 LXCFS 控制容器資源可見性 - 碼農教程 容器資源可視化隔離的實現方法_51CTO博客_容器隔離技術 Lxcfs在容器集群中的使用-騰訊云開…

06 JQuery調用接口

文章目錄 一、Qs.js庫介紹1. Qs簡介2. Qs.parse3. Qs.stringify 二、jQuery調用接口1. 增加&#xff08;Create&#xff09;2. 刪除&#xff08;Delete&#xff09;3. 讀取&#xff08;Read&#xff09;4. 更新&#xff08;Update&#xff09; 三、示例 一、Qs.js庫介紹 1. Qs…

代碼隨想錄算法訓練營 --- 第五十九天

今天同樣是單調棧&#xff0c;第二題很重要。 第一題&#xff1a; 簡介&#xff1a; 本題可以說和上一題很是相似&#xff0c;只是有一點不同&#xff0c;數組是循環的。本題有兩種巧妙地解法&#xff0c;都不難。 第一種方法&#xff08;也是第一個想出來的方法&#xff09…

創建自定義Docker鏡像:一步步指南

當創建自定義Docker鏡像時&#xff0c;Dockerfile是關鍵的一環。這篇博客將詳細介紹如何編寫一個Dockerfile&#xff0c;其中包含創建自定義應用程序所需的步驟和示例。讓我們開始吧&#xff1a; 創建自定義Docker鏡像&#xff1a;一步步指南 1. 了解Dockerfile Dockerfile是…

我的acer電腦U盤裝系統前BIOS設置及裝系統過程中的操作

1、開機長按F2進入BIOS設置 2、使能F12 3、調整boot順序&#xff0c;使USB啟動的優先級最高 4、按F10保存退出 5、插入U盤開機&#xff0c;boot選擇界面無需操作&#xff0c;等待幾秒&#xff0c;默認進入U盤系統 由于既使能了F12&#xff0c;又將U盤的優先級進調整到了最高&…

OpenVINS學習1——數據集配置與運行

前言 OpenVINS是基于MSCKF的開源VIO算法&#xff0c;有非常詳細的官網文檔可以學習使用&#xff0c;將來一段時間的主要實踐工作&#xff0c;就是深度掌握這份開源代碼。 https://docs.openvins.com/ 一、環境配置與Euroc數據集運行 我的環境是Ubuntu20.04&#xff0c;ROS1&a…

vue3中實現el-tree通過ctrl或shift批量選擇節點并高亮展示

一、看效果&#xff1a; 按住ctrl鍵實現單個多選 按住shift實現區間范圍多選 二、代碼&#xff1a; vue頁面 <template><el-treeclass"w100%":data"$.treeData"ref"treeTab…

Unity中Batching優化的靜態合批

文章目錄 前言一、靜態合批的規則1、模型使用同一個材質2、勾選靜態合批3、對于靜態合批后的Mesh頂點總數&#xff0c;不超過2^16^即可以使用同一批次&#xff0c;超過則會開啟一個新的批次4、對與使用同一材質的不同模型間&#xff0c;紋理貼圖的問題&#xff0c;我們可以通過…