c#提交到数据库时从字符串中剥离字符

标签 c# mysql database visual-studio

我目前正在开展一个项目,我需要将文件路径提交到数据库,并且还能够从数据库中提取该路径。

目前我可以将路径提交到数据库并从数据库中提取数据,但是当我提交到数据库时,路径中的斜线似乎从字符串中删除了。

在提交到数据库和从数据库中提取时,如何阻止\被删除?

这是我的保存按钮事件代码:

private void btnSaveSettings_Click(object sender, EventArgs e)
{
    string myConnection = "datasource=localhost;port=3306;username=username;password=password";
    string Query = "insert into ephex_contcollections.Paths (toindex,indexed) values('" + this.txtToIndexPath.Text + "','" + this.txtIndexedPath.Text + "') ;";
    MySqlConnection myConn = new MySqlConnection(myConnection);

    MySqlCommand cmdDB = new MySqlCommand(Query, myConn);
    MySqlDataReader myReader;

    try
    {
        myConn.Open();
        myReader = cmdDB.ExecuteReader();
        MessageBox.Show("Save Successful");

        while (myReader.Read())
        {

        }
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
} //close save button event

我提交给数据库的字符串在文本框中看起来像这样:

C:\Users\Meta\Desktop\Alpha

但是他们像这样提交给数据库:

C:UsersMetaDesktopAlpha

在此先感谢(我是使用 C# 使用 MySQL 数据库的新手,我的 C# 也很生疏)

最佳答案

你应该使用 SQL Parameters ,但如果你想快速解决这个问题,请在路径中添加双斜杠,这样输出将是:C:\\Users\\Meta\\Desktop\\Alpha

string Query = "insert into ephex_contcollections.Paths (toindex,indexed) values('" + this.txtToIndexPath.Text.Replace(@"\" , @"\\") + "','" + this.txtIndexedPath.Text.Replace(@"\" , @"\\") + "') ;";

关于c#提交到数据库时从字符串中剥离字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27930786/

相关文章:

ios - 向网络服务器发送数据

c# - 实现 Entity Framework 6 添加或更新方法的最简单方法是什么

c# - 使用c#开发这样的winform

c# - 如何在C#中从AIX topas命令结果中剥离ANSI转义代码

php - 选择阻止 user1 访问 user2(反之亦然)

Java 运行时执行 SQL 脚本在 SQL 错误时继续

android - 如何将图像存储在数据库中并在 ListView 中显示

c# - 根据单选按钮选择切换文本框上的绑定(bind)

c# - 如何在 ListView 中查找项目并更新同一行中的另一列?

mysql - mysql删除重复行的方法