●数据库
文章平均质量分 67
独孤文彬
人生的转折从大米时代开始
展开
-
vb.net如何编写高效率的SQLHelper——(二)代码实战
上一篇博客:《vb.net如何编写高效率的SqlHelper——(一)基础篇》 咱们谈到了很多关系ADO.net的基础知识,那些是看懂本篇文章的前提。所以童鞋们有必要好好看看哦。 本篇选取了最常用的几个方法,而且尽可能的简单化,灵活化(用到了函数重载和读取配置文件) 好了,废话不多说,直接上代码。'************************************************原创 2015-05-27 09:46:36 · 2722 阅读 · 24 评论 -
项目实战——sqlserver 使用With as 提高sql语句的可维护性和运行效率
所谓的共用表达式,有没有点像一般编程语言中的全局常量呢?为什么是常量?因为,在sql语句中,一经定义,无法再次进行修改,只能调用。原创 2016-07-24 20:34:37 · 1584 阅读 · 21 评论 -
sql代码重构—— 创建自定义函数(二)
UDF 可以用于多种情况,以使代码具有更好的可维护性、可重用性和更少的复杂性。当 T-SQL 代码的相同段在几个地方(可能由几个存储过程和批 SQL 语句)使用时,这会非常有用。例如,假定一个应用程序中的几个部分都需要查找产品是否必须重新订购。在每个需要此操作的地方,代码可以检查重新订购等级,并将它与库存量加订购量的和相比较。然而,因为这个代码在几个地方用到,所以可以改为使用 UDF 以减少代码块,并使得万一需要更改时维护函数更加容易。原创 2016-07-14 08:54:34 · 929 阅读 · 13 评论 -
sql代码重构—— 创建自定义函数(三)——自定义函数和存储过程的对比
存储过程: 可以使得对数据库的管理、以及显示关于数据库及其用户信息的工作容易得多。存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单个或多个结果集以及返回值。原创 2016-07-17 17:07:18 · 1040 阅读 · 16 评论 -
sqlserver——你真的懂你写的Sql语句么?
sql语句每一步的执行,都返回一个虚拟表。根据子句的条件,不断对返回的虚拟表进行修改,以期返回最终用户需要的结果。如无必要,不要使用order by ,这样会增加开销。原创 2016-08-07 17:32:35 · 747 阅读 · 19 评论 -
占位……sqlserver——实战经验小结(常用函数+数据库排序规则定义)
引言:在最近一段时间的工作中,基本上就和数据库杠上了。各种sql语句,各种表关系分析。几乎将业务逻辑都写到了sql查询代码中。小结了一下用到的一些小工具(函数),以及遇到的一些问题。希望对大家以后有帮助。问题: 1、无法解决 equal to 操作中 "Chinese_PRC_BIN" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。解决方法: 方案1、修改原创 2016-08-21 20:14:46 · 866 阅读 · 21 评论 -
SQL——回头看,原来“事务”在这里!!!
2年过后,实践+工作。层多次遇到和听到事务的概念。不经想起了,当初看的那本sql入门经典。再次翻看。收货巨多!今天来聊聊数据库的事务吧。 所谓不谋全局者不足谋一域,不谋万世者不足某一时。让咱先上一张导图吧。 好吧,是有点看不清的感觉。 下面是思维导图的简易版。一:背景解决数据更新带来的冲突问题。事务四个特性持久性结束时,必须正确保存数据,不管出现什么特殊、意外情况 断电、设备失效…原创 2016-09-27 15:20:46 · 671 阅读 · 26 评论 -
MySQL5.7性能优化系列(二)——SQL语句优化(4)——使用合并、物化策略优化派生表、视图引用
优化器可以使用两种策略处理派生表(FROM子句中的子查询)引用:将派生表合并到外部查询块中将派生表物化为内部临时表优化器使用相同的策略来处理视图引用。示例1:SELECT * FROM (SELECT * FROM t1) AS derived_t1;通过合并,该查询的执行类似于:SELECT * FROM t1;示例2:SELECT * FROM t1 JOIN (SELECT t2.f翻译 2017-08-08 10:00:13 · 1363 阅读 · 5 评论 -
MySQL5.7性能优化系列(二)——SQL语句优化(2)——子查询-派生表-视图--概述
章节内容:使用Semi-join连接优化子查询、派生表、视图使用Materialization优化子查询优化派生表、视图使用Exist 策略优化子查询概述in或者any子查询MySQL查询优化器具有不同的策略来评估子查询。对于IN(或= ANY)子查询,优化器具有以下选择:Semi-join 半连接策略Materialization物化策略EXISTS 策略not in (<>或者翻译 2017-08-02 22:11:59 · 1432 阅读 · 3 评论 -
MySQL5.7性能优化系列(二)——SQL语句优化(2)——使用 Semi-Join半连接变换优化子查询,派生表和视图
优化器使用半连接策略来改进子查询执行,如本节所述。对于两个表之间的内部连接,连接从一个表返回一行多于另一个表中的匹配项。但是对于一些问题,唯一重要的信息是是否有匹配,而不是匹配的数量假设有一个名为class和roster的表分别列出课程表和课程名单(每个班级的学生)。要列出实际注册学生的课程,您可以使用此连接:SELECT class.class_num, class.class_nameFROM翻译 2017-08-05 09:18:11 · 1229 阅读 · 1 评论 -
sql代码重构——使用自定义函数(一)
(UDF) 是准备好的代码片段,它可以接受参数,处理逻辑,然后返回某些数据。其实和众多其他编程语言里的函数基本是一个道理。原创 2016-07-10 17:18:18 · 1409 阅读 · 11 评论 -
SQL系列总结——基础篇(一)
数据库与表、列的关系其实就像是一个Excel工作薄(workbook)与Excel表格(sheet)以及表格中的列的关系一样。关系数据库中最基本的对象有3个:表、列、用户 基本的概念名词理解: 表,就相当于Excel中的一个sheet, 当我们创建一个表时,为了方便查找和理解,在命名时应本着简短明了的原则。例如:表名(Student)表示学生的信息,非常直观简短。 列原创 2014-06-06 19:34:19 · 1304 阅读 · 16 评论 -
学生信息管理系统总结——系统设计分析
无论是做什么事情,首先要学会一件事,那就是要把握宏观,树立全局意识!不谋全局者不足某一域,不谋万世者不足以谋一时!对于学生信息管理系,先让我们做个大概的宏观导图。 在这个系统中,大概分为两大块内容,一是对于系统的管理、二是对于用户数据的管理。 系统管理中,主要涉及到的是用户名,及密码的管理,如:用户名、密码的添加、修改、删除等。当然,老师给我们的这个材料比较的简单的,并原创 2014-08-05 21:11:36 · 5351 阅读 · 10 评论 -
《从LRS项目重构来看“数据类型”——(第一话)DataTable转换泛型集合出现的类型冲突》
说到数据类型,不得不先说数据这档子事儿…… 数据,是可以被计算机处理的信息,是程序代码的重要组成部分,而我们的数据首先是通过计算机的文件系统存储在存储介质上,操作系统通过启动外围设备来读取磁盘或者磁带中的数据,当然我们的计算机要处理这些数据必须得先通过将这些数据调到内存中来,通过内存再调入CPU最终进行计算和处理。 众所周知,内存资源对于计算机而言是非常宝贵的,为了提高咱们对数据的运算处理能力,原创 2015-05-12 20:21:14 · 1048 阅读 · 19 评论 -
SQL视频总结
难以忘怀浙大耿建玲老师的数据库视频,学习过程原创 2014-08-18 20:48:46 · 1042 阅读 · 20 评论 -
学生信息管理系统总结——数据库的访问方式
在vb中我们有以下五种方式可以实现对数据库的访问。 任何对数据库的访问都是建立在连接数据库的基础上!在我们的连接字符串中,须指定正确的数据提供者、数据库、数据库服务器、访问数据库身份验证方式以及用户名、口令等信息。1、ADO对象直接访问:(注意:使用前请建立ADO引用) Step1 :建立连接(有两种办法)原创 2014-08-12 20:39:11 · 1427 阅读 · 6 评论 -
学习信息管理系统总结——数据库的连接和访问(一)
首先我们来了解几个易混的概念,以及他们之间的关系。 数据库:说的简单点就是一个存放数据的大仓库,一个客观存在实体! 数据源:它是一个变量,我们定义一个数据源,可以随时去修改它指向不同的数据库。像是一个指针。在数据源中存储了所有建立数据库连接的信息。就像通过指定文件名称可以在文件系统中找到文件一样,通过提供正确的数据源名称——DSN(它是包含了有关某个特定数据原创 2014-08-07 19:44:24 · 1905 阅读 · 14 评论 -
SQL系列总结——基础篇(三)
之前的两篇文章SQL系列总结:《基础篇(一)》,《基础篇(二)》已经介绍了一些基本的数据库知识、现在让我们来从头开始构建一个数据库、到管理数据库和对象。架构开始! 1、创建数据库! 现代的数据库系统都配备了图形化的工具、所以这对于我们来说并不是什么难事,不过我们现在学习的是SQL!那么用SQL语句怎么创建数据库呢? CREATE DATABA原创 2014-06-22 20:40:44 · 1119 阅读 · 10 评论 -
SQL系列总结——基础篇(二)
表达式:是符号与运算符的组合,一个常量,变量、列或标量函数就是一个简单的表达式,复杂的表达式由两个或更多的简单表达式通过运算符连接起来组成。运算符同样的遵循优先级的原则。作用,让SQL的查询操作更灵活。 内置函数:提高sQL操纵信息的能力,同时具有了更大的灵活性。分类、1、聚集函数(分组函数);2、算数函数;3、时间日期函数;4、字符函数;5、转换函数,例如:to_char()将数原创 2014-06-15 10:30:27 · 1244 阅读 · 9 评论 -
vb.net如何编写高效率的SQLHelper(一)基础篇
基础知识储备:1、什么是ADO.NET? MSDN 官方答:ADO.NET 是一组向 .NET Framework 程序员公开数据访问服务的类。ADO.NET 类位于 System.Data.dll 中,并与 System.Xml.dll 中的 XML 类集成。ADO.NET 提供对诸如 SQL Server 和 XML 这样的数据源以及通过 OLE DB 和 ODBC 公开的原创 2015-04-30 10:29:01 · 2267 阅读 · 30 评论 -
自考总结——数据库原理第三章
导图思路:整个第三章讲的关系模式设计理论,是设计好数据库的关键,通过模式规范化来解决数据的冗余度和一致性问题。所谓的冗余,是指一个数据被多次存储,而且这将导致操作异常(常见的有:插入、删除、修改的异常)。那么这些问题,又是由什么导致的呢?第一、数据依赖,包括多值依赖、函数依赖。第二:在设计ER模型的时候的不合理所导致,比如多值属性的处理不当。然后我们解决这些问题有一个总的原则:那就是,有冗余就分解原创 2014-09-18 14:50:00 · 1641 阅读 · 48 评论 -
学生信息管理系统总结——student数据库中表关系分析
说到关系,那就不得不提两个东西:1、E—R图,也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型2、关系模式:是对关系的描述 关系模式可以用五元组形式表示:R(U,D,Dom,F),其中R:表示关系名,U:表示属性集合,D表示属性域(来自那个域),Dom: 属性向域的映像集合,F:表示函数依原创 2014-08-05 21:17:32 · 8992 阅读 · 8 评论 -
MySQL5.7性能优化系列(二)——SQL语句优化(3)——使用物化策略优化子查询
优化器使用物化策略(Materialization)来实现更有效的子查询处理。通过生成子查询结果作为临时表,通常在内存中,实现加速查询执行。 MySQL首次需要子查询结果,将该结果实现为临时表。任何随后的结果都需要,MySQL再次指向临时表。优化器可以使用散列索引对表进行索引,以使查找更加快速和便宜。该索引是唯一的,它消除了重复,并使表格更小。子查询实现可能时使用内存中临时表,如果表变得太大,则返回翻译 2017-08-06 10:49:28 · 1035 阅读 · 2 评论