1

目前我正在研究 c# .net,我需要使用 Excel 工作表中存在的数据来生成脚本(sql 插入脚本)。

更加具体,

如果excel工作表有三列

**column name** ColumName1, ColumName2, ColumName3 
**data like**   Value1,     Value2,     Value3

我需要编写代码来生成插入脚本,例如-

插入 [dbo].[TableName] ([ColumName1], [ColumName2], [ColumName3]) 值 ('Value1', 'Value2', 'Value3')

有任何想法吗 ?

4

3 回答 3

1

You would need to write a forumla for the final column for instance:

="insert into tblyourtablename (intmine, strval) values ("&B4&", N'"&C4&"'); set @intpane = scope_identity(); INSERT INTO tblpane (nameid_fk,strtext,bitmine,vbarmine) VALUES (@intpane ,N'"&D8&"' ,0 ,convert(varbinary,''));"

This should get your started

EDIT

Why do some SQL strings have an 'N' prefix? You may have seen Transact-SQL code that passes strings around using an N prefix. This denotes that the subsequent string is in Unicode (the N actually stands for National language character set). Which means that you are passing an NCHAR, NVARCHAR or NTEXT value, as opposed to CHAR, VARCHAR or TEXT. See Article #2354 for a comparison of these data types.

For further reading please view the following link

http://databases.aspfaq.com/general/why-do-some-sql-strings-have-an-n-prefix.html

于 2013-01-11T07:09:44.487 回答
0
var myConnection = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='c:\\Language_Batch1_OneClick.xls';Extended Properties=Excel 8.0;"); ;
var myCommand = new OleDbCommand();
var upCommand = new OleDbCommand();
int i = 0;
try
{

    string sql = null;
    string Value1 =null;
    string Value2=null;
    string Value3=null;
    myConnection.Open();
    myCommand.Connection = myConnection;
    sql = "select ColumName1,ColumName1from,ColumName3  [sheet-name]";
    myCommand.CommandText = sql;
    var dataReader = myCommand.ExecuteReader();
    {
      value1=dataReader["ColumName1"].ToString();
      value2=dataReader["ColumName2"].ToString();
      value3=dataReader["ColumName3"].ToString();

    string newQuery="INSERT [dbo].[TableName] ([ColumName1], [ColumName2], [ColumName3]) VALUES ('"+Value1+"', '"+Value2+"', '"+Value3+"')"
    }

}
于 2013-01-11T07:05:07.750 回答
0

读取excel并获取数据,然后生成插入脚本

于 2014-02-07T06:41:29.720 回答