zoukankan      html  css  js  c++  java
  • MySQL 中无法 insert 文件路径 中的 backward slash的解决方法

    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=gcdmb-bugs [at] m.gmane.org
    Paul McNeil [ Fr, 09 April 2004 13:16 ] [ ID #83143 ]

    Re: Backslash NOT being stored

    On 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 stored

    Hi!

    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 stored

    I 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
    >
    >


  • 相关阅读:
    selenium python (十五)控制滚动条操作
    selenium python (十四)上传文件的处理
    selenium python (十三)对于分页的处理
    selenium python (十二)下拉框的处理
    selenium python (十一)alert/confirm/prompt的处理(js中的弹出框)
    selenium python (十)浏览器多窗口处理
    selenium python (九)对话框处理
    selenium python (八)定位frame中的对象
    企业分布式微服务云SpringCloud SpringBoot mybatis (三) 服务消费者(Feign)
    企业分布式微服务云SpringCloud SpringBoot mybatis (二)服务消费者(rest+ribbon)
  • 原文地址:https://www.cnblogs.com/cy163/p/1715737.html
Copyright © 2011-2022 走看看