数据库知识要点

10.31
2111613王金凯

一.数据库系统和数据库设计

1、数据(Data),信息表现形式(数字、文字、图形、图像、视频、音频或动画等)
2、数据库(DataBase,DB):有组织结构的数据集合。
3、数据库管理系统(DataBase Managemen System,DBMS):是一个系统软件平台,是数据库应用系统的核心。
4、数据库应用系统(DataBase System,DBS):包括DB,OS,DBMS,APP,USER,DBA等。
5、数据模型:
       层次模型
       网状模型
       关系模型
6、SQL Server的安装


********************************************************************************
11.02
二、系统安全管理

7、SQL Server 安全机制:
        服务器安全性 (USER)
        数据库安全性(USER)
        数据库对象安全性(USER)

8、服务器管理:
    创建登录名(CREATE Login /DataBase /Table /View /Index)
    修改登录名(ALTER /Login /DataBase /Table /View /Index)
    删除登录名(DROP /Login /DataBase /Table /View /Index)

9、SQL Server 数据库对象
    两类:系统数据库(master、model、msdb、tempdb)
              用户数据库(常规创建删除修改等操作对象)

10.数据库文件(扩展名)
    3类:
        主数据文件(.mdf)
        辅助数据文件(.ndf)
        日志数据文件(.ldf)

11.T_SQL:
    创建数据库:
        CREATE DATABASE
            ON
            (
                NAME
                FILEENAME
                SIZE
                MAXSIZE
                FILEGROWTH
            )
            LOG ON
            (

            )


********************************************************************************************************
********************************************************************************************************
11.07
三、数据库和数据表的操作
12.DATABASE:(P47-3:请先在平台里运行再复制如下)
    (1)创建:
CREATE DATABASE librarypm
ON PRIMARY
(
    NAME='librarypm',
    FILENAME='E:\My_data\librarypm.mdf',
    SIZE=10MB,
    MAXSIZE=200MB,
    FILEGROWTH=10%

)
LOG ON
(
    NAME='librarypm_log',
    FILENAME='E:\My_data\librarypm.ldf',
    SIZE=2MB,
    MAXSIZE=50MB,
    FILEGROWTH=1MB
)
        
    (2)修改:
ALTER DATABASE librarypm
ADD FILE
(
    NAME='librarypmbk',
    FILENAME='E:\My_data\librarypmbk.ndf',
    SIZE=10MB,
    MAXSIZE=200MB,
    FILEGROWTH=2MB

)
ALTER DATABASE librarypm
ADD LOG FILE
(
    NAME='librarypmbk_log.ndf',
    FILENAME='E:\My_data\librarypmbk_log.ndf',
    SIZE=2MB,
    MAXSIZE=50MB,
    FILEGROWTH=1MB

)

--修改数据库名
ALTER DATABASE librarypm
MODIFY NAME=librarypm_new;

--用存储过程更改数据库名
sp_renamedb librarypm_new ,librarypm;

    (3)删除
--删除数据库文件
ALTER DATABASE librarypm
REMOVE FILE librarypmbk

--删除数据库
DROP DATABASE librarypm 

13.数据表(TABLE)
    (1)表结构:
        行:记录
        列:字段(field)、空值(null)、主键/关键字(primary key)
    (2)数据类型:
        整数型(int)、浮点型(float)、字符型(nvarchar(n))
14.T_SQL:
    (3)主键:唯一性,但是可以多列组合
    (1)创建:(请先在平台里运行再复制如下)
        
--创建数据表(课本P56-4.1)

USE stsc
CREATE TABLE student
(
    stno char(6) NOT NULL PRIMARY KEY,
    stname char(10) NOT NULL ,
    stsex char(2) NOT NULL,
    stbirthday date NOT NULL,
    specialist char(20) NULL,
    tc int NULL

)
GO

USE stsc
CREATE TABLE score
(
    stno char(6) NOT NULL ,
    cno char(3) NOT NULL,
    grade int NULL,
    PRIMARY KEY(stno,cno)

)
GO

--由其他表创建新表(课本P57-4.2)
USE stsc 
SELECT stno,stname,stbirthday INTO student1
FROM student

--修改表的列(增加列)
USE stsc
ALTER TABLE student1 
ADD remark varchar(50)

--修改表的列(删除列)
ALTER TABLE student1
DROP  COLUMN remark

课本实验4.1-2、4.1-3

--创建库
CREATE DATABASE storeexpm
ON PRIMARY
(
    NAME='storeexpm',
    FILENAME='E:\My_data\storeexpm.mdf',
    SIZE=5MB,
    MAXSIZE=UNLIMITED,
    FILEGROWTH=1MB

)

LOG ON
(
    NAME='storeexpm_log',
    FILENAME='E:\My_data\storeexpm_log.ldf',
    SIZE=5MB,
    MAXSIZE=UNLIMITED,
    FILEGROWTH=10%

)
--创建表DeptInfo
USE storeexpm
CREATE TABLE DeptInfo
(
    DeptID varchar(4) NOT NULL PRIMARY KEY,
    DeptName varchar(20) NOT NULL ,

)
--创建表EmplInfo
CREATE TABLE EmplInfo
(
    EmplID varchar(4) NOT NULL PRIMARY KEY,
    EmplName varchar(8) NOT NULL ,
    Sex varchar(2) NOT NULL,
    Birthday date NOT NULL,
    Native varchar(20) NULL,
    Wages decimal(8,2) NOT NULL,
    DeptID varchar(4) NULL

)
--创建表OrderInfo
CREATE TABLE OrderInfo
(
    OrderID varchar(6) NOT NULL PRIMARY KEY,
    Emplno varchar(4) NULL ,
    Curstomerno varchar(4) NULL,
    Saledate date NOT NULL,
    Cost decimal(10,2)

)
--创建表DetailInfo
CREATE TABLE DetailInfo
(
    OrderID varchar(6) NOT NULL,
    GoodsID varchar(4) NOT NULL,
    Saleunitprice decimal(8,2) NOT NULL,
    Quantity int NOT NULL,
    Total decimal(10,2) NOT NULL,
    Discount float NOT NULL,
    Discounttotal decimal(10,2) NOT NULL,
    PRIMARY KEY(OrderID,GoodsID)
)
--创建表CoodsInfo
CREATE TABLE CoodsInfo
(
    GoodsID varchar(4) NOT NULL PRIMARY KEY,
    GoodsName varchar(30) NOT NULL,
    ClassificationName varchar(16) NOT NULL,
    UnitPrice decimal(8,2)   NULL,
    StockQuantity  int  NOT NULL


)
sp_rename CoodsInfo, GoodsInfo

--P70(2-3)
--由已知表创建新表
USE storeexpm
SELECT *
FROM EmplInfo

SELECT EmplID, EmplName ,Sex ,Birthday ,Native ,Wages ,DeptID INTO EmplInfo1
FROM EmplInfo

SELECT *
FROM GoodsInfo

SELECT GoodsID, GoodsName,ClassificationName,UnitPrice,StockQuantity INTO GoodsInfo1
FROM GoodsInfo

--在表中添加一列
ALTER TABLE EmplInfo
ADD Eno varchar(4) NOT NULL
SELECT *
FROM EmplInfo
SELECT *
FROM GoodsInfo
ALTER TABLE GoodsInfo
ADD Gno varchar(4) NOT NULL

SELECT *
FROM GoodsInfo 

--修改表列的数据类型或字段名
ALTER TABLE EmplInfo1
ALTER COLUMN Sex char(2) NOT NULL
sp_rename 'EmplInfo1.Sex' ,'S'


ALTER TABLE GoodsInfo1
ALTER COLUMN UnitPrice  money

--删除表列和数据表
ALTER TABLE EmplInfo
DROP COLUMN Eno
DROP TABLE EmplInfo1

ALTER TABLE GoodsInfo
DROP COLUMN Gno
DROP TABLE GoodsInfo1

SELECT * FROM GoodsInfo 

    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值