將最近實(shí)驗(yàn)課和教程所做的筆記 進(jìn)行總結(jié)歸納拗窃,以便復(fù)習(xí)
1. 賬號登錄時(shí)服務(wù)器名稱
① localhost
② .
③ 127.0.0.1
這三種形式是一樣的
2. 相關(guān)登錄錯(cuò)誤
① 18456錯(cuò)誤:需要設(shè)置混合模式
② 18470錯(cuò)誤:賬戶需要開啟
3. T-SQL包括
① DML數(shù)據(jù)庫操作語言:增刪查改
SELECT、INSERT踱蛀、UPDATE祠乃、DELETE
② DDL數(shù)據(jù)定義語言:創(chuàng)建數(shù)據(jù)庫、表、視圖绣檬、索引等
CREATE DATABASE、DROP DATABASE
③ DCL數(shù)據(jù)控制語言:用來控制存儲許可嫂粟、存取權(quán)限等
GRANT河咽、REVOKE
4. 相關(guān)后綴名
① 主數(shù)據(jù)文件:.mdf
② 輔助數(shù)據(jù)文件:.ndf
③ 日志文件:.ldf
5. 創(chuàng)建一個(gè)數(shù)據(jù)庫
USE master
GO
CREATE DATABASE E_TEST
ON PRIMARY
(
Name="E_data",
Filename="D:\E_Test_data.mdf",
SIZE=5MB,
maxsize=100MB,
FILEGROWTH=15%
)
LOG ON
(
Name="E_log",
Filename="D:\E_Test_log.ldf",
SIZE=5MB,
maxsize=100MB,
FileGrowth=15%
)
GO
- 需要注意的是,SQL使用小括號把內(nèi)容括起赋元,而不是像編程語言那樣用大括號忘蟹。
USE master --- 創(chuàng)建多文件數(shù)據(jù)庫
GO
CREATE DATABASE T_Market
ON PRIMARY(
NAME="T_Market",
FILENAME="D:\Software documents\SQL\T_Market_Data1.mdf",
SIZE=10MB,
MAXSIZE=100MB,
FILEGROWTH=10%
),
FILEGROUP FG(
NAME="FG_TMarket",
FILENAME="D:\Software documents\SQL\T_Market_Data2.ndf",
SIZE=5MB,
MAXSIZE=100MB,
FILEGROWTH=15%
)
LOG ON
(
NAME="T_Market_log1",
FILENAME="D:\Software documents\SQL\T_Market_log1.ldf",
SIZE=10MB,
MAXSIZE=100MB,
FILEGROWTH=10%
),
(
NAME="T_Market_log2",
FILENAME="D:\Software documents\SQL\T_Market_log2.ldf",
SIZE=5MB,
MAXSIZE=80MB,
FILEGROWTH=10%
)
GO
6. 關(guān)于文件組
--增加一個(gè)文件組FG1
ALTER DATABASE E_Market ADD FILEGROUP FG1
--修改默認(rèn)文件組為FG2
ALTER DATABASE T_Market MODIFY FILEGROUP FG2 DEFAULT
--為新建的文件組FG添加數(shù)據(jù)文件
ALTER DATABASE E_Market ADD FILE
(
NAME='...',
FILENAME='...',
SIZE=5MB,
FILEGROWTH=10%
)TO FILEGROUP FG1
7. 對數(shù)據(jù)庫設(shè)計(jì)的基本操作
【創(chuàng)建或新增】
--- 創(chuàng)建表
CREATE TABLE T(CNO CHAR(2) NOT NULL,
CN CHAR(10) NOT NULL搁凸,
CT tinyint)
--- 表中增加列
ALTER TABLE T
ADD [NewColumn] CHAR(40) NULL
【刪除】
--- 刪除數(shù)據(jù)庫
DROP DATABASE E_Market
--- 刪除表
DROP TABLE T
--- 刪除列
ALTER TABLE T
DROP COLUMN [TheColumn]
【修改】
--- 表中修改列屬性
ALTER TABLE T
ALTER COLUMN [TheColumn] CHAR(20) NULL
--- 修改列名
USE [TheDatabase]
EXEC sp_rename "<TABLE>.<Column>","<NewName>","COLUMN"
【主鍵設(shè)置】
--- 設(shè)置/修改主鍵
ALTER TABLE <TableName>
ADD CONSTRAINT <主鍵名> PRIMARY KEY(<TheCOLUMN>)
--- 創(chuàng)建時(shí)定義主鍵
--- 創(chuàng)建一個(gè)KEY
CREATE TABLE T
(
CName CHAR(10) CONSTRAINT PK_T_C PRIMARY KEY
)
--- 創(chuàng)建兩個(gè)KEY
CREATE TABLE_TC(
TNO CHAR(2),
CNO CHAR(2),
CONSTRAINT PK_TEST_TC PRIMARY KEY(TNO,CNO)
)
【設(shè)置約束】
--- 在原有表中加入U(xiǎn)NIQUE約束
ALTER TABLE C
ADD CONSTRAINT UNIQUE_C UNIQUE(CN)
8. 對數(shù)據(jù)庫數(shù)據(jù)的基本操作
【插入數(shù)據(jù)】
--- 插入單條數(shù)據(jù)
USE jxsk
INSERT INTO PERSONS VALUES('01','男' ,'小明')
--- 插入多行數(shù)據(jù)
USE jxsk
INSERT INTO PERSONS
(id_p, lastname , firstName, city )
values
(200,'haha' , 'deng' , 'shenzhen'),
(201,'haha2' , 'deng' , 'GD'),
(202,'haha3' , 'deng' , 'Beijing');
【更新數(shù)據(jù)】
--- 更新數(shù)據(jù)
UPDATE <TABLE> SET <COLUMN>=‘計(jì)算機(jī)工程’ WHERE <COLUMN>=‘信息學(xué)院’
- 注意要用單引號
【刪除數(shù)據(jù)】
--- 刪除數(shù)據(jù)
DELETE FROM <TABLE> WHERE <COLUMN>=‘小紅’
9. 其他
--- 檢測數(shù)據(jù)庫是否存在媚值,存在則刪除
IF EXISTS(SELECT *FROM sysdatabases WHERE name='E_Narket')
DROP DATABASE E_Market
--- 使用SQL語句來查看數(shù)據(jù)庫的狀態(tài)
SELECT state_desc FROM sys.databases WHERE name='jxsk'
--- 使用函數(shù)來查看數(shù)據(jù)庫的狀態(tài)
SELECT DATABASEPROPERTYEX('jxsk','status')