有没有人可以帮我解决这道题,因为我不会数据导入?急!!!!!!!!

lewure 2009-04-11 09:48:26
要求如下:
1、用Excel建立一个如下格式的表格(表1),以下表格中数据在Excel中均为数值类型,“date”为日期类型。
No week date time1 time2 time3 time4
1 6 2008-09-13 0 0 30 0
2 6 2008-09-14 0 10 0 0
.........
2、用Sql建立一个格式如下的表(表2):
字段名 类型 长度
No char 2
date char 10
week char 1
time_x char 10
data num 2
3、编写一个程序:
(1)将表1中的数据导入到表2数据中,将time1到time4的数据由横排转成坚排(字段转记录)
(2)程序需要有显示结果的界面,并且需要的按钮供删除数据及导入数据。
(3)导入的过程中,请效验日期与星期是否正确,如不正确请给出提示。
(4)并可统计表中各个time的数据。
(5)数据导入后的数据表,格式如下:
no date week time_x data
1 2008-09-13 6 time1 0
1 2008-09-13 6 time2 0
2 2008-09-13 7 time1 0
2 2008-09-13 6 time2 0
...全文
94 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
only_lonely 2009-04-12
  • 打赏
  • 举报
回复
还真有好心人代做家庭作业呀!
快40的码农 2009-04-11
  • 打赏
  • 举报
回复
public void InsetDataFromExcel()
{
openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "Excel files(*.xls)|*.xls";
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
FileInfo fileInfo = new FileInfo(openFileDialog.FileName);
string filePath = fileInfo.FullName;
string connExcel = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties=Excel 8.0";

try
{
OleDbConnection oleDbConnection = new OleDbConnection(connExcel);
oleDbConnection.Open();

SqlConnection sqlConnection1 = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnString"].ToString());

//获取excel表
DataTable dataTable = oleDbConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
//获取sheet名,其中[0][1]...[N]: 按名称排列的表单元素
string tableName = dataTable.Rows[0][2].ToString().Trim();
tableName = "[" + tableName.Replace("'", "") + "]";
//利用SQL语句从Excel文件里获取数据
//string query = "SELECT classDate,classPlace,classTeacher,classTitle,classID FROM " + tableName;
string query = "SELECT 日期,开课城市,讲师,课程名称,持续时间 FROM " + tableName;
dataSet = new DataSet();
//OleDbCommand oleCommand = new OleDbCommand(query, oleDbConnection);
//OleDbDataAdapter oleAdapter = new OleDbDataAdapter(oleCommand);
OleDbDataAdapter oleAdapter = new OleDbDataAdapter(query, connExcel);

oleAdapter.Fill(dataSet, "gch_Class_Info");
//dataGrid1.DataSource = dataSet;
//dataGrid1.DataMember = tableName;
dataGrid1.SetDataBinding(dataSet, "gch_Class_Info");
//从excel文件获得数据后,插入记录到SQL Server的数据表
DataTable dataTable1 = new DataTable();

SqlDataAdapter sqlDA1 = new SqlDataAdapter(@"SELECT classID, classDate,
classPlace, classTeacher, classTitle, durativeDate FROM gch_Class_Info", sqlConnection1);

SqlCommandBuilder sqlCB1 = new SqlCommandBuilder(sqlDA1);

sqlDA1.Fill(dataTable1);
foreach (DataRow dataRow in dataSet.Tables["gch_Class_Info"].Rows)
{
DataRow dataRow1 = dataTable1.NewRow();

dataRow1["classDate"] = dataRow["日期"];
dataRow1["classPlace"] = dataRow["开课城市"];
dataRow1["classTeacher"] = dataRow["讲师"];
dataRow1["classTitle"] = dataRow["课程名称"];
dataRow1["durativeDate"] = dataRow["持续时间"];
dataTable1.Rows.Add(dataRow1);
}
Console.WriteLine("新插入 " + dataTable1.Rows.Count.ToString() + " 条记录");
sqlDA1.Update(dataTable1);

oleDbConnection.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
tsguoheng86 2009-04-11
  • 打赏
  • 举报
回复
IT视频教程网: http://store.taobao.com/shop/view_shop.htm?asker=wangwang&shop_nick=tsguoheng86_2008 各类视频教程~

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧