C#中参数化怎么拼接SQL语句插入数据库?
发布网友
发布时间:2022-04-07 21:01
我来回答
共4个回答
热心网友
时间:2022-04-07 22:30
三个步骤:
第一步:声明数据库连接对象:
Sqlconnection connection=new Sqlconnection(ConnectionString);
第二步:声明数据库操作对象:
两种途径:
直接以字符串拼接的方式形成sql语句,比如:
sqlstr="insert into usertab(uid,pwd) values('"+uidtxt+"','"+pwdtxt+"')";
SqlCommand command = new SqlCommand(sqlstr, connection);
以参数占位的先行成形式语句,然后对参数实行绑定,比如:
sqlstr="insert into usertab(uid,pwd) values(@uidtxt,@pwdtxt)";
SqlCommand command = new SqlCommand(sqlstr, connection);
command.Parameters.Add("@uidtxt", SqlDbType.Text); command.Parameters["@uidtxt"].Value =uidtxt;
command.Parameters.Add("@pwdtxt", SqlDbType.Text); command.Parameters["@pwdtxt"].Value =uidtxt;
执行数据库操作:
command.ExecuteNonQuery();
connection.close();
热心网友
时间:2022-04-07 23:48
将你查询的语句一条一条的插入到datatable里面,然后批量插入数据库表单中用下面的方法
public void InsertTable(DataTable table1,string tablename) // table1要插入的数据 tablename 数据库表单名称
{
SqlBulkCopy sqlBulkCopy = new SqlBulkCopy("数据库连接字符串", SqlBulkCopyOptions.UseInternalTransaction);
sqlBulkCopy.DestinationTableName = tablename;
if (table1 != null && table1.Rows.Count != 0)
{
sqlBulkCopy.WriteToServer(table1);
}
sqlBulkCopy.Close();
}
热心网友
时间:2022-04-08 01:23
可以使用xml当参数之后 在用存储过程接收,例如
DECLARE @idoc int
DECLARE @doc nvarchar(max)
SET @doc ='
1
a
2
b
'
EXEC sp_xml_preparedocument @idoc OUTPUT, @doc
SELECT
*
FROM OPENXML (@idoc, '/roots/root',2)
WITH (id nvarchar(10),name nvarchar(100))
insert into ....
热心网友
时间:2022-04-08 03:14
添加引用Oracle.DataAccess.dll
using Oracle.DataAccess.Client;
OracleBulkCopy sqlBulk = new OracleBulkCopy("User ID=root;Password=***;Data Source=xx.x.x.x;", OracleBulkCopyOptions.UseInternalTransaction); sqlBulk.DestinationTableName = "表名"; foreach(DataColumn column in dtTable.Columns) { sqlBulk.ColumnMappings.Add(column.ColumnName,column.ColumnName); } sqlBulk.WriteToServer(dtTable); sqlBulk.Dispose(); sqlBulk.Close();