数据库运行流程
索引Index
一般where后面都有用id列来查询。
drop index 表名.索引名
临时表
-- 储存建立 ALTER PROC TestTmp AS BEGIN CREATE TABLE #tmptable ( NAME NVARCHAR(10), age INT ) INSERT INTO #tmptable VALUES ('a',1) INSERT INTO #tmptable VALUES ('b',1) INSERT INTO #tmptable VALUES ('c',1) END -- 储存过程执行 EXEC TestTmp -- 查询 SELECT * FROM #tmptable
如果用##tmptable,另用其余表就可以访问。
inserted表与deleted表
各张表的数据是受sql语句的条数影响的。
一条语句影响多行,和多项语句影响多行。
前者触发一次触发器,表里面有多行数据。
后者有多少条语句,就触发多少次触发器,然后就返回多少条结果集。
update实际上可以理解为一个先把原来的数据删除,然后在重新新增一行的一个操作,所以在里面我们输出inserted和deleted都是可以的。
INSERT INTO dbo.Classes OUTPUT INSERTED.id VALUES ('二十期',2000) DELETE FROM dbo.Classes OUTPUT DELETED.id WHERE id = 55 UPDATE dbo.Classes SET name='aaa' OUTPUT INSERTED.id WHERE id =49 UPDATE dbo.Classes SET name ='aaaa' OUTPUT DELETED.id WHERE id = 51
三层
三层示意图
三层解释
UI----------------------页面层
DAL-------------------数据访问层
BLL--------------------业务逻辑层
Model -----------------实体类
分析