MySQL 中無法 insert 檔案路徑 中的 backward slash的解決方案

來源:互聯網
上載者:User
http://www.issociate.de/board/post/26258/Backslash_NOT_being_stored.htmlBackslash NOT being storedGood day. If I do the following...
INSERT INTO myTable (data) VALUES('Here is a backslash \ ');

I escape it prior to sending so the value that gets sent to the DB is....
INSERT INTO myTable (data) VALUES('Here is a backslash \\ ');

BUT when I check the DB the data field reads
[Here is a backslash ]

It eats the single backslash.

How can I prevent this?

Thank you.
Paul C. McNeil
Developer in Java, MS-SQL, MySQL, and web technologies.

GOD BLESS AMERICA!
To God Be The Glory!

--
MySQL Bugs Mailing List
For list archives: http://lists.mysql.com/bugs
To unsubscribe: http://lists.mysql.com/bugs?unsub=gcdmb-bugs [at] m.gmane.org Paul McNeil [ Fr, 09 April 2004 13:16 ] [ ID #83143 ]Re: Backslash NOT being storedOn 2004-04-09, at 13.16, Paul McNeil wrote:

> INSERT INTO myTable (data) VALUES('Here is a backslash \ ');
>
> I escape it prior to sending so the value that gets sent to the DB
> is....
> INSERT INTO myTable (data) VALUES('Here is a backslash \\ ');
>
> BUT when I check the DB the data field reads
> [Here is a backslash ]
>
> It eats the single backslash.
>
> How can I prevent this?

Is it possible that you're using a string to send the sql command?
If so, your \\ construct only ensembles a single backslash (in most
programming languages I know, you must escape the backslash within
a string using a backslash.

So assuming the above, you might want to use ".... \\\\ ...." even
if it looks weird. It's basically two '\' escaped by '\' so that
mysql gets a '\\' which then is inserted as a '\'. Clear?

Andreas Pardeike

--
MySQL Bugs Mailing List
For list archives: http://lists.mysql.com/bugs
To unsubscribe: http://lists.mysql.com/bugs?unsub=gcdmb-bugs [at] m.gmane.org Andreas Pardeike [ Fr, 09 April 2004 14:45 ] [ ID #83144 ]Re: Backslash NOT being storedHi!

On Apr 09, Paul McNeil wrote:
> Good day. If I do the following...
> INSERT INTO myTable (data) VALUES('Here is a backslash \ ');
>
> I escape it prior to sending so the value that gets sent to the DB is....
> INSERT INTO myTable (data) VALUES('Here is a backslash \\ ');
>
> BUT when I check the DB the data field reads
> [Here is a backslash ]
>
> It eats the single backslash.
>
> How can I prevent this?

According to

http://dev.mysql.com/doc/mysql/en/String_syntax.html

backslash is an escape character and must be escaped.

Regards,
Sergei

--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Sergei Golubchik <serg [at] mysql.com>
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Senior Software Developer
/_/ /_/\_, /___/\___\_\___/ Osnabrueck, Germany
<___/ www.mysql.com

--
MySQL Bugs Mailing List
For list archives: http://lists.mysql.com/bugs
To unsubscribe: http://lists.mysql.com/bugs?unsub=gcdmb-bugs [at] m.gmane.org Sergei Golubchik [ Fr, 09 April 2004 14:55 ] [ ID #83145 ]Re: Backslash NOT being storedI tested here with your syntax on MySQL 4.0.12 using the mysql command line
interface. Using SELECT to display the info, shows the backslash. What
version of MySQL are you using? What interface are you using to display the
data in MySQL? If it is something like MySQL Front, it could be that the
display program is the one with the problem.

John

----- Original Message -----
From: "Paul McNeil" <paulie [at] microneil.com>
To: <bugs [at] lists.mysql.com>
Sent: Friday, April 09, 2004 4:16 AM
Subject: Backslash NOT being stored

> Good day. If I do the following...
> INSERT INTO myTable (data) VALUES('Here is a backslash \ ');
>
> I escape it prior to sending so the value that gets sent to the DB is....
> INSERT INTO myTable (data) VALUES('Here is a backslash \\ ');
>
> BUT when I check the DB the data field reads
> [Here is a backslash ]
>
> It eats the single backslash.
>
> How can I prevent this?
>
> Thank you.
> Paul C. McNeil
> Developer in Java, MS-SQL, MySQL, and web technologies.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> GOD BLESS AMERICA!
> To God Be The Glory!
>
> --
> MySQL Bugs Mailing List
> For list archives: http://lists.mysql.com/bugs
> To unsubscribe:
http://lists.mysql.com/bugs?unsub=jwythe [at] silksystems.com
>
>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.