您的位置:金沙游乐场85155 > 大数据库 > 数据库SQL语句的操作

数据库SQL语句的操作

发布时间:2019-10-07 14:52编辑:大数据库浏览(102)

    一、创建数据库
    1.启动服务(三种)
    开始--cmd--输入net start mssqlserver
    开始--运行--net start mssqlserver
    开始--服务--找到SQLSERVER(MSSQLSERVER)--右键--启动

    SQLServer数据库的基础知识的回顾:

    2.打开ssms

      1)主数据文件:*.mdf

    3.登录:windows身份验证
    混合验证模式

          2)次要数据文件:*.ndf

    系统数据库:
    master:存储系统配置信息,数据库信息等;千万不能删;
    model:模板信息;空白数据库模板,表模板;
    tempdb:临时表,临时存储过程等;
    msdb:存储调度信息等;

      3)日志文件:*.ldf

    创建数据库的语法:
    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

     如何查看SQL Server的帮助==================快捷键F1

    题目:在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

    exec sp_configure 'show advanced options',1

    完整的创建数据库的步骤:
    1.启动外围配置

    go

    2.调用dos命令创建文件夹

    reconfigure

    3.判断是否有同名数据库存在

    go

    4.创建数据库

    exec sp_configure 'xp_cmdshell',1

    二、创建表
    1.切换数据库
    use 数据库名
    go

    go

    2.判断同名表是否存在
    if exists(select * from sys.objects where name='表名')
    drop table 表名
    go

    reconfigure

     

    go

    三、.创建约束
    alter table 表名
    add constraint pk_表名_列名 primary key(列名), --主键:不为空不重复
    cosntraint uq_表名_列名 unique(列名), --唯一约束:不重复
    constraint ck_表名_列名 check(条件表达式),
    constraint df_表名_列名 default '默认值' for 列名
    go

    exec xp_cmdshell 'mkdir E:新建文件'

    外键:关联多个表之间的相同列;
    学生信息表stuInfo:学号sno 姓名 性别 年龄 等... --学号一定是主键
    学生成绩表score: 考号 学号no 成绩... --考号是主键 学号是外键

    go

    外键创建的前提,必须在另外一个表里面是主键;
    主表:外键对应的主键所在的表;
    从表:外键所在的表;
    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

     

     

    二、创建数据库

    1.例子: 

     --判断,如果有这个数据库则进行删除

    if exists(select * from sysdatabases where name='MySchool')

    begin

    drop database MySchool

    end 

     --创建数据库

    create database MySchool

    on primary

    (

    --数据文件的具体描述

     name='MySchool_data',                 --主数据文件的逻辑名称+++++++必须写

     filename='E:MySchool_data.mdf',   --主数据文件的物理名称+++++++必须写

     size=5mb,                                 --主数据文件的初始大小

      maxsize=100mb,                      --主数据文件增长的最大值

      filegrowth=15%                       --主数据文件的增长率

    )

    log on

     (

    --日志文件的具体描述,各参数含义同上

    name='MySchool_log',

     filename='E:MySchool_log.ldf',

     size=2mb,

    filegrowth=1mb

     )

     go

    三、创建表

     2 use MySchool --将当前数据库设置为MySchool,以便在MySchool里创建表

     3 go

     4 --判断是否存在表,存在则删除

     5 if exists (select * from sysobjects where name='Student')

     6 drop table Student

     7---创建Student表

     8 create table Student   

     9 (

    10  StudentNo int identity(1,1)  primary key not null,  --学号 自增 主键,非空

    11  loginpwd nvarchar(20) not null,

    12  StudentName nvarchar(20) not null,

    13  Sex bit default'女' not null,      --性别,取值0,1

    14  GradeId int not null,

    15  Phone nvarchar(50) null,

    16  Address nvarchar(100) null,

    17  BornDate datetime not null,

    18  Email nvarchar(20) null,

    19  IdentityCard varchar(18) not null

    20  )

    21 go

    四、创建约束

     

    语法:

     

     1 alter table 表名

     

    2 add constraint 约束名 约束类型 具体的约束说明 

     

     

    例子:

     

    1、添加默认约束(默认'地址不详')

     

    1 alter table Student

     

    2 add constraint df_address default('地址不详') for address

     

     

    2、添加检查约束(要求出生在1996年10月26日)

     

    1 alter table Student

     

    2 add constraint ck_BornDate check (BornDate >='1996-10-26')

     

    本文由金沙游乐场85155发布于大数据库,转载请注明出处:数据库SQL语句的操作

    关键词: