【SQL Server】数据库SQL Server基本操作:增删改查(insert、delete、update、select)

1 创建数据库

  1. 语句
    create datatbase 用于创建数据库。
  2. 语法
    create datatbase 数据库名称
  3. 示例
  create database demo 

2 建表

  1. 语句
    create table 语句用于创建数据库中的表。
  2. 语法
    create table 表名称
    (
    列名称1 数据类型,
    列名称2 数据类型,
    列名称3 数据类型,

    )
  3. 示例

/* Table1: Student   学生表 */
create table Student (
    sno int primary key, --学号
	sname nvarchar(32) not null, --姓名
	sage  int not null, --年龄
	ssex  nvarchar(8) --性别
)

3 删表

  1. 语句
    drop table 语句用于删除表(表的结构、属性以及索引也会被删除)
  2. 语法
    drop table 表名称
  3. 示例
drop table Student

4 插入一条记录

  1. 语句
    insert into 语句用于向表格中插入新的行。
  2. 语法
    insert into 表名称 values (值1, 值2,…)
  3. 示例
--插入一条
insert into Student VALUES (1001, '张三', 20, '男')

--插入多条
insert into Student VALUES 
(1002, '李四', 21, '男'),
(1003, '王五', 15, '女'),
(1004, '刘六', 18, '女')

结果
在这里插入图片描述

5 修改一条记录

  1. 语句
    update 语句用于修改表中的数据。
  2. 语法
    update 表名称 set 列名称 = 新值 WHERE 列名称 = 某值
  3. 示例
update Student set sage = '50' WHERE sname = '李四' 

结果
在这里插入图片描述

6 删除一条记录

  1. 语句
    delete 语句用于删除表中的行。
  2. 语法
    delete from 表名称 where 列名称 =
  3. 示例
delete from Student where sname = '李四' 

结果
在这里插入图片描述

7 添加、修改、删除一列

  1. 语句
    alter table 语句用于在已有的表中添加修改删除列。

  2. 语法
    如需在表中添加列,请使用下列语法:
    alter table 表名 add 列名 数据类型

    如需在表中修改列,请使用下列语法:
    exec sp_rename ‘表名.[字段旧名]’, ‘字段新名’, 'column';

    要删除表中的列,请使用下列语法:
    alter table 表名 drop column 列名

  3. 示例

--添加列
alter table Student add scard int
--修改列
exec sp_rename 'Student.[sage]', 'sages' , 'column'
--删除列
alter table Student drop column scard 

8 备份或复制表数据

  1. 语句
    select into 语句可用于创建表的备份复件,从一个表中选取数据,然后把数据插入另一个表中。

  2. 语法
    您可以把所有的列插入新表:
    select * into 新表名 from 旧表名

    或者只把希望的列插入新表:
    select 列名1,列名2 into 新表名 from 旧表名

  3. 示例

--把所有列插入新表
select * into Student_backup from Student

--把希望的列插入新表
select sno,sname into Student_backup2 from Student

--按条件插入数据到新表:带有Where子句
--所有列
select * into Student_backup3 from Student where sname = '张三'
--指定列
select sno,sname into Student_backup4 from Student where sname = '张三'

8.1 Select Into 多表查询生成新的表

  1. 思路
    主要是利用多表联合查询(比如内联接--inner join)方式查找到新的数据,然后将查找的数据按照所有列或指定列插入到新的表中
  2. 示例
    (1)创建两张表:学生表stu_Student班级表stu_Class
/* Table1: stu_Student   学生表 */
create table stu_Student (
    sno int primary key, --学号
	sname nvarchar(32) not null, --姓名
	sage  int not null, --年龄
	ssex  nvarchar(8), --性别
	scno int  --班级号
)

/* Table1: stu_Class   班级表 */
create table stu_Class (
    cno int primary key, --班级号码
	cname nvarchar(32) not null, --班级名称
	cposition nvarchar(32) not null --所在位置
)
注释:我们通过两表中的字段:`scno`和`cno`进行关联

(2)给两张表插入数据

--插入多条
insert into stu_Student VALUES 
(1002, '李四', 21, '男', 10),
(1003, '王五', 15, '女', 11),
(1004, '刘六', 18, '女', 11)
--插入多条
insert into stu_Class VALUES 
(10, '实验班','教学楼1楼'),
(11, '平行班', '教学楼2楼')

(3)多表查询联合插入数据到新表

--多表查询插入数据到新表
--所有列
select * into newtable from stu_Student s inner join stu_Class c on s.scno = c.cno
--指定列
select s.*,c.cname into newtable2 from stu_Student s inner join stu_Class c on s.scno = c.cno

结果
在这里插入图片描述
在这里插入图片描述
代码说明
(1)stu_Student s stu_Class c中的s和c是对表申明变量,方便简写使用;
(2)第二句中的s.*是指stu_Student的所有字段

  • 6
    点赞
  • 69
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值