九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
Linux系統(tǒng)下SQL Server數(shù)據(jù)庫(kù)操作
userphoto

2023.10.07 河北

關(guān)注

Linux系統(tǒng)SQL Server數(shù)據(jù)庫(kù)操作命令


    • 連接數(shù)據(jù)庫(kù) sqlcmd命令

    • 創(chuàng)建數(shù)據(jù)庫(kù):

    • 查看所有數(shù)據(jù)庫(kù):

    • 創(chuàng)建表

    • 添加主鍵約束

    • 外部關(guān)鍵字

    • 怎么添加唯一約束

    • 怎么添加非空約束

    • 怎么使用默認(rèn)約束

    • 設(shè)置表的屬性值自動(dòng)增加


連接數(shù)據(jù)庫(kù) sqlcmd命令

SQLServer 提供了 sqlcmd 命令,來(lái)讓我們操作 SQLServer 數(shù)據(jù)庫(kù)。接下來(lái)我們連接它,并在其中創(chuàng)建一個(gè)名為 TestDb 的數(shù)據(jù)庫(kù)。

連接 SQLServer :sqlcmd -S localhost -U sa -P '<123123Aa!@>'


如果連接失敗原因是服務(wù)還未開(kāi)啟,等待幾秒重試即可,上述語(yǔ)句各參數(shù)解釋如下:

sqlcmd 是連接數(shù)據(jù)庫(kù)必要的語(yǔ)句, localhost 代表從本地連接,sa 是用戶名, '<123123Aa!@>’ 是密碼。

創(chuàng)建數(shù)據(jù)庫(kù):

create database TestDb。

查看所有數(shù)據(jù)庫(kù):

select name from sys.databases。


操作完畢之后退出: exit 。

創(chuàng)建表

我們先來(lái)了解一下,在數(shù)據(jù)庫(kù)中創(chuàng)建表的規(guī)則:

CREATE TABLE 表名( 字段名,數(shù)據(jù)類(lèi)型, 字段名,數(shù)據(jù)類(lèi)型, .....)

例如:


添加了數(shù)據(jù)的表格,示例如下:

首先,創(chuàng)建數(shù)據(jù)庫(kù)(在 SQLServer 數(shù)據(jù)庫(kù)中是不區(qū)分大小寫(xiě)的,不過(guò)數(shù)據(jù)庫(kù)的名字是區(qū)分大小寫(xiě)的),如下:

CREATE DATABASE MyDb

然后,選擇數(shù)據(jù)庫(kù):

USE MyDb

最后,創(chuàng)建t_user表:

CREATE TABLE t_user(
    id INT,
    username VARCHAR(32),
    password VARCHAR(32),
    phone VARCHAR(11))

表創(chuàng)建好之后,可以使用如下語(yǔ)句查看表的基本結(jié)構(gòu),用來(lái)驗(yàn)證是否創(chuàng)建成功。

語(yǔ)法如下:

sp_help 表名

添加主鍵約束

有兩種方式可以添加主鍵約束:1.在定義列的同時(shí)指定主鍵,2.在定義完字段之后,再指定主鍵。

(1) 在定義列的同時(shí)指定主鍵:


(2) 在定義完所有列之后,指定主鍵。

多字段聯(lián)合主鍵

在開(kāi)發(fā)中,還有一種情況很常見(jiàn),就是將幾個(gè)字段聯(lián)合在一起作為主鍵,那這個(gè)在代碼中怎么實(shí)現(xiàn)呢?
舉個(gè)例子,我們將員工的名字和部門(mén) ID 聯(lián)合起來(lái)作為主鍵:

CREATE TABLE t_emp2(
    name VARCHAR(32),
    deptId INT,
    salary FLOAT,
    PRIMARY KEY(name,deptId))

語(yǔ)句執(zhí)行后,會(huì)將 name 和 deptId 字段組合成為表 t_emp2 的多字段組合主鍵。

外部關(guān)鍵字

外部關(guān)鍵字叫做外鍵,外鍵就是另一張表中的主鍵。

問(wèn):外鍵有啥用?。?br> :外鍵的主要作用就是保持?jǐn)?shù)據(jù)的一致性,完整性。

再問(wèn):怎么保證的呢?
:看圖。


如圖有兩張表,classId 是 T_Student 的外鍵,同時(shí)是 T_class 表的主鍵。如果我們要?jiǎng)h除 T_class 表中 classId 為 1 的字段,程序是會(huì)報(bào)錯(cuò)的。因?yàn)?T_Student 表中有數(shù)據(jù)和 classId 為 1 的字段關(guān)聯(lián)了,是不能刪除的,這樣子就保證了數(shù)據(jù)的一致性和完整性。

繼續(xù)問(wèn):那怎么才能刪除呢?
接著答:需要先刪除 T_Student 表中 classId 為 1 的兩個(gè)字段。

如何給表添加外部關(guān)鍵字
在 SQLServer 中,給表中字段添加外鍵約束的語(yǔ)法規(guī)則如下:

CONSTRAINT 外鍵名 FOREIGN KEY 字段名 REFERENCES 主表名(主鍵名)

舉個(gè)例子:現(xiàn)在有兩張表, t_emp , t_dept 如下:


我們來(lái)創(chuàng)建兩張表,并給員工表( t_emp )添加外鍵:

CREATE TABLE t_dept(
    deptId INT PRIMARY KEY,
    name VARCHAR(22),
    location VARCHAR(50));CREATE TABLE t_emp(
    id INT PRIMARY KEY,
    name VARCHAR(22),
    deptId INT,
    CONSTRAINT fk_emp_dept1 FOREIGN KEY(deptId) REFERENCES t_dept(deptId));

實(shí)際操作如圖:


另外一種設(shè)置外鍵的方式:

CREATE TABLE t_dept( deptId INT PRIMARY KEY, name VARCHAR(22), location VARCHAR(50));CREATE TABLE t_emp( id INT PRIMARY KEY, name VARCHAR(22), deptId INT FOREIGN KEY REFERENCES t_dept(deptId));

在定義字段的時(shí)候,也可以定義外部關(guān)鍵字,格式: FOREIGN KEY REFERENCES 關(guān)聯(lián)的表名(字段名) ,這種方式比較簡(jiǎn)潔,不過(guò)這種方式不能指定外鍵名,即外鍵名是隨機(jī)的。

怎么添加唯一約束

唯一約束( Unique Constraint )要求該列唯一,允許為空,但是只能有一個(gè)空值。唯一約束可以確保一列或者幾列不出現(xiàn)重復(fù)值。

定義部門(mén)表的部門(mén)名稱(chēng)唯一,使用關(guān)鍵詞 UNIQUE ,SQL 語(yǔ)句如下:

CREATE TABLE t_dept(
    id INT PRIMARY KEY,
    name VARCHAR(22) UNIQUE,
    location VARCHAR(50))

怎么添加非空約束

關(guān)鍵詞: NOT NULL 。

例如:

CREATE TABLE t_dept( id INT PRIMARY KEY, name VARCHAR(22) NOT NULL, location VARCHAR(50))

怎么使用默認(rèn)約束

默認(rèn)約束:即給字段一個(gè)默認(rèn)值。
關(guān)鍵詞: DEFAULT 。

例如:

CREATE TABLE t_emp(
    id INT PRIMARY KEY,
    name VARCHAR(22),
    sex VARCHAR(2) DEFAULT '男')

注意:如果是添加字符串型,認(rèn)值要使用單引號(hào);如果是整型,則不需要加任何符號(hào)。

設(shè)置表的屬性值自動(dòng)增加

在數(shù)據(jù)庫(kù)應(yīng)用中,經(jīng)常需要在每次插入新紀(jì)錄時(shí),系統(tǒng)自動(dòng)生成字段的主鍵值,即:


關(guān)鍵詞: IDENTITY(1,1) 表示自動(dòng)增長(zhǎng),初始值為 1 ,增量為 1 。
例如:

CREATE TABLE t_tmp( id int PRIMARY KEY IDENTITY(1,1), name VARCHAR(32))
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
MySQL: MySQL約束(詳細(xì)、全)
數(shù)據(jù)庫(kù)部分(MySql)_4
mysql[0x01]--基礎(chǔ)知識(shí)
2009-12-08傳智播客 數(shù)據(jù)庫(kù)——Oracle觸發(fā)器/存儲(chǔ)過(guò)程/視圖等 - 充滿生活的味道! - BlogJava
MySQL基礎(chǔ)入門(mén)
MySQL8.0數(shù)據(jù)庫(kù)基礎(chǔ)教程(二)-理解"關(guān)系"
更多類(lèi)似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服