下面的宏将数据导出到SQL表,当表名没有空格时,它可以正常工作,但是如果名称有空格,它将阻止,
它在rs.Open行tableName,Cn,adOpenKeyset,adLockOptimistic上阻塞
我尝试将撇号'...'和...
钩住,但无济于事
`
Sub Injection()
Dim Cn As ADODB.connection
Dim ServerName As String
Dim DatabaseName As String
Dim tableName As String
Dim UserID As String
Dim Password As String
Dim rs As ADODB.recordset
ServerName = "vmalsdisdb"
DatabaseName = "Produits"
tableName = "PRELEVEMENT PRODUIT"
UserID = ""
Password = ""
Set rs = New ADODB.recordset
Set Cn = New ADODB.connection
Cn.Open "Driver={SQL Server};Server=" & ServerName & ";Database=" & DatabaseName & _
";Uid=" & UserID & ";Pwd=" & Password & ";"
rs.Open tableName, Cn, adOpenKeyset, adLockOptimistic`
答案 0 :(得分:0)
这很奇怪!在我的测试场景中,对我来说效果很好!
<script>
$(document).ready(function () {
function removeItem(id) {
var index = -1;
var obj1 = JSON.parse(sessionStorage.getItem("cart")) || {};
var items = obj1.cart || [];
for (var i = 0; i < items.length; i++) {
if (items[i].id === id) {
alert(id);
items.splice(i, 1);
break;
}
}
sessionStorage.setItem("cart", JSON.stringify(obj1));
}
removeItem("000f1834-8694-465d-ba89-2bf45e3ce132");
});
</script>
我想您可以尝试对任何“怪异”命名约定使用三引号,例如名称中的空格或名称中的特殊字符。
答案 1 :(得分:-1)
感谢大家的回答,问题并不在于空间,而是在其中一个表中,我可以通过将游标类型“ adOpenKeyset”替换为“ adOpenDynamic”来绕过该问题 但他了解问题的原因,可能是另一个用户在桌子上工作?!