SQL Server基本使用和简单的CRUD操作

没想到有生之年,居然有了硬性写博客的时候(没抱怨什么,只是,有点惊讶),数据库wyg老师(David)让我们把每次实验课上的操作或者平时的一些总结写到博客上,通过这种方式来检查我们的作业和学习情况,不得不说,与时俱进,而且方便高效,妙啊!既如此,那我还是撸起袖子好好搬砖干活,巩固所学知识吧!

Posted in SQL Server onApril 05, 2021
一、SQL Server的安装和配置

这里附上两篇参考的博客(David说是学长学姐们写的,那我就白嫖吧),里面详细说明了每一步的操作和相关的配置。还有一篇是自己安装时看的,话说,我自己安装东西好像一向都很顺利,所以也没有出现什么问题。。。

二、基本使用(基于GUI)
1.新建数据库,注意系统数据库不要随意修改,防止更改重要信息

SQL Server基本使用和简单的CRUD操作

2.修改和删除数据库

SQL Server基本使用和简单的CRUD操作

3.建表+设计表+插入数据

SQL Server基本使用和简单的CRUD操作
SQL Server基本使用和简单的CRUD操作

这里可以对表的属性(字段)进行设置,如是否允许为NULL值(即该项是否是必填项,若不是,则默认值为NULL),是否为主键等,后边有SQL语句

SQL Server基本使用和简单的CRUD操作
SQL Server基本使用和简单的CRUD操作

三、基本使用(SQL语句)(首先在菜单栏找到新建查询,在此处编写SQL语句)

PS:该软件不会自动将关键词变成大写,sqlyog可以
SQL Server注释
单行注释:-- 注释内容
多行注释:/* 注释内容 */
MySQL常用单行注释是 # 注释内容

1 . 新建数据库,并设置相关属性

常用写法(使用默认配置)

create database test;

完整写法

CREATE DATABASE testdb -- (数据库名称) 
on primary( --(主文件,固定格式:NAME主文件的名称,主文件的路径)
name = 'testdb',
filename = 'D:\temp\testdb.mdf', -- 主文件以mdf结束
size = 10MB, -- 主文件的初始值大小
maxsize = 100,
filegrowth = 5
) -- 数据文件每次的增长量,由于增删改等操作,文件增大,每次增大5MB
log on(
name = 'testdb_log',
filename = 'D:\temp\testdb_log.ldf',
size = 10,
maxsize = 100,
filegrowth = 5
)
2.表的建立 + 基于单表的添加、删除、修改、查询(CRUD操作)

PS:当决定对某个库进行操作时,建议事先选定该数据库,防止不必要的错误和麻烦出现,或者使用SQL语句,如use student,即可切换到student库
SQL Server基本使用和简单的CRUD操作

PS:基本所有的操作常用关键字

建立:create
添加,插入:insert
删除:delete 、 drop
修改:alter 、update
查询:select

2.1 表的建立

多个语句间用逗号间隔,最后一个不加

create table stuInfo(
id varchar(15) primary key not null, -- 主键(primary key)且不允许为空,主键本身就非空
name varchar(15) not null, -- 不允许空
age int null, -- 允许为空
sex varchar(5),
major varchar(20)
)
2.2 表的修改(主要指属性字段)
-- 更改字段类型长度
alter table 表
alter column 字段名 类型长度

alter table stuInfo
alter column name varchar(20)

-- 更改字段类型
alter table 表
alter column 字段名 更改后的类型

-- 添加非空约束
alter table 表
alter column 字段名 int not null

-- 设置主键
alter table 表
add constraint 主键名 primary key(字段名)

add constraint kid primary key (id)

-- 删除主键
alter table 表
drop constraint 主键名

-- 更改字段名
exec sp_rename '表名.字段名',
'更改后的字段名','COLUMN'(表示修改类型是字段),-- 注意COLUMN一定要大写

-- 添加字段名
alter table 表 
add 字段名 字段类型 default null
2.3 表的删除
drop table 表名
2.4 向表中插入数据
-- 插入单行数据
insert into '表格名'('栏位1','栏位2',...)
values('值1','值2',...);

insert into stuInfo(id,name,age,sex,major) 
values('123','haha','10','男','金融') -- 按顺序写

-- 插入多行数据
insert into '表格名'('栏位1','栏位2',...) values
('值1','值2',...),
('值1','值2',...),
('值1','值2',...);
-- 从其他表copy数据
insert into '表格1'('栏位1','栏位2',...)
select '栏位3','栏位4',... -- 注意要和上边的栏位数目一致
from '表格2';

SQL Server基本使用和简单的CRUD操作

2.5 修改表中数据
update 表名 set 字段 = 值

update stuInfo set age = 8
where id = '123' -- where指定查询,会发现id=123的age年龄变成了8

SQL Server基本使用和简单的CRUD操作
SQL Server基本使用和简单的CRUD操作

2.6 删除表中数据
-- 图形界面删除的话打开表,选中要删除行,右键删除即可

delete from stuInfo -- 会删除所有内容
-- 熟练之后可以省掉from
delete from 表名
where id = '123' -- 只删除id=123的那一行数据
2.7 查询表中数据
-- select 字段名(若为*代表查询所有字段信息) from 表名

-- 查询所有数据
select * from userInfo;

-- distinct 去重操作,只显示不一样的
select distinct 字段名 from 表名

-- top 查询前多少行数据
select top 行数 字段名 from 表名

-- 指定输出格式
select grade+'-'+className from stuInfo -- 显示为一年级-1班,对结果进行拼接

SQL Server基本使用和简单的CRUD操作

四、备注:

以上SQL语句与自己之前学的类似,不过还没完全记住。。还需记忆+练习。OK,任务完成,开始干饭!

SQL Server 相关文章推荐
SQL Server——索引+基于单表的数据插入与简单查询【1】
Apr 05 SQL Server
Sql-Server数据库单表查询 4.3实验课
Apr 05 SQL Server
SQL SERVER中常用日期函数的具体使用
Apr 08 SQL Server
SQL语句中JOIN的用法场景分析
Jul 25 SQL Server
万能密码的SQL注入漏洞其PHP环境搭建及防御手段
Sep 04 SQL Server
SQL SERVER存储过程用法详解
Feb 24 SQL Server
通过T-SQL语句创建游标与实现数据库加解密功能
Mar 16 SQL Server
使用 MybatisPlus 连接 SqlServer 数据库解决 OFFSET 分页问题
Apr 22 SQL Server
SQL Server使用T-SQL语句批处理
May 20 SQL Server
在SQL Server中使用 Try Catch 处理异常的示例详解
Jul 15 SQL Server
SQL Server——索引+基于单表的数据插入与简单查询【1】
2021-4-3课程——SQL Server查询【2】
2021-4-5课程——SQL Server查询【3】
SQL Server数据定义——模式与基本表操作
SQL Server 数据库实验课第五周——常用查询条件
Sql-Server数据库单表查询 4.3实验课
【HBU】数据库第四周 单表查询
You might like
php 文章采集正则代码
2009/12/28 PHP
thinkPHP中多维数组的遍历方法
2016/01/09 PHP
PHP将字符串首字母大小写转换的实例
2017/01/21 PHP
关于图片按比例自适应缩放的js代码
2011/10/30 Javascript
JS控件的生命周期介绍
2012/10/22 Javascript
JS中Iframe之间传值及子页面与父页面应用
2013/03/11 Javascript
JS小功能(列表页面隔行变色)简单实现
2013/11/28 Javascript
AngularJs中Bootstrap3 datetimepicker使用实例
2016/12/13 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
微信小程序自定义导航隐藏和显示功能
2017/06/13 Javascript
jQuery使用zTree插件实现可拖拽的树示例
2017/09/23 jQuery
基于Vue插入视频的2种方法小结
2019/04/02 Javascript
JS实现移动端双指缩放和旋转方法
2019/12/13 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
Vue实现背景更换颜色操作
2020/07/17 Javascript
[01:24]2014DOTA2 TI第二日 YYF表示这届谁赢都有可能
2014/07/11 DOTA
python中zip()方法应用实例分析
2016/04/16 Python
利用Python找出序列中出现最多的元素示例代码
2017/12/08 Python
python opencv 直方图反向投影的方法
2018/02/24 Python
用Python获取摄像头并实时控制人脸的实现示例
2019/07/11 Python
基于Python实现扑克牌面试题
2019/12/11 Python
Python要如何实现列表排序的几种方法
2020/02/21 Python
Python多线程threading join和守护线程setDeamon原理详解
2020/03/18 Python
使用Django实现把两个模型类的数据聚合在一起
2020/03/28 Python
一款纯css3实现的鼠标悬停动画按钮
2014/12/29 HTML / CSS
前端隐藏出边界内容的实现方法
2016/04/14 HTML / CSS
Canvas多边形绘制的实现方法
2019/08/05 HTML / CSS
Perricone MD裴礼康美国官网:抗衰老护肤品
2016/09/26 全球购物
用C语言实现文件读写操作
2013/10/27 面试题
2015年感恩节演讲稿(优选篇)
2015/03/20 职场文书
刑事上诉状(无罪)
2015/05/23 职场文书
身份证丢失证明
2015/06/19 职场文书
六一儿童节致辞
2015/07/31 职场文书
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
2021/05/10 HTML / CSS
Spring boot应用启动后首次访问很慢的解决方案
2021/06/23 Java/Android
win10双系统怎么删除一个系统?win10电脑有两个系统删除一个的操作方法
2022/07/15 数码科技