数据库阶段性笔记

将最近实验课和教程所做的笔记 进行总结归纳,以便复习

1. 账号登录时服务器名称

① localhost
② .
③ 127.0.0.1
这三种形式是一样的

2. 相关登录错误

① 18456错误:需要设置混合模式
② 18470错误:账户需要开启

3. T-SQL包括

① DML数据库操作语言:增删查改
SELECT、INSERT、UPDATE、DELETE
② DDL数据定义语言:创建数据库、表、视图、索引等
CREATE DATABASE、DROP DATABASE
③ DCL数据控制语言:用来控制存储许可、存取权限等
GRANT、REVOKE

4. 相关后缀名

① 主数据文件:.mdf
② 辅助数据文件:.ndf
③ 日志文件:.ldf

5. 创建一个数据库

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使用小括号把内容括起,而不是像编程语言那样用大括号。
USE master      --- 创建多文件数据库
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. 关于文件组

--增加一个文件组FG1
ALTER DATABASE E_Market ADD FILEGROUP FG1
--修改默认文件组为FG2
ALTER DATABASE T_Market MODIFY FILEGROUP FG2 DEFAULT
--为新建的文件组FG添加数据文件
ALTER DATABASE E_Market ADD FILE
(
  NAME='...',
  FILENAME='...',
  SIZE=5MB,
  FILEGROWTH=10%
)TO FILEGROUP FG1

7. 对数据库设计的基本操作

【创建或新增】

--- 创建表
CREATE TABLE T(CNO CHAR(2) NOT NULL,
        CN CHAR(10) NOT NULL,
        CT tinyint)
--- 表中增加列
ALTER TABLE T
    ADD [NewColumn] CHAR(40) NULL

【删除】

--- 删除数据库
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 ".","","COLUMN"
 
 

【主键设置】

--- 设置/修改主键
ALTER TABLE 
    ADD CONSTRAINT <主键名> PRIMARY KEY()
--- 创建时定义主键
--- 创建一个KEY
CREATE TABLE T
(
  CName CHAR(10) CONSTRAINT PK_T_C PRIMARY KEY
)
--- 创建两个KEY
CREATE TABLE_TC(
    TNO CHAR(2),
    CNO CHAR(2),
    CONSTRAINT PK_TEST_TC PRIMARY KEY(TNO,CNO)
)

【设置约束】

--- 在原有表中加入UNIQUE约束
ALTER TABLE C
    ADD CONSTRAINT UNIQUE_C UNIQUE(CN)

8. 对数据库数据的基本操作

【插入数据】

--- 插入单条数据
USE jxsk
INSERT INTO PERSONS VALUES('01','男' ,'小明')
--- 插入多行数据
USE jxsk
INSERT INTO PERSONS
(id_p, lastname , firstName, city )
values
(200,'haha' , 'deng' , 'shenzhen'),
(201,'haha2' , 'deng' , 'GD'),
(202,'haha3' , 'deng' , 'Beijing');

【更新数据】

--- 更新数据
UPDATE 
SET =‘计算机工程’ WHERE =‘信息学院’
  • 注意要用单引号

【删除数据】

--- 删除数据
DELETE FROM 
WHERE =‘小红’

9. 其他

--- 检测数据库是否存在,存在则删除
IF EXISTS(SELECT *FROM sysdatabases WHERE name='E_Narket')
  DROP DATABASE E_Market
--- 使用SQL语句来查看数据库的状态
SELECT state_desc FROM sys.databases WHERE name='jxsk'

--- 使用函数来查看数据库的状态
SELECT DATABASEPROPERTYEX('jxsk','status')

你可能感兴趣的:(数据库阶段性笔记)