C#实现SQL查询分析器(C# Visual SQL Query Designer)
C#实现SQL查询分析器(C# Visual SQL Query Designer)
IntroductionThis article describes the implementation of a The designer is similar to the ones found in database tools such as the SQL Server Management Studio and Microsoft Access. It allows end users to build SQL queries with support for sorting, grouping, and filtering. The main limitation of the 介绍 本文描述了QueryDesignerDialog类的实现, 通过OLEDB连接服务器后允许用户创建SQL查询语句. 该工具类似SQL Server Management Studio和Microsoft Access中的设计器. 甚至允许用户建立支持排序,分组和过滤的SQL语句. QueryDesignerDialog是一个单向的工具, 主要限制是该类不能分析现有的SQL语句。 可以创建新的SQL查询但不能修改现有的SQL查询。 另外,它仅支持通过OLEDB连接的SQL Server和Access数据库.将来的版本会解决这些问题.
BackgroundThe first version of the 背景 QueryDesignerDialog的第一个版本是为报表设计器应用程序(Report Designer application)开发的。我找不到一个能实现上述功能的工具(免费或商业化). 所以我决定自己开发,在此之后,该工具在其它程序中也有些应用,我希望它能帮助一些人.
Using the CodeThe
The code snippet below shows how the 使用方法 QueryDesignerDialog 有两个主要属性: ConnectionString: 获取或设置OLEDB连接字符串,通过建立的SQL用来检索的表,视图,字段,关联的数据结构. SelectStatement: 获取或设置用户输入的SQL语句,目前是只读属性,暂不能修改数据库中现有的SQL语句,也许将来的版本会实现此功能。 下面的代码片段展示QueryDesignerDialog典型应用。只需分配一个连接字符串然并显示对话框,然后读取你输入的SQL:
// create the QueryDesignerDialog using (var dlg = new QueryDesignerDialog()) { // set the connection string dlg.ConnectionString = ConnectionString; // show the dialog if (dlg.ShowDialog(this) == DialogResult.OK) { // get the new Sql query and do something with it string newSql = dlg.SelectStatement; DoSomething(newSql); } }
// pick a new connection void _btnConnPicker_Click(object sender, EventArgs e) { // release mouse capture to avoid wait cursor _toolStrip.Capture = false; // get starting connection string // (if empty or no provider, start with SQL source as default) string connString = _cmbConnString.Text; if (string.IsNullOrEmpty(connString) || connString.IndexOf("provider=", StringComparison.OrdinalIgnoreCase) < 0) { connString = "Provider=SQLOLEDB.1;"; } // let user change it ConnectionString = OleDbConnString.EditConnectionString(this, connString); } www.csframework.com 翻译 原文转自codeproject,转载请注明出处. 原文:http://www.codeproject.com/KB/database/QueryDesigner.aspx
参考文档:
With语法实现SQL树结构数据查询(转) [原创]C# Access 模糊查询SQL语句 [下载]超好用高效率SQL客户端查询分析器(sqldbx) C# WebApi将查询字符串RequestUri.Query解析转换为Hashtable 企业ERP进销存财务系统开发框架及开发平台(Winform+C#.NET+SQLServer) C# 更新SQL数据发生错误:不能创建大小为 8133 的行,该大小大于所允许的最大行大小 8060。 C#.NET 处理SQL特殊数据类型Geography/Geometry/Hierarchyid/XML C#.NET给DataTable日期类型的列赋值报错:所需类型是 MySqlDateTime,值类型与列类型不匹配 C#.NET 查询MYSQL报错:值类型与列类型不匹配不能在列中存储<0001-01-01 00:00:00>。所需类型是MySqlDateTime C# 动态组合SQL脚本LIKE语句及查询参数防SQL注入攻击 C#.NET Winform轻量级UI框架软件快速开发平台(MySQL, Oracle, MsSQL) VS运行ASP.NET网站应用程序:“/”应用程序中的服务器错误。分析器错误,未能加载类型"XXX.Global"。 C# C/S架构软件自动升级程序Winform+多数据库(MySQL,MsSQL,Oracle) C#源码-DTcmsV2.0正式版MSSQL源码-源码下载 C#源码-DTcms正式版MSSQL v2.1源码-源码下载
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |