C#+ OLEDB插入具有特殊字符的varchar?

时间:2010-10-13 19:28:11

标签: c# database ole

我对此代码有疑问,也许您可​​以帮我一臂之力。 我将文件信息作为具有名称,大小的行插入......它们都是varchars 问题是“name”在名称文件中有这个'tildes所以当它试图解析数据时会崩溃。

文件名为: Creedence Clearwater Revival - Lookin' Out Out Back Door - 09.mp3

之后

有一个'

我的命令是: oleDbInsertCommand1.CommandText =“INSERT INTO Dirs-Arcsnombreformatotamañopathtags)VALUES('”+ name +“ ','“+ formato +”','“+tamaño+”','“+ path +”','“+ tags +”')“;

这适用于没有这个'字符的文件名,我怎样才能更好地解析???? 感谢。

2 个答案:

答案 0 :(得分:3)

使用参数:

OleDbCommand cmd = new OleDbCommand ( "INSERT INTO dirs-arcs (nombre, formato, tamano, path, tags) VALUES (@name, @format, @tamano, @path, @tags)", connection);

cmd.Parameters.Add( "@name", OleDbType.VarChar ).Value = name;
// add all parameters

HTH

马里奥

答案 1 :(得分:0)

您可以将AccessDataSource与参数一起使用。如果使用参数,则对于特殊字符没有任何问题。