Foxtable(狐表)用户栏目专家坐堂 → SQL的替换问题


  共有2415人关注过本帖树形打印复制链接

主题:SQL的替换问题

帅哥哟,离线,有人找我吗?
hongyefor
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:524 积分:3676 威望:0 精华:0 注册:2012/7/27 10:28:00
SQL的替换问题  发帖心情 Post By:2019/3/8 21:39:00 [只看该作者]

Dim zw1 As WinForm.DropDownBox = e.Form.Controls("DropBox1")
Dim cw1 As WinForm.DropDownBox = e.Form.Controls("DropBox2")
Dim zw2 As WinForm.DropDownBox = e.Form.Controls("DropBox3")
Dim cw2 As WinForm.DropDownBox = e.Form.Controls("DropBox4")
Dim szw1 As String = zw1.text
Dim scw1 As String = cw1.text
Dim szw2 As String = zw2.text
Dim scw2 As String = cw2.text
Dim sa1 As String = "A01"
Dim sa2 As String = "A02"
Dim fsc As String = "fa piao认证"
Dim ssw As String = "文件夹设置"
Dim lst As List(Of String)
lst = Connections("彬阳数据").GetTableNames
If lst.Contains(ssw) = False Then
    Dim Builder As New ADOXBuilder("彬阳数据") '要指定数据源名称
    Dim tbl As ADOXTable
    Builder.Open()
    tbl = Builder.NewTable("文件夹设置") '创建表
    With tbl
        .AddColumn("执行编号" ,ADOXType.String, 50)
        .AddColumn("分类" ,ADOXType.String, 60)
        .AddColumn("主文件夹目录" ,ADOXType.String, 120)
        .AddColumn("次文件夹目录" ,ADOXType.String, 120)
    End With
    Builder.AddTable(tbl, True, True) '增加表
    Builder.Close()
    Dim cmd As new SQLCommand
    cmd.C
    If szw1 IsNot Nothing Then
        If scw1 IsNot Nothing Then
            cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
            cmd.Parameters.Add("@执行编号","A01")
            cmd.Parameters.Add("@分类","fa piao认证")
            cmd.Parameters.Add("@主文件夹目录",szw1)
            cmd.Parameters.Add("@次文件夹目录",scw1)
        Else
            cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
            cmd.Parameters.Add("@执行编号","A01")
            cmd.Parameters.Add("@分类","fa piao认证")
            cmd.Parameters.Add("@主文件夹目录",szw1)
        End If
    End If
    cmd.ExecuteNonQuery
    cmd.Parameters.Clear
    If szw1 IsNot Nothing Then
        If szw2 IsNot Nothing Then
            If scw2 IsNot Nothing Then
                cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
                cmd.Parameters.Add("@执行编号","A02")
                cmd.Parameters.Add("@分类","fa piao认证")
                cmd.Parameters.Add("@主文件夹目录",szw2)
                cmd.Parameters.Add("@次文件夹目录",scw2)
            Else
                cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
                cmd.Parameters.Add("@执行编号","A02")
                cmd.Parameters.Add("@分类","fa piao认证")
                cmd.Parameters.Add("@主文件夹目录",szw2)
            End If
        End If
    End If
    cmd.ExecuteNonQuery
Else
    Dim cmd As new SQLCommand
    Dim dt As DataTable
    cmd.C
    cmd.CommandText = "S****t [_Identify],执行编号,分类,主文件夹目录,次文件夹目录 from {文件夹设置} Where 执行编号 = '" & sa1 & " 'and 分类 = '" & fsc & " '"
    dt = cmd.ExecuteReader(True) '记得将参数设置为True
    Dim Values = cmd.ExecuteValues
    If Values.Count > 0 Then
        dt.ReplaceFor("主文件夹目录", zw1.text, "[执行编号] = '" & sa1 & "' And [分类] = '" & fsc & "'")
        dt.ReplaceFor("次文件夹目录", cw1.text, "[执行编号] = '" & sa1 & "' And [分类] = '" & fsc & "'")
    Else
        If szw1 IsNot Nothing Then
            If scw1 IsNot Nothing Then
                cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
                cmd.Parameters.Add("@执行编号","A01")
                cmd.Parameters.Add("@分类","fa piao认证")
                cmd.Parameters.Add("@主文件夹目录",szw1)
                cmd.Parameters.Add("@次文件夹目录",scw1)
            Else
                cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
                cmd.Parameters.Add("@执行编号","A01")
                cmd.Parameters.Add("@分类","fa piao认证")
                cmd.Parameters.Add("@主文件夹目录",szw1)
            End If
        End If
        cmd.ExecuteNonQuery
        cmd.Parameters.Clear
    End If
    cmd.CommandText = "S****t [_Identify],执行编号,分类,主文件夹目录,次文件夹目录 from {文件夹设置} Where 执行编号 = '" & sa2 & " 'and 分类 = '" & fsc & " '"
    dt = cmd.ExecuteReader(True) '记得将参数设置为True
    Dim Valuess = cmd.ExecuteValues
    If Valuess.Count > 0 Then
        dt.ReplaceFor("主文件夹目录", zw2.text, "[执行编号] = '" & sa2 & "' And [分类] = '" & fsc & "'")
        dt.ReplaceFor("次文件夹目录", cw2.text, "[执行编号] = '" & sa2 & "' And [分类] = '" & fsc & "'")
    Else
        If szw1 IsNot Nothing Then
            If szw2 IsNot Nothing Then
                If scw2 IsNot Nothing Then
                    cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
                    cmd.Parameters.Add("@执行编号","A02")
                    cmd.Parameters.Add("@分类","fa piao认证")
                    cmd.Parameters.Add("@主文件夹目录",szw2)
                    cmd.Parameters.Add("@次文件夹目录",scw2)
                Else
                    cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)"
                    cmd.Parameters.Add("@执行编号","A02")
                    cmd.Parameters.Add("@分类","fa piao认证")
                    cmd.Parameters.Add("@主文件夹目录",szw2)
                End If
            End If
        End If
        cmd.ExecuteNonQuery
    End If
    dt.Save()
    dt.Load()
End If

 

帮我看看是哪里错了,怎么替换不了SQL对应的字符


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/8 22:06:00 [只看该作者]

            cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录) Values(?,?,?)"
            cmd.Parameters.Add("@执行编号","A01")
            cmd.Parameters.Add("@分类","fa piao认证")
            cmd.Parameters.Add("@主文件夹目录",szw1)

……

cmd.CommandText = "S****t [_Identify],执行编号,分类,主文件夹目录,次文件夹目录 from {文件夹设置} Where 执行编号 = '" & sa1 & "' and 分类 = '" & fsc & "'"

Where 执行编号 = '" & sa1 & " ' and 分类 = '" & fsc & " '" 有一些多余的空格,其他地方一样,自己检查

 回到顶部
帅哥哟,离线,有人找我吗?
hongye
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:2949 威望:0 精华:0 注册:2011/3/15 12:49:00
  发帖心情 Post By:2019/3/8 22:39:00 [只看该作者]

改好了,但是还是没反应,A02可用

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/8 22:55:00 [只看该作者]

重新贴出代码,或者上传实例测试

 回到顶部