PowerShell MySQL查询语法

时间:2010-12-28 11:36:38

标签: mysql powershell powershell-v2.0 mysql-connector

我想使用PowerShell将数据插入我的MySQL数据库。

我的代码正在运行,但我对插入字符串中的变量有点问题。

如何在插入字符串中使用变量?

[system.reflection.assembly]::LoadWithPartialName("MySql.Data")
$cn = New-Object -TypeName MySql.Data.MySqlClient.MySqlConnection
$cn.ConnectionString = "SERVER=localhost;DATABASE=test;UID=root;PWD=pwd"
$cn.Open()
$cm = New-Object -TypeName MySql.Data.MySqlClient.MySqlCommand


#The problem, not working
$n = 7
$sql = 'INSERT INTO db1ea4test1.besitzer (besID, Vorname, Name) VALUES ( '$n' , "Testvor" + '$n' , "Testnach" + '$n')'

# Working
#$sql = 'INSERT INTO db1ea4test1.besitzer (besID, Vorname, Name) VALUES ("6", "Testvor", "Testnach")'


$cm.Connection = $cn
$cm.CommandText = $sql
$dr = $cm.ExecuteNonQuery()

1 个答案:

答案 0 :(得分:3)

尝试对sql字符串使用双引号,在单个变量周围使用单引号并确保引用连接变量:

$sql = "INSERT INTO db1ea4test1.besitzer (besID, Vorname, Name) VALUES ( '$n' , 'Testvor$($n)' , 'Testnach$($n)')"