2015-05-22 87 views
0

执行MySQL的命令,我不知道如何从PowerShell的4.0双引号执行MySQL的命令用双引号从PowerShell的

的SQL查询:

$SqlQuery = @" 
USE joomla; UPDATE jml_shoutbox SET msg = "$msg_neu" ORDER BY id DESC LIMIT 1; 
"@ 

的消息插入:

$msg_neu = "Dies ist ein <a href="www.google.de">Link</a> ok?" 

也试过这样:

$msg_neu = 'Dies ist ein <a href="www.google.de">Link</a> ok?' 

这:

$msg_neu = "Dies ist ein <a href=`"www.google.de`">Link</a> ok?" 

从PowerShell中的命令:

C:\xampp\mysql\bin\mysql.exe -u root -ppassword -e $SqlQuery 

当我执行从PS我得到如下:

C:\ XAMPP的\ mysql的\ BIN \ mysql.exe -u root -ppassword -e $ SqlQuery警告: 在命令行界面上使用密码可能不安全。 C:\ xampp \ mysql \ bin \ mysql.exe版本14.14 Distrib 5.6.11,用于Win32 (x86)版权所有(c)2000,2013,Oracle和/或其附属公司。全部 保留所有权利。

Oracle是Oracle Corporation和/或其子公司 子公司的注册商标。其他名称可能是其各自所有者的商标。用法:C:\ xampp \ mysql \ bin \ mysql.exe [选项] [数据库] - ?, - 帮助 显示此帮助并退出。 -I,--help同义词 - ? ...

但是,当我这样做,直接在MySQL的“正常工作:

UPDATE jml_shoutbox SET msg = 'Dies ist ein <a href="www.google.de">Link</a> ok?' ORDER BY id DESC LIMIT 1; 

不要一个人有一个想法?

回答

0
$msg_neu = 'Dies ist ein <a href="www.google.de">Link</a> ok?' 

$SqlQuery = @" 
    USE joomla; UPDATE jml_shoutbox SET msg = '$msg_neu' ORDER BY id DESC LIMIT 1; 
"@ 
+0

MySQL是否区分单引号和双引号?如果是的话,这不会改变查询的语义吗?逃避双引号会不会更好?所以语义被保留了?另外,添加一个小评论来解释你的答案对初学者会有帮助。 – exhuma

+0

SQL字符串使用单引号。 – majkinetor

+0

谢谢你的回答。 但我执行命令后,该字段的DATABSE值: '模具上北京时间艾因Link OK' 所以,没有qoutes ... – FLX