2013-08-17 121 views
1

我遇到了问题我是.net应用程序的普通开发人员,因为我之前在PHP中工作。通过ODBC将数据表直接插入到Postgre数据库

我想直接通过ODBC在.NET语言中插入填充数据表,以数据库为C#

谁能帮我做这个。

谢谢你这么多

if (_DataTable1.Rows.Count > 0) 
     { 
      int j=0; 
      for(int i =0 ; i < _DataTable1.Rows.Count ; i ++){     
       query = "Select * from Cards where ecode='" + _DataTable1.Rows[i]["ecode"] + "'"; 
       _DataTable2 = CentralConn.Select(query); 
       if (_DataTable2.Rows.Count > 0) 
       { 
        _DataTableUpdate.Rows.Add(DUpdateRow); 
        foreach (string name in Enum.GetNames(typeof(LocalToCentralFields))) 
        { 
         _DataTableUpdate.Rows[j][name] = _DataTable1.Rows[i][name]; 
        } 
        j++; 
       } 
       else { 
        _DataTableInsert.Rows.Add(DInsertRow); 
        foreach (string name in Enum.GetNames(typeof(LocalToCentralFields))) 
        { 
         _DataTableInsert.Rows[j][name] = _DataTable1.Rows[i][name]; 
        } 
        j++; 
       } 


      } 

CentralConn.TransactionInsertion(_DataTableInsert);对于TransactionInsertion

public void TransactionInsertion(DataTable DT,string TableName) 
    { 

     OdbcCommand Command = connection.CreateCommand(); 
     Command.CommandText = "Insert"; 
     Transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted); 

     OdbcDataAdapter Adapter = new OdbcDataAdapter(); 
     Adapter.InsertCommand = new OdbcCommand(); 



    } 

我困在这里

//代码一点点做什么..请指导

回答

1

看一看.Net Data Provider for Postgresql

,更具体的功能

// Setups the insert command. 
public void insertCmd() 
{ 
    string insertQuery = "INSERT INTO npdata VALUES (@key, @ndata)"; 
    NpAdapter.InsertCommand = new NpgsqlCommand(insertQuery, conn); 

    NpParam = NpAdapter.InsertCommand.Parameters.Add("@key", NpgsqlTypes.NpgsqlDbType.Text); 
    NpParam.SourceColumn = "key"; 
    NpParam.SourceVersion = DataRowVersion.Current; 

    NpParam = NpAdapter.InsertCommand.Parameters.Add("@ndata", NpgsqlTypes.NpgsqlDbType.Bigint); 
    NpParam.SourceVersion = DataRowVersion.Current; 
    NpParam.SourceColumn = "ndata"; 

} 
+0

我工作的应用程序是用vb6编写的,它的目的是应用程序是将不同门上生成的电子卡同步到中央数据库。我用.NET 4.0重写了C#中的代码。 –

+0

我已编辑过帖子,请检查@astander –

相关问题