从Powershell更新SQL表

从Powershell更新SQL表,sql,powershell,microsoft-graph-intune,Sql,Powershell,Microsoft Graph Intune,我的问题是,当试图插入的值具有特殊字符时,如何更新SQL表中的列。每当我试图更新表时,只更新那些带有基本ascii文本的记录 脚本位于powershell中 表是一个SQL表 列是文本类型 此脚本将移动设备列表放入表中,然后 唯一有错误的字段是devicename字段。 导致错误的某些值(但不限于)为“`” 为了解决这个问题,我删除了除基本ascii文本以外的所有文本,但希望能够写入整个设备名称 我试图强制变量为字符串,并在插入之前引用文本,但这两种方法都不起作用 {在for each循环的中间

我的问题是,当试图插入的值具有特殊字符时,如何更新SQL表中的列。每当我试图更新表时,只更新那些带有基本ascii文本的记录

脚本位于powershell中 表是一个SQL表 列是文本类型

此脚本将移动设备列表放入表中,然后 唯一有错误的字段是devicename字段。 导致错误的某些值(但不限于)为“`”

为了解决这个问题,我删除了除基本ascii文本以外的所有文本,但希望能够写入整个设备名称

我试图强制变量为字符串,并在插入之前引用文本,但这两种方法都不起作用

{在for each循环的中间]

$DeviceNameBefore = $d.DeviceName 

$DeviceName =  $DeviceNameBefore -replace'[^\x00B4\x2018a\x2019a\x239\x30\x96\x31\x32\x33\x34\x35\x36\x37\x38\x39\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4A\x4B\x4C\x4D\x4E\x4F\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5A\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6A\x6B\x6C\x6D\x6E\x6F\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7A\x20\x5F\x2F\x2D\x3A\x29\x28\x2E\x2C\x40\x24\x2B\x21\x26\x7E\x5E\x23\x7C\x3F\x2A]+', ''
试试看。