簡體   English   中英

將[image]保存並截屏到數據庫

[英]Saving and screenshot [image] to a database

我正在嘗試將用戶打開的圖像目錄保存到數據庫中。 但符號“\\”不在路徑中。 它就像C:UsersAshleyDesktopScreenshot_1.png一樣,你可以看到它沒有\\ ,這使它成為無效的路徑。

private void button1_Click(object sender, EventArgs e)
    {
        OpenFileDialog open = new OpenFileDialog();
        if (open.ShowDialog() == DialogResult.OK)
        {
            pictureBox1.Image = Image.FromFile(open.FileName);
            pictureBox2.Image = Image.FromFile(open.FileName);
            MySQL.ExecuteNonQuery(@"UPDATE users SET profile_image_dir = '" + open.FileName + "' WHERE username = '" + User.Details.Username + "'");
            MessageBox.Show(""+ open.FileName + "\r\n");
        }

在MySQL.ExecuteNonQuery上我將它保存到數據庫中,它就像我之前展示的那樣

參數化查詢應該有效

string cmdText = @"UPDATE users SET profile_image_dir = @file
                   WHERE username = @uname";

using(MySqlConnection cn = new MySqlConnection(.....))
using(MySqlCommand cmd = new MySqlCommand(cmdText, cn))
{
   cn.Open();
   cmd.Parameters.AddWithValue("@file", open.FileName);
   cmd.Parameters.AddWithValue("@uname", User.Details.Username);
   cmd.ExecuteNonQuery();
}

使用參數化查詢 這樣做更安全,有助於避免其他潛在問題。

話雖這么說,您還可以查看關於字符串文字MySql文檔 ,您將看到它如何處理反斜杠以查看它對文字字符串的作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM