zoukankan      html  css  js  c++  java
  • Sql Sever语句 (续2)

    日期时间

    把日期类型的字段下默认值或绑定里的 设置成getdate()   ,新建字段时候不设置会自动获取当前服务器时间

    在当前时间加上xx年xx月xx天

    select datedd(yy,100,getdate())      在当前时间加上100年

    select datedd(mm,5,getdate())    在当前时间加上5个月

    select datedd(dd,34,getdate())    在当前时间加上34天

    联合查询:将两个表的数据通过筛选出所用信息导出


    select UI.UserId,UI.UserName,UI.QQ,UI.ReaName,SS.ScoreId,SS.Chinese   --查询内容

    from UserInfo UI left join StuScore  SS on        --两个表的名称 起个别名

    UI.UseId=SS.UserId  

        left join  和right join     以左/右边的表为主  不够补齐

        inner join 两边都有

    三个以上表格思路:先将两个表格做联合查询,结果做成一个表 起个名字,在与第三个表格做联合查询

    约束:

      控制字段在一定范围值内,避免脏数据;

    设计》某字段右键》添加约束》修改表达式    如年龄表达式  Age>=0 and Age<=120

        修改后保存

    添加;

    方式一:

    insert into parenet values (7,'dsffs','吊死扶伤')      --添加字段   parenet表  字段按顺序加,主键不加  为空用空字段(但也必须加)

    方式二:
    insert into Parent (UserId,MMName) values (8,'dsaf')  --如只加两个字段UserI和MMName  其他没加的为空; 

    修改:

    更新:

    update Parent set MMName='ddd',FatherName='fdgs'  where ParentId=6

    删除:

    delete Parent where ParentId=6

    把一个表的数据复制到另一个表:

    insert into A(UserId,AMMName,AFName) select UseId, MMname,FatherName from Parent

    索引:

    聚集索引:如id,连贯的(一个表只有一个聚集索引  一般是主键 一般不更改)

    非聚集索引:不连贯的,多个...  ...

    建立索引后可以加快查询速度,但是不一定全部建立,仅查询量达的字段,不然会产生大量索引碎片,需定期清理;

    存储过程:

    存储过程是写在数据库里面,好处:效率高、安全系数高(防止sql注入)

    1)基本语法

    Eg:

    create proc procCategorySelect

    (

      @name varchar(200),

      @age  int

    )

    as 

    select * from Category where [name]=@name and age=@age

    1) 查看结果exec procCategorySelect 'xudads',11

    2) 更改/删除存储过程

    ALTER proc

    Drop proc 

     

     视图、

    触发器、

    数据库还原和备份

    定时作业(备份)

  • 相关阅读:
    SQL server 函数
    SQL server --时间日期函数、类型转换
    SQL server 基础知识
    14.C#的递归
    13.C#的函数练习
    使用bind部署DNS主从服务器
    创建yum仓库
    Linux基础服务搭建综合
    完整的URL是怎样的?
    mysqli_fetch_row()函数返回结果的理解
  • 原文地址:https://www.cnblogs.com/zhuyucun/p/6173716.html
Copyright © 2011-2022 走看看