当前位置:网站首页>SQL Server——数据表的基本操作

SQL Server——数据表的基本操作

2021-07-20 03:56:05 流楚丶格念

在这里插入图片描述
在这里插入图片描述
表是SQL Server中最基本的数据库对象,用于存储数据的一种逻辑结构,由行和列组成, 它又称为二维表。
例如,在学生成绩管理系统中,表1–是一个学生表(student)。
在这里插入图片描述

(1)表

表是数据库中存储数据的数据库对象,每个数据库包含了若干个表,表由行和列组成。例如,表1-
-由6行6列组成。

(2)表结构

每个表具有一定的结构,表结构包含一组固定的列,由数据类型、长度、允许Null值等组成。

(3)记录

每个表包含若干行数据,表中一行称为一个记录(Record)。表1–有6个记录。

(4)字段

表中每列称为字段(Field),每个记录由若干个数据项(列)构成,构成记录的每个数据项就称为字段。表1–有6个字段。

(5)空值

空值(Null)通常表示未知、不可用或将在以后添加的数据。

(6)关键字

关键字用于唯一标识记录,如果表中记录的某一字段或字段组合能唯一标识记录,则该字段或字段组合称为候选关键字(Candidate Key)。如果一个表有多个候选关键字,则选定其中的一个为主关键字(Primary Key),又称为主键。表1–的主键为“学号”。


创建数据库最重要的一步为创建其中的数据表,创建数据表必须定义表结构和设置列的数据类型、长度等,下面,我们介绍SQL Server系统数据类型,如表2–所示。
在这里插入图片描述
详细介绍见我的另一篇博客:
https://blog.csdn.net/weixin_45525272/article/details/105557318

在这里插入图片描述
创建表的核心是定义表结构及设置表和列的属性,创建表以前,首先要确定表名和表的属性,表所包含的列名、列的数据类型、长度、是否为空、是否主键等,这些属性构成表结构。
我们以学生成绩管理系统的student(学生表)为例介绍表结构设计。
在student表中,只有stno列能唯一标识一个学生,所以将stno列设为主键。student的表结构设计如表3–所示。

在这里插入图片描述
在这里插入图片描述

1、创建表

【例1】在sixsatrdb数据库中创建
student表(学生表)。

在这里插入图片描述

2、修改表

右击操作即可,详细代码在最后面

3、删除表

删除表时,表的结构定义、表中的所有数据以及表的索引、触发器、约束等都被删除掉,删除表操作时一定要谨慎小心。
【例2】删除xyz表(已创建)。
(1)启动“SQL Server Management Studio”,在“对象资源管理器”中展开“数据库”节点,选中“stsc”数据库,展开该数据库,选中表,将其展开,选中表“dbo.xyz”,单击鼠标右键,在弹出的快捷菜单中选择“删除”命令。
(2)系统弹出“删除对象”窗口,单击“确定”按钮,即可删除xyz表。




在这里插入图片描述
表,各字段,数据实现:
在这里插入图片描述

代码入下:

-- 选用当前数据库
use sixstar
go 
-- 显示当前数据库中的数据表(查询输出student数据表)
select *from student

-- 创建课程表 course
use sixstar
go 
create table course
(
cno char(6) not null primary key,
sno char(4) not null,
cname char(10) not null,
cscore int not null
)
go

-- 从已存储的数据表中的字段,抽取出部分字段作为构成新数据表字段
select sno,sname,ssex,cname into studentinfo 
from student

select *from studentinfo

-- 修改数据表-->向表中添加新字段
alter table studentinfo
add remarks char(50)

alter table studentinfo
add abc char(50)

-- 删除数据表中的字段 (以删除 studentinfo 中的 abc为例)
alter table studentinfo
drop column abc

-- 删除数据表
drop table studentinfo

-- 查询课程表当中的数据信息
select *from course

-- 向course插入数据信息
insert into course values('105','01','计算机原理',12)
insert into course values('102','02','大学英语',10)
insert into course values('106','03','大学物理',13)
insert into course values('108','04','高等数学',15)
insert into course values('109','05','离散数据',10)
insert into course values('103','06','汇编语言',6)
insert into course values('104','07','C/C++',8)
select *from course


-- 修改数据表中的记录信息
update course
set cname='C/C--'
select *from course

-- 删除数据表中的记录信息(若不写where则表中内容全部删除)
insert into course values('111','11','氢弹',1) -- 先插入
select *from course

delete from course
where cname='氢弹'
select *from course


      
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.

版权声明
本文为[流楚丶格念]所创,转载请带上原文链接,感谢
https://blog.51cto.com/u_15265965/2892162

随机推荐