全栈:如何操作在SQLserver里面CRUD(增删改查)
有两种方式创建数据库和数据表,一种是直接sql语句,一种是图形可视化手动。
一 直接sql语句
二 图形可视化操作
1.新建数据库:数据库->新建数据库
2.新建表
还要设置主键和唯一键(PRIMARY KEY和UNIQUE KEY)
类型和列都要改
类型改成唯一键:
列改成需要的列名:
我写的内容涉及到了create_time和update_time(需要特殊设置一下)
在 SQL Server 中实现类似 MySQL 的 DEFAULT CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP 功能,需要通过 SQL Server Management Studio (SSMS) 的图形界面进行以下操作:1. 设置 create_time 的默认值为当前时间(可视化操作)
打开 SSMS → 连接到数据库 → 展开数据库 → 展开"表"右键点击 [user] 表 → 选择"设计"在表设计器中,找到 create_time 列在下方"列属性"选项卡中 → 展开"常规"部分在"默认值或绑定"一栏中填写:(getdate())
https://i.imgur.com/1XwWz7P.png2. 设置 update_time 的自动更新(需要创建触发器)
SQL Server 没有直接的 ON UPDATE 语法,需通过触发器实现:
a.展开 [user] 表 → 右键"触发器"文件夹 → 选择"新建触发器"
b.替换触发器模板代码
窗口会默认显示模板代码(带 <Schema_Name> 等占位符),删除所有模板内容。
粘贴以下触发器代码(实现 update_time 自动更新):CREATE TRIGGER [dbo].[UpdateUserTime]
ON [dbo].[user]
AFTER UPDATE
AS
BEGINUPDATE [dbo].[user]SET update_time = GETDATE()FROM [dbo].[user]INNER JOIN inserted ON [user].id = inserted.id
ENDc.执行创建触发器
点击 SSMS 工具栏的 “执行” 按钮(或按 F5),提示 “命令已成功完成” 即创建成功。
把原来的代码替换成这个
3.对表的CRUD(增删改查)
Create(创建)
Read(读取)
Update(更新)
Delete(删除)
a.增加
INSERT INTO [user] (id,username, password, email, phone, create_time, update_time)
VALUES
(1,'admin', '123456', 'admin@example.com', '13800138000', GETDATE(), GETDATE()),
(2,'user1', '123456', 'user1@example.com', '13800138001', GETDATE(), GETDATE()),
(3,'user2', '123456', 'user2@example.com', '13800138002', GETDATE(), GETDATE()),
(4,'user3', '123456', 'user3@example.com', '13800138003', GETDATE(), GETDATE()),
(5,'user4', '123456', 'user4@example.com', '13800138004', GETDATE(), GETDATE());
b.删除
DELETE FROM [user]
WHERE id IN (1, 2, 3, 4, 5, 6, 7, 8);
c.修改
d.查找
注意,这里的SQLserver和mysql的sql语句语法是不一样的,查询需要把对应的表加一个中括号[user]
select * from [user];