zoukankan      html  css  js  c++  java
  • 关于SqlServer那些事1(回归基础)

    即将实习,回归基础总结,希望可以再好好打磨一下基础的一些东西

    关于如何在重新修改表结构时该变其权限设置

    步骤:

    1. 点击工具
    2. 进入选项
    3. 设计器
    4. 取消勾选阻止保存要求重新创建表的更改

    关于创建创建数据库以及数据库文件(.mdf)和日志文件(.ldf)

    创建数据库有“有很笨的”方法就是不写脚本自动创建,右键创建数据库,点击新建数据库,就会出现如下示例图:

    讲讲mdf和ldf的理解吧!

    mdf也就是数据库主文件,主要是对处理一些业务数据,它是存放在硬盘里的,如你所见你可以去设置它的一个初始化的值(5MB),也可以查看它创建后存储的路径

    ldf也就是日志文件,通俗地讲就是会记录用户什么时间,做了什么操作,谁在操作等进行一系列的记录和保存,比如说数据库文件的创建时间或者是用户登录数据库的时间等等

    对了,需要注意的一点是,对于mdf和ldf两个文件最好都存储在同一个文件夹路径,本质上来说就算存放在不同文件夹在做数据库附加时也不会受到影响,但是这样想想存储在不同文件夹是极不容易后期维护和查看的!

    关于数据库分离

    如果你想将数据库文件和日志文件进行打包或者复制到其他盘符,你也可以对它进行数据库的分离操作

    步骤:

    1. 右键准备分离的数据库
    2. 任务
    3. 分离
    4. 确定

    为什么要勾选删除连接,可能准备分离的数据库此时处于运行状态也就是和数据库保持连接的状态,需要删除连接操作然后进行分离,不然可能会出现操作失误等报错

     分离完成后,可以去存放数据库主文件的文件夹查看已被分离出来的文件,此时已完成数据库分离操作!

     关于数据库附加

    所谓附加就是将分离出来的数据库文件重新再连接,进而保证数据库业务逻辑和成绩的表结构数据在分离后不会丢失。

    步骤:

    1. 右键数据库
    2. 附加
    3. 添加

    选择你刚刚分离出来的数据库文件(这里主要是附加mdf文件)

    但是在附加的过程中,你可能会出现类似这样的报错信息:“操作系统错误,拒绝访问...”,不要心急这种问题可能是服务器对于附加的数据库文件没有权限

    解决方案:

    找到对应的准备附加的数据库文件夹,右键属性—》安全—》编辑—》添加(添加你自己命名的即可)—》勾选完全控制即可

    其实还有一种办法就是在不分离数据库的情况下进行mdf的拷贝操作,那就是进行脱机处理。其实脱机原理也就是脱离数据库的连接,等完成之后进行联机即可

     

    关于创建新的数据库用户

    1. 安全性
    2. 登录名
    3. 右键新建登录名
    4. 选择SqlServer身份验证
    5. 取消勾选强制密码实施策略

     

     

    注意:切勿对系统数据库进行修改或者是其他违规操作,不然很可能会导致数据库系统奔溃的

    关于采用自写脚本创建数据库

    以上第一创建数据库的方式,作为小白初次可以这样去创建,但是个人觉得最好一次都不要尝试,个人觉得也比较low,知道有这种创建方式就好了!

    go:你可以理解成分批次执行SQL

    --首先判断数据库是否已经存在
    if exists(select * from Sysdatabases where name ='mydb')
    --存在就删除
    drop database mydb
    --执行完毕
    go
    --创建数据库
    create database mydb
    go
    --使用数据库
    use mydb
    go

    对了,使用以上脚本创建数据库仅仅限于开发环境下使用!!!不然可能会导致不明所以的数据库丢失,等同于删库!!!

    关于数据的三种完整性约束

    域完整性:某个字段的数据合法性约束(check约束、限制数据类型)

    实体完整性:某一数据列的数据合法性约束

    引用完整性:表与表之间引用是否合法的合法性约束(主键约束、唯一约束、主外键,一对一、一对多、多对多、分清楚谁是主表谁是从表!)

    唯一约束(可null,null也是数据)、主键约束(唯一,不为null)、标识列(这一列的数据可自增、可设置起始的数值)
    标识列:现有10条数据,删除后7条,存在1,2,3工3条数据,这样再去重新自增,这个时候标识列的起始值就从10开始一直加,假设自增值为1,这样就不会出现重复!

    以上就是对SqlServer基础的一些总结,希望今年的实习阶段能够顺利,加油!!!

  • 相关阅读:
    asp.net Ctrl+回车提交
    Request.Form.Keys保存的是什么?
    让iframe子窗体取父窗体地址栏参数(querystring)
    Repeater在无数据记录时显示类似GridView空模板(EmptyDataTemplate)
    jQuery与javascript对照学习(获取父子前后元素)
    internet缓存Temp中的tmp文件
    C#反射遍历一个对象属性(小技巧)
    silverlight序列化反序列化,在c#其他程序反序列化
    Silverlight序列化反序列化(json.net)
    卸载oracle
  • 原文地址:https://www.cnblogs.com/hcyesdo/p/13392669.html
Copyright © 2011-2022 走看看