• 创建数据库,数据表,约束整理


    一、创建数据库
    1.启动服务(三种)
    开始--cmd--输入net start mssqlserver
    开始--运行--net start mssqlserver
    开始--服务--找到SQLSERVER(MSSQLSERVER)--右键--启动
    
    2.打开ssms
    
    3.登录:windows身份验证
    混合验证模式
    
    系统数据库:
    master:存储系统配置信息,数据库信息等;千万不能删;
    model:模板信息;空白数据库模板,表模板;
    tempdb:临时表,临时存储过程等;
    msdb:存储调度信息等;
    
    创建数据库的语法:
    create database 数据库名
    on
    ( 
    name='数据库名', 
    filename='盘符:文件夹名文件名.后缀名',
    size=数值mb, --主数据文件最小值为3mb
    filegrowth=数值mb或百分比, --按mb增长,或按百分比增长
    maxsize=数值mb
    )
    log on
    (
    name='数据库名_log',
    filename='盘符:文件夹名数据库名_log.ldf',
    size=数值mb, --日志文件最小值为1mb
    filegrowth=数值mb或百分比,
    maxsize=数值mb
    )
    go
    
    判断是否有同名数据库存在,如果存在则先删除
    1>if exists(select * from sys.databases where name='数据库名')
    drop database 数据库名
    go
    2>if db_id('数据库名') is not null
    drop database 数据库名
    go
    
    
    题目:在E盘的hello文件夹下创建数据库students,主数据文件 初始大小10mb 按10%的方式增长,不限制上限;
    日志文件,初始大小3Mb, 按1mb的方式增长,最大为20mb
    
    如果当文件夹不存在时,需要在指定文件夹下创建数据库文件,需要先启动外围配置,再调用dos命令创建文件夹
    启动外围配置
    exec sp_configure 'show advanced options',1
    reconfigure
    exec sp_configure 'xp_cmdshell',1
    reconfigure
    go
    
    调用dos命令
    exec xp_cmdshell 'md 盘符:文件夹名...',no_output或output
    go
    
    完整的创建数据库的步骤:
    1.启动外围配置
    
    2.调用dos命令创建文件夹
    
    3.判断是否有同名数据库存在
    
    4.创建数据库
    
    
    二、创建表
    1.切换数据库
    use 数据库名
    go
    
    2.判断同名表是否存在
    if exists(select * from sys.objects where name='表名')
    drop table 表名
    go
    
     
    
    三、.创建约束
    alter table 表名 
    add constraint pk_表名_列名 primary key(列名), --主键:不为空不重复
    cosntraint uq_表名_列名 unique(列名), --唯一约束:不重复
    constraint ck_表名_列名 check(条件表达式),
    constraint df_表名_列名 default '默认值' for 列名
    go
    
    外键:关联多个表之间的相同列;
    学生信息表stuInfo:学号sno 姓名 性别 年龄 等... --学号一定是主键
    学生成绩表score: 考号 学号no 成绩... --考号是主键 学号是外键
    
    外键创建的前提,必须在另外一个表里面是主键;
    主表:外键对应的主键所在的表;
    从表:外键所在的表;
    alter table 从表名
    add constraint 从表名_主表名_从表列名 foreign key(从表列名) references 主表名(主表列名)
    go
    alter table score 
    add constraint score_stuInfo_no foreign key(no) references stuInfo(sno)
    go
    了解"联合主键":
    alter table 表名
    add constraint pk_表名_列名1_列名2 primary key(列名1,列名2)
    go 
    
    
     
  • 相关阅读:
    存图---链式前向星
    Codeforces Round #664 (Div. 2)(A B C D)
    Go Running HDU
    Total Eclipse HDU
    Little W and Contest HDU
    2018 ICPC Asia Nanjing Regional Contest
    Codeforces Round #662 (Div. 2)(A B C D)
    Codeforces Round #661 (Div. 3)(A B C D E)
    素数判断(欧拉筛)
    网络流专题 模板 + 例题 (Going Home POJ
  • 原文地址:https://www.cnblogs.com/loushengjie/p/9488441.html
Copyright © 2020-2023  润新知