C# 为什么我的bcp查询不起作用?
我是C#的初学者,我想在C#中使用C# 为什么我的bcp查询不起作用?,c#,bcp,C#,Bcp,我是C#的初学者,我想在C#中使用bcp实用程序,为此,我编写了以下代码: string connstr = "Data Source=192.168.50.172;Initial Catalog=CDRDB;User ID=CDRLOGIN;Password=beh1368421"; //string connstr = "Enter your connection string here"; System.Diagnostics.Process proc = new System.
bcp
实用程序,为此,我编写了以下代码:
string connstr = "Data Source=192.168.50.172;Initial Catalog=CDRDB;User ID=CDRLOGIN;Password=beh1368421";
//string connstr = "Enter your connection string here";
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo.FileName = "bcp";
proc.StartInfo.Arguments = @"select * from CDRTABLE"" queryout c:\filename.csv -S 192.168.50.172 -U CDRLOGIN -P beh1368421 -f -w";
proc.Start();
该代码会运行,但不会在我的
C:\
驱动器上创建filename.csv
。怎么搞的?如何解决此问题?对于从System.Diagnostics.Process()
执行的Bcp
,应使用-c
和-CRAW
选项
下面是示例代码
string execPath = @"..\bcp.exe";
string localFile = @"MetaData.Table";
string localPath = @"..\OutputFolder";
System.Diagnostics.Process P = new System.Diagnostics.Process();
P.StartInfo.UseShellExecute = false;
P.StartInfo.RedirectStandardOutput = true;
P.StartInfo.RedirectStandardError = true;
P.StartInfo.CreateNoWindow = true;
P.StartInfo.FileName = execPath;
P.StartInfo.Arguments = string.Concat("\"", "MetaData.Table", "\" out \"", localPath, "\\", localFile, ".dat\" -c -C RAW -t\"", separator, "\" -S \"", "(local)", "\" -T");
P.Start();
P.WaitForExit();
P.Close();
P.Dispose();
您还可以使用bulkinsert
Transact-SQL语句和SqlCommand
的ExecuteNonQuery
方法在C#code中使用BCP
类似于以下的方法将起作用:
sCommandText = "exec xp_cmdShell 'bcp.exe'"+Database + ".." + TableName + " in " +
FileName + " -c -q -U " + UserId + " -P " + Password + "-t ";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = sCommandText;
return cmd.ExecuteNonQuery();
什么是?需要一个领导“。打印字符串并从控制台手动尝试。@UweKeim BCP使用sql server中的从其他sql server数据库读取并将查询结果写入csv文件BCP:BCP实用程序以用户指定的格式在Microsoft sql server实例和数据文件之间批量复制数据。当别人回答你的问题时,你会问多少次BCP问题而不跟进???我记得在最近的将来,至少有两次你干脆放弃了。这些答案对你有帮助吗?他们没有帮助你吗?当人们回答你的问题并对他们为帮助你所付出的努力表示尊重时,至少发表一条评论怎么样。