我可以回显所有行吗?这是我的剧本:
Private Function AddAdminGroup() As Boolean
Dim AdministratorsGrp As GroupPrincipal
Dim NetworkGrp As GroupPrincipal
Try
Dim DomainCtx As New PrincipalContext(ContextType.Domain, "<domainname>", "<username>", "<pw>")
'Find Local Administrators group by SID
AdministratorsGrp = GroupPrincipal.FindByIdentity(DomainCtx, IdentityType.Sid, "S-1-5-32-544")
'Find Desktop Managers group by Name on Domain
NetworkGrp = GroupPrincipal.FindByIdentity(DomainCtx, IdentityType.Name, "<network group")
'Add Desktop Managers group to Administrators Group
AdministratorsGrp.Members.Add(DesktopMGRGrp)
'Save Group
AdministratorsGrp.Save()
Return True
Catch PrinEx As PrincipalExistsException
Return True
Catch ex As Exception
End Try
Return False
End Function
我的错误说明注意:上面代码的第3行中的数组到字符串转换
IM猜测它,因为这不是你显示所有列的方式&amp;行...
答案 0 :(得分:1)
我同意Jay Blanchard你应该使用mysql_ *函数以外的东西。
首先关闭错误消息是因为您使用数组代替字符串:
"SELECT * FROM table2 where id=$allrowsandcolumns"
$allrowsandcolumns
是数据库中包含第一个查询中的col1,col2,col3,col4的结果数组。在视觉上它看起来像这样:
array (
"col1" => value1
"col2" => value2
"col3" => value3
"col4" => value4
)
我认为我们可以同意尝试将数组放入字符串中是行不通的。相反,你可能想要这样的东西:
"SELECT * FROM table2 where id=" . $allrowsandcolumns["col1"]
或者哪个列是与table2匹配的id列。
至于所有行的回声...这对我来说就像你是编程新手一样。但嵌套很容易解释:
现在你有了这个:
$options=mysql_query("SELECT col1, col2, col3, col4 FROM table1");
while($allrowsandcolumns=mysql_fetch_array($options)) {
$options1=mysql_query("SELECT * FROM table2 where id=$allrowsandcolumns");
}
while($rows=mysql_fetch_array($options1)) {
echo $rows['name'];
}
这不是你认为它正在做的事情。它会循环遍历table1中的每一行,然后使用$options
中的最后一行来获取并回显一个Name。你需要做的是像这样嵌套循环:
$options=mysql_query("SELECT col1, col2, col3, col4 FROM table1");
while($allrowsandcolumns=mysql_fetch_array($options)) {
$options1=mysql_query("SELECT * FROM table2 where id= " . $allrowsandcolumns["col1"]);
while($rows=mysql_fetch_array($options1)) {
echo $rows['name'];
}
}
那就是说。这是一个坏主意。循环SQL查询对性能很糟糕。在您寻求知识的过程中,查找连接查询,以便您可以一次检索所有这些结果。像这样:
SELECT col1,col2,col3,col4
FROM table1 JOIN table2 on table2.id = table1.col1
然后你可以通过这些值进行单循环。