T-SQL与SQL Server数据库深度学习笔记
需积分: 12 164 浏览量
更新于2024-07-19
1
收藏 18.39MB DOCX 举报
"Tsql和sqlserver数据库知识笔记"
在学习T-SQL和SQL Server数据库时,掌握以下几个关键知识点至关重要:
1. **数据库分离与管理**:
- 用户数据库与系统数据库的分离是为了确保系统的稳定性和安全性,用户数据库存放应用程序数据,而系统数据库则存储SQL Server的元数据和系统信息。
- 文件分组(Filegroups)允许你将数据文件组织到不同的逻辑组,便于管理和扩展。
- 垂直分表(Partitioning)是根据列值对表进行划分,用于优化大型表的查询性能。
- 水平分表(Sharding)涉及将数据分散到多个物理表,通常用于分布式数据库系统,以处理大量并发和数据量。
2. **查询语句和条件表达式**:
- BETWEEN运算符用于检查一个值是否在指定范围内,例如`TraineeResult BETWEEN 0 AND 100`等效于`TraineeResult >= 0 AND TraineeResult <= 100`。
- SQL Server中的默认日期函数`getdate()`用于获取当前系统日期和时间。
3. **权限管理与角色**:
- 使用`sp_setapprole`系统存储过程可以激活特定的角色,例如`exec sp_setapprole 'myrole', '123'`会赋予用户'myrole'的角色权限。
4. **数据查询**:
- `SELECT * FROM Result WHERE TraineeNo <= 10000` 是一个基本的查询示例,用于获取TraineeNo小于或等于10000的所有记录。
- 当遇到无法查询的问题时,可能需要更改数据库所有者,例如`EXEC sp_changedbowner 'sa'`。
5. **数据库维护**:
- `DBCC DROPCLEANBUFFERS`命令清除缓冲池中的所有数据页,模拟从内存中移除数据,用于测试查询性能。
- `DBCC FREEPROCCACHE`清空存储过程的缓存,用于观察执行计划的影响。
6. **元数据查看**:
- `sp_helptext`存储过程用于查看对象的原始定义,如`Sp_helptext 'Borrow_Insert'`显示'Borrow_Insert'的定义代码。
7. **数据导入与导出**:
- Excel数据导入数据库时,需注意数据类型,特别是长文本数据应转化为正确的格式。
- 使用SQL Server Management Studio的“任务”功能可方便地导入和导出数据,确保正确设置源和目标表。
- 导入顺序遵循先导入基础表,再导入有外键依赖的表的规则。
8. **代码生成**:
- 可通过Visio的ER图生成SQL代码,安装VisioForwardEngineer插件来实现这一功能,尤其适用于生成数据库结构的SQL脚本。
这些知识点构成了SQL Server数据库开发的基础,通过深入理解和实践,可以有效地管理、查询和优化数据库系统。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-02-16 上传
2021-05-29 上传
2021-02-16 上传
2021-02-12 上传
点击了解资源详情
点击了解资源详情
heqingji
- 粉丝: 0
- 资源: 7
最新资源
- matlab拟合差值代码-DMFT:用于单身汉的DMFT代码的最终版本
- 人工智能导论,搜索大作业;2048AI.zip
- date-time-event:一个非常简单的程序包,用于在特定的DateTime触发事件
- 星空流程跟踪编制关联系统源代码
- LanguageCreator:一种自制玩具编程语言。 构造一个AST并验证作用域规则。 具有类型推断功能,支持函数和函数,具有构造函数的类(但无继承),while和for循环,ifelseifelse条件,异常,动态对象等
- My机器学习资料包!!!
- 人工智能导论课程设计-用强化学习玩FlappyBird.zip
- sipp.svn5.zip_Linux/Unix编程_Unix_Linux_
- barba:在您的网站页面之间创建麻烦,流畅和平滑的过渡
- cross-sell-prediction-heorku
- pwtweetar-aframe
- matlab拟合差值代码-teamtracking:团队追踪
- Save-Turtle-Prediction
- 万事俱备
- ms-mattention:关注、收藏插件
- flutter 搭建项目架构