• Chapter 3. SQL Server数据库、表的基本操作(insert插入、update更新、delete、truncate删除语句)


    --1.创建一个数据库
    create database MyDatabaseOne
    --2.删除数据库
    drop database MyDatabaseOne
    --3.创建数据库的时候设置一些参数选项
    create database MyDatabaseOne
    on primary
    (
        --配置主数据文件
        name='MyDatabaseOne' ,--主数据文件的逻辑名称
        filename='E:MSSQLServerMyDatebaseOne.mdf', --主数据文件的实际保存路径
        size=5MB, --主数据文件的初始大小
        maxsize=150MB, --主数据文件的最大大小
        filegrowth=20% --主数据文件的增长值
    )
    log on
    (
        --配置日志文件的选项
        name='MyDatabaseOne_log',--日志文件的逻辑名称
        filename='E:MSSQLServerMyDatabaseOne_log.ldf',--日志文件的实际保存路径
        size=5MB,
        maxsize=150MB,
        filegrowth=20%
    )

    --在数据库中创建表
    use MyDatabaseOne
    /*
        表1:可选修的课程表:
              (主)课程编号:Lcode int
              课程名称:Lname varchar(20)
              责任课教师:Lteacher varchar(20)
              教师电话:Ltel varchar(20)
    */
    create table Lessons
    (
        Lcode  int identity (1001,1) primary key,
        Lname varchar(20) not null,
        Lteacher varchar (20) not null,
        Ltel varchar(20)    
    )
    
        /*
              表2:学生表:
                (主)学号:Scode int
                姓名:Sname nvarchar(20)
                性别:Sgender varchar(10)
                (外)系别:Sdepartment int
                (外)选修课程:Slesson int
         */
    create table Students
    (
        Scode int identity (2001,1) primary key,
        Sname nvarchar(20) not null,
        Sgender varchar(10) not null,
        Sdepartment int,
        Slesson int
    )
    
       /*
          表3:系院表
                (主)系院编号:Dcode int
                系院名称:Dname nvarchar(20)
                系负责老师:Dteacher nvarchar(20)
                系电话:Dtel varchar(20) 
          */
    create table Departments
    (
        Dcode  int identity (3001,1) primary key,
        Dname nvarchar(20) not null,
        Dteacher nvarchar (20) not null,
        Dtel varchar (20)
    )

    --向课程表插入数据:
    --注:自动编号的列,默认自动增长,不需要插入值
    insert into Lessons(Lname,Lteacher,Ltel) values ('图说历史','张秀丽','1234567')
    --注:向全部列(自动编号除外)插入值,可以省略列名不写,但插入的值顺序必须保持一致
    insert into Lessons values ('计算机基础','张雪松','12345678')
    insert into Lessons values ('美国文学','李泽池','123456789')
    insert into Lessons values ('标准日本语','本田浩二','1234567890')
    select * from Lessons

    --向院系表插入数据
    insert into Departments values('计算机科学系','纪科','13843839438')
    insert into Departments values('英语系','英明','13843839434')
    insert into Departments values('音乐系','杨悦','13843839434')
    insert into Departments values('美术系','刘梅','13843839436')
    select * from Departments

    --向学生表插入数据
      insert into Students values ('张三','',3001,1001)
      insert into Students values ('李四','',3002,1001)
      insert into Students values ('王五','',3003,1002)
      insert into Students values ('赵六','',3004,1003)
      insert into Students values ('冯七','',3001,1002)
      insert into Students values ('钱八','',3002,1002)
      insert into Students values ('马丽','',3001,1004)
      insert into Students values ('牛生','',3001,1003)
      insert into Students values ('郭晓','',3004,1002)
      insert into Students values ('杨明','',3001,1004)
      insert into Students values ('顾凯','',3003,1001)
      insert into Students values ('林琳','',3003,1004)
    --向自动编号的列插入值
    --启动"自动编号列"手动插入值得功能
    set identity_insert Students on
    insert into Students (Scode,Sname,Sgender) values (5000,'王雪','')
    set identity_insert Students off
    select * from Students

    --打开/关闭查询窗口:ctrl+r

    --更新语句:
    --update 表名 set 列=新值,列2=新值2, . . . where 条件
    --update语句,如果不加条件,表示对表中所有数据进行修改
    --将表中性别为女的名字后显示(女)
    update Students set Sname=Sname+'(女)' where Sgender=''
    select * from Students

    --删除语句:
    --delete from 表名 where . . .
    --delete 语句如果不加where条件,表示将表中所有数据都删除
    --删除Stuends中5000的数据
    delete from Students where Scode=5000
    --删除数据后,自动编号仍然默认继续编号
    insert into Students values ('王雪','',3001,1003)
    select * from Students

    --删除表中全部数据:
    --truncate table 表名
    --特点:
    --1.   truncate语句不能跟where条件
    --2. 使用truncate删除后,自动编号恢复到初始值
    --3. 使用truncate删除表中所有数据要比delete效率高
    --4. truncate删除数据,不触发delete触发器
  • 相关阅读:
    自己改了个{svn服务器端绿色版}
    Android去掉顶部的阴影
    SqliteOpenHelper的onUpgrade()死活不运行的解法
    前端模拟发送数据/调试的好工具:Chrome下的PostmanREST Client
    mouseenter & mouseleave VS mouseover & mouseout
    Android WindowManager$BadTokenException异常应对案例
    Eclipse快捷键大全(转载)
    360桌面JSAPI一个诡异的bug:客户端与网页通过js通信
    《你在哪》1.34强势发布,新增“图片墙”
    经过一个月的奋斗,我的第一个Android作品《麦芒》诞生了
  • 原文地址:https://www.cnblogs.com/xiao55/p/5575813.html
Copyright © 2020-2023  润新知