BCP导入的时候没有去除引号的开关,如果111、222对应的字段是字符格式这样会报错,如果都是文本字段可以导入后UPDATE修改。
你现在两个方法,一是修改数据库字段类型为文本,并加大宽度,导入后删除引号,再修改回来。这个方法太复杂了,我也没有测试过,不知道会不会有其它问题,不推荐。
另外一个方法就是删除导入文件中的引号,如果不大,可以用记事本工具替换;如果文件太大,需要使用PERL、VBS这些写个脚本来转换。
同学,你现在的问题不在于如何去掉双引号,你读出来的肯定是字符串变量,不能直接作为方法使用,要通过反射来执行方法。
string assemblyName = "程序集名称";
string className = assemblyName + "类名";
string methodName = StringEmpty;//方法名,即你所说的字符串变量
string result = StringEmpty;
Assembly ass = AssemblyLoad(assemblyName);
Object obj = assCreateInstance(className);
Type type = assGetType(className); // 注意这里如果使用TypeGetType来取得Type的话,那麼assemblyName指定的类一定要是强命名的
// 动态调用无参数的方法
MethodInfo methodInfo = typeGetMethod(methodName);
result = (string)methodInfoInvoke(obj, null);
ResponseWrite(methodName + "方法的返回值:" + result + "<br/>");
// 动态调用有参数的方法
Object[] methodParams = new Object[1];
methodParams[0] = DateTimeNow;
MethodInfo method = typeGetMethod(methodName);
result = (string)methodInvoke(obj, methodParams);
ResponseWrite(methodName + "方法的返回值:" + result + "<br/>");
string str="Data Source=\\SQLEXPRESS;AttachDbFilename=\"D:\\VS Projects\\3层架构课程管理\\DAL\\Files\\Database1mdf\";Integrated Security=True;User Instance=True";
把字符串里面的\改成\\,把双引号"改成\"就行了。
如果字符串前面加@,那么\不用改成\\,只改双引号就行。
以上就是关于BCP导入的txt数据文件里有双引号全部的内容,包括:BCP导入的txt数据文件里有双引号、在asp.net里,如何去掉字符串变量两边的双引号、C# 数据库 连接字符串中本来就有双引号怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)