當前位置:首頁 » 數據倉庫 » datatable連接資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

datatable連接資料庫

發布時間: 2022-06-02 11:57:13

① 如何把datatable插入到資料庫

insert into tablename1 select * from tablename2

② C#中如何將DataTable保存到資料庫

sqlbulk 神級 數據拷貝
System.Data.SqlClient 命名空間
親測,100萬 數據 20欄位 5000毫秒 (5秒)
public void InsertDatatable(Datatable datatableA)
{
SqlConnection destinationConnection = new SqlConnection(connectionString) //創建一個資料庫連接;

destinationConnection.Open();

SqlBulkCopy bulkCopy =new SqlBulkCopy(destinationConnection)// 實例化 sqlbulk;

bulkCopy.DestinationTableName ="dbo.DatatableA";// 目標表名稱/

///bulkCopy.ColumnMappings.Add("ProctID", "ProctID");//映射 目標和源的欄位 如果欄位都相同,可不寫,會自動匹配相同欄位插入
///bulkCopy.ColumnMappings.Add("ProctName", "Name");//映射 目標和源的欄位 如果欄位都相同,可不寫,會自動匹配相同欄位插入
bulkCopy.WriteToServer(datatableA);//將傳入的數據寫到資料庫;

}
目標表名 如果在資料庫中不存在, 二十需要插入數據時再生成的話,就需要在執行這個 插入之前,先建一張表
string sql="create table xxxxxxx( filed1 varchar(100),........ )" 建好之後再 插入數據 就可以了 。

③ 怎麼把DataTable里的值直接添加到資料庫里

用循環呀,

④ 請問你那個將datatable插入資料庫中 是怎麼弄的

--跨資料庫
--復制結構+數據
select * into 資料庫名.dbo.新表名 from 資料庫名.dbo.原表名
--只復制結構
select * into 資料庫名.dbo.新表名 from 資料庫名.dbo.原表名 where 1=0

--復制到臨時表
select * into #temptablename from 資料庫名.dbo.原表名 where 1=0

--後面的where 1=0 只要不成立就行了,管它是1=2,還是1000=1001...

⑤ C# datatable 讀取資料庫

string test="";
string sql = "select class from table1 where name = '張三' ";
OleDbCommand cmd = new OleDbCommand(Sql, Connection);//第一個是SQL語句,Connection是鏈接字元串。當然你之前應該把它打開了。
OleDbDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
if(reader.Read())
{
test=reader["class"].ToString();
}
你可以測試下,備注我這里用的是ACCESS資料庫的寫法,如果你是SQL,自己改下就行。
把OleDb改成Sql的就可以了。

⑥ C#如何將datatable中的數據批量更新到MYSQL資料庫

C#利用update更新數據到oracle資料庫:
第一步:打開oracle資料庫
public static string connString = "";
public static OracleConnection conn = null;

//打開資料庫連接
public static bool Open()
{
//從配置文件中獲取連接字元串
//配置文件需要放在項目目錄下的bin\Release中
connString = getXmlValue("connString");
conn = new OracleConnection(getXmlValue("connString"));
try
{
conn.Open();
Console.WriteLine("資料庫連接成功");
return true;
}
catch (System.Exception ex)
{
Console.Write(ex.Message);
MessageBox.Show("未能連接到資料庫");
return false;
}
第二步:執行更新方法:
public static int update(int ruleId, int equipmentId, String equipmentName, String propertyName, int ruleType, String ruleRequest, String ruleRequestOther, String ruleExplain)
{
String sql = "update Device_Attr t set t.BASEID = :equipmentId, t.BASENAME = :equipmentName,t.CA_NAME = :propertyName,t.CA_RULETYPE = :ruleType,t.CA_RULETEXT = :ruleRequest,t.CA_RULETEXT2 = :ruleRequestOther,t.CONTENT = :ruleExplain where t.CA_ID =:ruleId";
OracleCommand cmd = new OracleCommand(sql, conn);
OracleParameter param_1 = new OracleParameter(":equipmentId", equipmentId);
cmd.Parameters.Add(param_1);
OracleParameter param_2 = new OracleParameter(":equipmentName", equipmentName + "$");
cmd.Parameters.Add(param_2);
OracleParameter param_3 = new OracleParameter(":propertyName", propertyName);
cmd.Parameters.Add(param_3);
OracleParameter param_4 = new OracleParameter(":ruleType", ruleType);
cmd.Parameters.Add(param_4);
OracleParameter param_5 = new OracleParameter(":ruleRequest", ruleRequest);
cmd.Parameters.Add(param_5);
OracleParameter param_6 = new OracleParameter(":ruleRequestOther", ruleRequestOther);
cmd.Parameters.Add(param_6);
OracleParameter param_7 = new OracleParameter(":ruleExplain", ruleExplain);
cmd.Parameters.Add(param_7);
OracleParameter param_8 = new OracleParameter(":ruleId", ruleId);
cmd.Parameters.Add(param_8);
int result = cmd.ExecuteNonQuery();
return result;
}