SqlExcel使用文档及源码昨天帮朋友做了个小工具,以完成多表连接处理一些数据。今天下班后又做了份使用文档,不知友能看懂否?现将使用文档及源码发布如下,以供有同样需求的朋友下载。
使用文档一、增、改、查、删 1、增(向sheet中插入数据):INSERT INTO [Employee$](EmployeeId,EmployeeName,BranchId) VALUES('YG2014120001','韩兆新','BM20141201');
执行Sql前:
执行Sql后:
2、改(更新sheet中的数据):UPDATE [Employee$] SET BranchId = 'BM20141202';
执行Sql前:
执行Sql后:
3、查(在sheet中查询数据):SELECT EmployeeId,EmployeeName,BranchId FROM [Employee$];
4、删(从sheet中删除数据):
显然不支持!
二、WHERE:(WHERE在修改、查询中的应用)1、修改:UPDATE [Employee$] SET EmployeeID=null,EmployeeName=null,BranchId=null WHERE EmployeeID='YG2014120003';
执行Sql前:
执行Sql后:
2、查询:SELECT EmployeeId,EmployeeName,BranchId FROM [Employee$] WHERE EmployeeID = 'YG2014120002';
三、LIKE与通配符SELECT * FROM [Employee$] WHERE EmployeeID LIKE 'YG201412%';
1、*:所有列的名称;
2、%:通配n个字符;
3、_:通配1个字符。
四、排序(ORDER BY)1、升序:(ASC)可省略;
2、降序:(DSEC)。
示例1:(升序排序)
SELECT * FROM [Employee$] ORDER BY EmployeeId DESC;
示例2:(降序排序)
SELECT * FROM [Employee$] ORDER BY EmployeeId DESC;
示例3:(升序排序简写)
SELECT * FROM [Employee$] ORDER BY EmployeeId;
五、多sheet连接先建立两个用于演示的sheet:
Characters:
ID
Character
1
内向
2
外向
3
中性性格
Colors:
ID
Color
1
绿色
2
红色
4
蓝色
1、内连接:内连接(JOIN 或 INNER JOIN):内连接取交集
示意图:
SELECT * FROM [characters$] INNER JOIN [colors$] ON [characters$].ID = [colors$].ID;
2、外连接:外连接可分为:左连接、右连接、完全外连接。
(1)左连接(LEFT JOIN):示意图:
SELECT * FROM [characters$] LEFT JOIN [colors$] ON [characters$].ID = [colors$].ID;
结果:
(2)右连接(RIGHT JOIN):示意图:
SELECT * FROM [characters$] RIGHT JOIN [colors$] ON [characters$].ID = [colors$].ID;
结果:
(3)完全外连接:示意图:
SELECT * FROM [characters$] LEFT JOIN [colors$] ON [characters$].ID = [colors$].ID
UNION
SELECT * FROM [characters$] RIGHT JOIN [colors$] ON [characters$].ID = [colors$].ID;
结果:
3、交叉连接( CROSS JOIN ):交叉连接产生连接所涉及的表的笛卡尔积。
SELECT * FROM [characters$],[colors$];
结果:
4、补充:1、如下可获取内连接结果:SELECT * FROM [characters$],[colors$] WHERE [characters$].ID = [colors$].ID;
2、如下可获取交叉连接结果:SELECT * FROM [characters$],[colors$];
源码:PRogram.cs
using System;
using System.IO;
using System.Windows.Forms;
namespace SqlExcel
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Sunisoft.IrisSkin.SkinEngine skinEngine = new Sunisoft.IrisSkin.SkinEngine();
string skinPath = application.StartupPath + Path.DirectorySeparatorChar + "skin" + Path.DirectorySeparatorChar + "skin.ssk";
skinEngine.SkinFile = skinPath;
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
}
}
MainForm.cs
using System;
using System.Data;
using System.Data.Common;
using System.Drawing;
using System.Windows.Forms;
namespace SqlExcel
{