
1、首先,使用Navicat for MySQL连接数据库并创建一个数据库。
2、接着点击查询,这里有两个查询,随便点击一个都可以。
3、既然是要执行SQL语句,所以我们要先新建一个查询窗体才得。
4、写一句SQL语句来演示啦。
5、写完练习的SQL语句,再点击运行按钮,左上方的绿色图标就是。
6、然后记得刷新一下表,在表上面单击右键即可刷新。
可以的 我这有个 *** 作excel 的例子 你可以参考下
这是一个完整的 excel *** 作类 ,以前的一个项目用到的 DataSetToExcel
using System;
using SystemWindowsForms;
using SystemData;
using SystemCollections;
using SystemIO;
using SystemDiagnostics;
namespace CHUmanagerMoonCakeCommon
{
/// <summary>
/// DataSetToExcel 的摘要说明。
/// </summary>
public class DataSetToExcel
{
private DateTime beforeTime; //Excel启动之前时间
private DateTime afterTime; //Excel启动之后时间
public DataSetToExcel()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 导出到Excel
/// </summary>
/// <param name="filename">为要保存的excel文件名</param>
///<param name="GridX">要打开的DataGrid</param>
/// <param name="excelname">excelname为excel表的标题</param>
public bool ExportToExcel(string filename,DataGrid GridX,string excelname)
{
if(GridX==null) return false;
string saveFileName="";
bool fileSaved=false;
SaveFileDialog saveDialog=new SaveFileDialog();
saveDialogDefaultExt ="xls";
saveDialogFilter="Excel文件|xls";
saveDialogFileName =filename;
saveDialogShowDialog();
saveFileName=saveDialogFileName;
if(saveFileNameIndexOf(":")<0) return false; //被点了取消
beforeTime = DateTimeNow;//Excel启动之前时间
ExcelApplication excel= new ExcelApplicationClass(); //启动Excel进程
afterTime = DateTimeNow;//Excel启动之后时间
Excel_Workbook xBk = excelWorkbooksAdd(true);
Excel_Worksheet xSt = (Excel_Worksheet)xBkActiveSheet;
ExcelRange excelCell=null;
try
{
//赋值对象
object[] objarr;
DataTable dtTest=new DataTable();;
int i,j;
int iRows,iCows;
int iVisable;
iVisable=0;
iCows=0;
ArrayList list=new ArrayList();
//如果绑定数据源是DataTable和DataSet,取得行数
if (GridXDataSource is SystemDataDataTable)
{
dtTest=(DataTable)GridXDataSource;
iRows=dtTestRowsCount;
}
else if(GridXDataSource is SystemDataDataSet)
{
DataSet ds=(DataSet)GridXDataSource;
dtTest=dsTables[0];
iRows=dtTestRowsCount;
}
else if (GridXDataSource is SystemDataDataView)
{
DataView dvTest=(DataView)GridXDataSource;
iRows=dvTestCount;
dtTest=dvTestTable;
}
//如果是集合取得行数
else
{
SystemCollectionsCollectionBase ColTest;
ColTest=(SystemCollectionsCollectionBase)GridXDataSource;
iRows=ColTestCount;
}
//添加表头
xStCells[1,1] = excelname;
//表头样式
excelCell=(ExcelRange)xStCells[1,1];
excelCellInteriorColorIndex = 15;
excelCellFontSize = 14;
excelCellFontName = "隶书";
excelCellFontBold = true;
excelCellHorizontalAlignment = ExcelXlHAlignxlHAlignCenter;
//如果有TableStyles则根据TableStyles取得(标题行)
if (GridXTableStylesCount>0)
{
listClear();
iCows=GridXTableStyles[0]GridColumnStylesCount;
for(i=0;i<iCows;i++)
{
if(GridXTableStyles[0]GridColumnStyles[i]Width>0)
{
iVisable++;
listAdd(GridXTableStyles[0]GridColumnStyles[i]HeaderText);
//获取字段样式
excelCell=(ExcelRange)xStCells[2,i+1];
excelCellFontBold = true;
}
}
objarr = new object[iVisable];
objarr=listToArray();
excelCell = xStget_Range(excelCells[2,1],excelCells[2,iVisable]);
excelCellValue2 = objarr;
//数据行
for(i=0;i<iRows;i++)
{
objarr = new object[iVisable];
listClear();
for(j=0;j<iCows;j++)
{
if(GridXTableStyles[0]GridColumnStyles[j]Width>0)
{
listAdd(GridX[i,j]ToString()Replace("\n",""));
}
}
if (listEquals(SystemDBNullValue))
{
break;
}
objarr=listToArray();
excelCell = xStget_Range(excelCells[i+3,1],excelCells[i+3,iVisable]);
excelCellValue2 = objarr;
}
}
else
{
iCows=dtTestColumnsCount;
for(i=0;i<iCows;i++)
{
listAdd(dtTestColumns[i]CaptionToString());
}
objarr = new object[iCows];
objarr=listToArray();
excelCell = xStget_Range(excelCells[2,1],excelCells[2,iCows]);
excelCellValue2 = objarr;
//数据行
for(i=0;i<iRows;i++)
{
objarr = new object[iCows];
listClear();
for(j=0;j<iCows;j++)
{
listAdd(GridX[i,j]ToString()Replace("\n",""));
}
if (listEquals(SystemDBNullValue))
{
break;
}
objarr=listToArray();
excelCell = xStget_Range(excelCells[i+3,1],excelCells[i+3,iCows]);
excelCellValue2 = objarr;
}
}
//合并单元格
ExcelRange rH = xStget_Range("A1",intToString(iCows)+"1");
rHMerge(0);
dtTestDispose();
if(saveFileName!="")
{
try
{
xBkSaved = true;
xBkSaveCopyAs(saveFileName);
fileSaved=true;
}
catch(Exception ex)
{
fileSaved=false;
MessageBoxShow("导出文件时出错,文件可能正被打开!\n"+exMessage);
}
}
else
{
fileSaved=false;
}
}
catch (SystemException e)
{
SystemWindowsFormsMessageBoxShow(eMessage);
}
finally
{
excelCell=null;
xBk=null;
xSt=null;
excel=null;
GCCollect();
KillExcelProcess();//强制结束Excel进程
}
return fileSaved;
}
/// <summary>
/// 导出到Excel
/// </summary>
/// <param name="filename">为要保存的excel文件名</param>
/// <param name="dt">dt为关联grid的DataTable</param>
/// <param name="excelname">excelname为excel表的标题</param>
public bool ExportToExcel(string filename,DataTable dt,string excelname)
{
if(dt==null) return false;
string saveFileName="";
bool fileSaved=false;
SaveFileDialog saveDialog=new SaveFileDialog();
saveDialogDefaultExt ="xls";
saveDialogFilter="Excel文件|xls";
saveDialogFileName =filename;
saveDialogShowDialog();
saveFileName=saveDialogFileName;
if(saveFileNameIndexOf(":")<0) return false; //被点了取消
beforeTime = DateTimeNow;//Excel启动之前时间
ExcelApplication xlApp=new ExcelApplication();
afterTime = DateTimeNow;//Excel启动之后时间
if(xlApp==null)
{
MessageBoxShow("无法创建Excel对象,可能您的机子未安装Excel");
return false;
}
ExcelWorkbooks workbooks=xlAppWorkbooks;
ExcelWorkbook workbook=workbooksAdd(ExcelXlWBATemplatexlWBATWorksheet);
ExcelWorksheet worksheet=(ExcelWorksheet)workbookWorksheets[1];//取得sheet1
ExcelRange range;
long totalCount=dtRowsCount;
long rowRead=0;
float percent=0;
//合并单元格
ExcelRange rH = worksheetget_Range("A1",intToString(dtColumnsCount)+"1");
rHMerge(0);
//写如标题
worksheetCells[1,1]=excelname;
//标题样式
range=(ExcelRange)worksheetCells[1,1];
rangeInteriorColorIndex = 15;
rangeFontSize = 14;
rangeFontName = "隶书";
rangeFontBold = true;
rangeHorizontalAlignment = ExcelXlHAlignxlHAlignCenter;
//写入字段
for(int i=0;i<dtColumnsCount;i++)
{
worksheetCells[2,i+1]=dtColumns[i]ColumnName;
//获取字段样式
range=(ExcelRange)worksheetCells[2,i+1];
rangeFontBold = true;
}
//写入数值
for(int r=0;r<dtRowsCount;r++)
{
for(int i=0;i<dtColumnsCount;i++)
{
worksheetCells[r+3,i+1]=dtRows[r][i];
}
rowRead++;
percent=((float)(100rowRead))/totalCount;
SystemWindowsForms ApplicationDoEvents();
}
range=worksheetget_Range(worksheetCells[2,1],worksheetCells[dtRowsCount+2,dtColumnsCount]);
rangeBorderAround(ExcelXlLineStylexlContinuous,ExcelXlBorderWeightxlThin,ExcelXlColorIndexxlColorIndexAutomatic,null);
rangeBorders[ExcelXlBordersIndexxlInsideHorizontal]ColorIndex = ExcelXlColorIndexxlColorIndexAutomatic;
rangeBorders[ExcelXlBordersIndexxlInsideHorizontal]LineStyle =ExcelXlLineStylexlContinuous;
rangeBorders[ExcelXlBordersIndexxlInsideHorizontal]Weight =ExcelXlBorderWeightxlThin;
if(dtColumnsCount>1)
{
rangeBorders[ExcelXlBordersIndexxlInsideVertical]ColorIndex =ExcelXlColorIndexxlColorIndexAutomatic;
rangeBorders[ExcelXlBordersIndexxlInsideVertical]LineStyle = ExcelXlLineStylexlContinuous;
rangeBorders[ExcelXlBordersIndexxlInsideVertical]Weight = ExcelXlBorderWeightxlThin;
}
if(saveFileName!="")
{
try
{
workbookSaved =true;
workbookSaveCopyAs(saveFileName);
fileSaved=true;
}
catch(Exception ex)
{
fileSaved=false;
MessageBoxShow("导出文件时出错,文件可能正被打开!\n"+exMessage);
}
}
else
{
fileSaved=false;
}
xlAppQuit();
GCCollect();//强行销毁,经测试这句话并没有结束Excel进程
KillExcelProcess();//强制结束进程
//用Excel打开文件
//if(fileSaved&&FileExists(saveFileName))SystemDiagnosticsProcessStart(saveFileName);
return fileSaved;
}
/// <summary>
/// 数字转字符。如:1转A 2转B
/// </summary>
/// <param name="num">要转换的数字,最大为26,最小为1</param>
/// <returns></returns>
private string intToString(int num)
{
if (num>26 || num<1)
{
return null;
}
string[] str = new string[26];
str[0] = "A";
str[1] = "B";
str[2] = "C";
str[3] = "D";
str[4] = "E";
str[5] = "F";
str[6] = "G";
str[7] = "H";
str[8] = "I";
str[9] = "J";
str[10] = "K";
str[11] = "L";
str[12] = "M";
str[13] = "N";
str[14] = "O";
str[15] = "P";
str[16] = "Q";
str[17] = "R";
str[18] = "S";
str[19] = "T";
str[20] = "U";
str[21] = "V";
str[22] = "W";
str[23] = "S";
str[24] = "Y";
str[25] = "Z";
return str[num-1];
}
/// <summary>
/// 结束Excel进程
/// </summary>
private void KillExcelProcess()
{
Process[] myProcesses;
DateTime startTime;
myProcesses = ProcessGetProcessesByName("Excel");
//得不到Excel进程ID,暂时只能判断进程启动时间
foreach(Process myProcess in myProcesses)
{
startTime = myProcessStartTime;
if(startTime > beforeTime && startTime < afterTime)
{
myProcessKill();
}
}
}
}
}
看完别忘记了加分啊!
以上就是关于我有多条sql的更新语句,怎么用一个循环语句执行一次更新整一张数据表的数据全部的内容,包括:我有多条sql的更新语句,怎么用一个循环语句执行一次更新整一张数据表的数据、C#能不能像 *** 作SQL数据库那样使用sql语句对excel进行读取更新等 *** 作、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)