mssql
xzxmustwin
踽踽独行
展开
-
数据库三范式
前提:关系型数据库 三大范式1. 第一范式(1NF)关系中的每个属性必须是不可再分的原子项,不能是属性组合。比如数据库中有一个地址的字段,其中某一行存的值为江苏省常州市天宁区XXX公寓,但经常要单独取这个字段中天宁区这个值,那么这个表就不满足第一范式。应把地址拆分为省份,城市,辖区,详细地址等。2. 第二范式(2NF)在第一范式的基础上,确保每列原创 2018-01-10 16:19:59 · 343 阅读 · 0 评论 -
【SQLSERVER】游标嵌套使用
需求:需要遍历一组物料,找到每个物料今年采购过的供应商信息 并做后续查询。--游标遍历获取每个物料的对应供应商,以键值对形式保存在临时表#temp2中IF object_id('tempdb..#temp2') is not null DROP TABLE #temp2CREATE TABLE #temp2( FitemID int, FSupplierID ...原创 2019-02-26 11:25:41 · 2985 阅读 · 0 评论 -
动态SQL 满足不固定的列查询(列的数量名称不固定 或 列的名称不固定两种情况)
需求:完成每月的办公用品查询功能。每当有一个新人在系统中采购办公用品,则增加已ta名字为一列的采购清单,并计算出合计金额数量。PS:之前做的,现在有空整理出来。问题难点:新增的人数,姓名等不固定,导致查询结果集列不确定。解决关键点:利用动态SQL,先用CTE表达式遍历出所有新增的人员姓名作为临时表,再将每个姓名作为列显示出来。USE [fanruan]GO/****** O...原创 2019-03-19 16:13:31 · 2101 阅读 · 0 评论 -
[牛客网数据库SQL实战] 第二题 的一些想法
题目描述查找入职员工时间排名倒数第三的员工所有信息表结构如下:CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NULL,`last_name` varchar(16) NOT NULL,`gender` char...原创 2019-04-14 09:43:13 · 196 阅读 · 1 评论 -
关于锁的基础知识
为什么需要锁?当多个用户同时对数据库的并发操作时会带来数据不一致的问题1.丢失更新AB两个用户同时读取同一个数据并进行修改,其中一个用户修改的结果破坏了两一个用户修改的结果2.脏读A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B用户得到的数据就与数据库内的数据就不一致3.不可重复读A用户读取数据,随后B用...原创 2019-05-23 23:04:09 · 395 阅读 · 0 评论