gpt4 book ai didi

c# - 通过ODBC直接向PostGres数据库插入DataTable

转载 作者:行者123 更新时间:2023-11-29 13:33:36 24 4
gpt4 key购买 nike

我有一个问题,我是一名普通的 .net 应用程序开发人员,因为我之前使用的是 PHP。

我想在.net 语言中通过 ODBC 将填充的 DataTable 直接插入到数据库中,语言是 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);

//事务插入代码

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();



}

我有点卡在这里怎么办..请指导

最佳答案

看看.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";

}

关于c# - 通过ODBC直接向PostGres数据库插入DataTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18285847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com