zoukankan      html  css  js  c++  java
  • 关于SQLServer的一些简单代码操作

    就不介绍了在studio中的图形化操作了,这里简单介绍了一些SQL语言的操作。

    首先:

    给一些例子怎样创建一个数据库对象和表(创建create  删除drop):

    1、创建数据库对象

    --创建数据库对象
    create database School;
    
    --删除数据库
    drop database School
    
    --创建数据库 的时候制定一些参数
    
    create database School
    on primary 
    (
        --数据库的逻辑名称
        name='School',
        size=10mb,
        filename='C:school.mdf'
        
    )
    log on 
    (
        name='School_log',
        filename='C:school.ldf'
    )
    

    2、创建表 

    --切换数据库
    use School--点击F5可以执行  但是要先选择
     
    --在数据库下面创建表
    create table TblClass
    (
        --创建一列
        --列名,数据类型、约束
        ClsId int identity(1,1) primary key,
        ClsName  varchar (50) not null,
        ClsDesc varchar(500),
    )
    
    drop table TblClass
    --控制结果窗口的显示隐藏ctrl+R
    
    --在创建一个表
    create table TblStudent
    (
        StuId int identity(1,1) primary key,
        StuName nvarchar(50) not null,
        StuGender bit not null,
        StuAddress nvarchar(200 ) ,
        StuPhone varchar(500),
        StuAge int,
        StuBirthday datetime,
        StuIdNumber varchar (20),--身份证号
        StuClsId int 
    )
    

    其次:介绍一些最基本的操作

    增(insert)删(delete)查(select)改(update)

    增删是一行一行的操作,而查改是可以改一个具体的格子(就是说是行和列交叉的地方进行修改)。所以insert、delete 就是直接的增删,

    而查的语法在查中可见,select ...(A)....from.....where...(B)....  其中(A)确定了列,(B)确定了行

    改的语法update....set....(A).....where....(B)... 其中(A)确定了列,(B)确定了行

    1、增:(insert)

    1 --通过程序向表中插入数据
    2 insert into TblClass(ClsName,ClsDesc)
    3 values('哈哈','你好么')
    4 
    5 --通过select来查看表中的数据
    6 select * from TblClass
    --用insert into...select插入多行
    insert into TblTeacher
    select 'qian' ,1, 45,465546,1999-9-9 union
    select 'zhu' ,1, 45,465546,1999-9-9 union
    select 'zhao' ,1, 45,465546,1999-9-9 union
    select 'min' ,1, 45,465546,1999-9-9 union
    select 'huang' ,1, 45,465546,1999-9-9
    

    2、删(delete)

    --有条件的删除
    delete from TblTeacher where tname='min'
    
    --全部删除
    delete from TblTeacher
    
    --查看一下现在是表格是什么样子了
    select * from TblTeacher
    
    --全部删除的另一种方式
    truncate table TblTeacher
    
    
    --1.delete 语句删除数据的时候,自动编号没有恢复到默认值。但是truancate语句重新设置了自动编号
    --2.通过truncate语句删除表中的数据的时候,只能一次性都清空,不能根据条件来删除,而delete可以根据条件来删除。
    --3.truncate语句清空表中的数据时,速度(性能)比delete语句快的多的多的多。
    --4..truncate语句不触发delete触发器。
    

    3、查(select)

    --查看表格现有的数据
    select * from TblTeacher
    --select查询的一般的格式
    select 
        --列名
    from --数据源(表名、子查询结果、视图.....)
    where --条件(筛选行..)
    
    --例子
    select 
        fId as 学号,
        fMath as 分数,    --筛选出fId和fMath的列,并给他们取别名
    from MyStudent        --数据源是MyStudent的表
    where fMath<90        --筛选行的条件
    
    --having是在分完组之后对组的筛选,而where是在筛选之前对表格进行选择
    select 
        tsclassId as 班级ID,
        COUNT(*) as 班级人数,
    
    from Tblstudent
    where tsgender='男'
    group by tsclassId
    having COUNT(*)>2
    

    这个重要,介绍了select中各条语句执行的顺序

    --select中各条语句执行的顺序
    --1>…From 表
    --2>…Where 条件
    --3>…Group by 列
    --4>…Having 筛选条件
    --5>…Select 5-1>选择列,5-2>distinct,5-3>top
    --6>…Order by 列
    
    select 
        --distinct/top 之类的关键字
        fgender as 性别,--5>选择列
        count(*) as 人数
    from MyStudent      --1>从什么表中选择数据
    where fage>30         --2>
    group by fgender        --3>
    having count(*)           --4> 
    order by 人数 desc        --6>
    

    4、改(update)

    --将所有年龄小于20的都改成19
    update TblTeacher set tage=19 where tage<20
    
    --将年龄为十九的都加一
    update TblTeacher set tage=tage+1 where tage=19
    
    --把所有人的工资都改成2000
    update TblTeacher set tsalary=2000
    

    再介绍用SQL写约束条件(alter):

    简单贴一些刚刚写的代码:

    --通过sql创建约束
    
    
    --手动删除一列
    alter table Employees drop column EmpAddress
    
    alter table Employees add EmpAdds varchar(200)
    
    alter table Employees alter column EmpAdds varchar(100)
    --手动增加一主键
    alter table Employees add constraint Pk_Employees_EmpId primary key(EmpId)
    
    --增加一个非空约束(他本质上修改列)
    alter table Employees alter column EmpName varchar(50) not null
    
    --EmpName增加一个唯一约束
    alter table Employees add constraint UQ_Employees_EmpName  unique ( EmpName)
    
    
    --给性别增加一个默认约束
    alter table Employees add constraint DF_Employees_EmpGender default('男' ) for EmpGender
    
    --增加一个外键约束
    -- 1.给Employees增加一个外键
    alter table Employees add EmpDep int
    --2.将DepId设置为主键
    alter table Department add constraint PK_Department_DepId primary key (DepId)
    --3.创建一个外键约束
    alter table Employees add constraint Fk_Empolyees_Department foreign key(EmpDep) references Department(DepId)
    

      

    Just like writing, coding is a work of creating!
  • 相关阅读:
    基于jQuery仿淘宝产品图片放大镜代码
    【家育通】 关于我们
    新房装修三大空鼓解决方法 为家居装修做好前奏
    MVC5+EF6 入门完整教程十一:细说MVC中仓储模式的应用
    MVC5+EF6 入门完整教程十
    MVC5+EF6 入门完整教程九
    MVC5+EF6 入门完整教程八
    MVC5+EF6 入门完整教程七
    MVC5+EF6 入门完整教程六
    MVC5+EF6 入门完整教程五
  • 原文地址:https://www.cnblogs.com/chenbuer/p/3728717.html
Copyright © 2011-2022 走看看