SqlConnection mySqlConnection = new SqlConnection("server=" + server + ";database=master;uid=" + uid + ";pwd=" + pwd);
SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
String sql = "exec master..xp_cmdshell 'del \"" + patch + "\\" + ListBox1.SelectedValue + "\" /q'";String sqlExist = "exec master..xp_fileexist '\"" + patch + "\\" + ListBox1.SelectedValue + "\" /@flag out '";
mySqlCommand.CommandText = sqlExist;
mySqlConnection.Open();
int n = mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
if (n != 1)
{
ListBox1.Items.Remove(new ListItem(ListBox1.SelectedValue, ListBox1.SelectedValue));
JavascriptManager.ShowStartupMessageBox(this, "文件不存在!", true);
}
else
{
mySqlCommand.CommandText = sql;
mySqlConnection.Open();
mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
ListBox1.Items.Remove(new ListItem(ListBox1.SelectedValue, ListBox1.SelectedValue));
}我要检测文件是否存在,如果不存在就不删除,如果存在就执行删除,我的语句有什么问题?
SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
String sql = "exec master..xp_cmdshell 'del \"" + patch + "\\" + ListBox1.SelectedValue + "\" /q'";String sqlExist = "exec master..xp_fileexist '\"" + patch + "\\" + ListBox1.SelectedValue + "\" /@flag out '";
mySqlCommand.CommandText = sqlExist;
mySqlConnection.Open();
int n = mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
if (n != 1)
{
ListBox1.Items.Remove(new ListItem(ListBox1.SelectedValue, ListBox1.SelectedValue));
JavascriptManager.ShowStartupMessageBox(this, "文件不存在!", true);
}
else
{
mySqlCommand.CommandText = sql;
mySqlConnection.Open();
mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
ListBox1.Items.Remove(new ListItem(ListBox1.SelectedValue, ListBox1.SelectedValue));
}我要检测文件是否存在,如果不存在就不删除,如果存在就执行删除,我的语句有什么问题?
SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
String sql = "exec master..xp_cmdshell 'del \"" + patch + "\\" + ListBox1.SelectedValue + "\" /q'";String sqlExist = "exec master..xp_fileexist '\"" + patch + "\\" + ListBox1.SelectedValue + "\" /@flag out '";
mySqlCommand.CommandText = sqlExist;
mySqlConnection.Open();
int n = mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
if (n != 1)
{
ListBox1.Items.Remove(new ListItem(ListBox1.SelectedValue, ListBox1.SelectedValue));
JavascriptManager.ShowStartupMessageBox(this, "文件不存在!", true);
}
else
{
mySqlCommand.CommandText = sql;
mySqlConnection.Open();
mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
ListBox1.Items.Remove(new ListItem(ListBox1.SelectedValue, ListBox1.SelectedValue));
}这个应该是权限的问题,你执行这个存储过程的用户不一定有权限
SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
//删除
String sql = "exec master..xp_cmdshell 'del \"" + patch + "\\" + ListBox1.SelectedValue + "\" /q'";
//检测文件是否存在
String sqlExist = "exec master..xp_fileexist '\"" + patch + "\\" + ListBox1.SelectedValue + "\" /@flag out '";
mySqlCommand.CommandText = sqlExist;
mySqlConnection.Open();
//返回值,这里的返回值是“@flag”吗?
int n = mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
if (n != 1)
{
JavascriptManager.ShowStartupMessageBox(this, "文件不存在!", true);
}
else
{
mySqlCommand.CommandText = sql;
mySqlConnection.Open();
mySqlCommand.ExecuteNonQuery();
mySqlConnection.Close();
}
各位大侠帮忙看一下
我吧mySqlCommand.ExecuteNonQuery();
改为mySqlCommand.ExecuteScalar()
也不行,郁闷,应该可以得到返回值吧,
但是我不知道怎么写。
insert into #tb exec master..xp_fileexist '文件路径'
不知道这样写对不对?
#tb是自己创建呢?还是已经再数据库中存在了?