-- 作者:hongyefor
-- 发布时间:2019/3/8 21:39:00
-- SQL的替换问题
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 = "发票认证" 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("@分类","发票认证") cmd.Parameters.Add("@主文件夹目录",szw1) cmd.Parameters.Add("@次文件夹目录",scw1) Else cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)" cmd.Parameters.Add("@执行编号","A01") cmd.Parameters.Add("@分类","发票认证") 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("@分类","发票认证") cmd.Parameters.Add("@主文件夹目录",szw2) cmd.Parameters.Add("@次文件夹目录",scw2) Else cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)" cmd.Parameters.Add("@执行编号","A02") cmd.Parameters.Add("@分类","发票认证") 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("@分类","发票认证") cmd.Parameters.Add("@主文件夹目录",szw1) cmd.Parameters.Add("@次文件夹目录",scw1) Else cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)" cmd.Parameters.Add("@执行编号","A01") cmd.Parameters.Add("@分类","发票认证") 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("@分类","发票认证") cmd.Parameters.Add("@主文件夹目录",szw2) cmd.Parameters.Add("@次文件夹目录",scw2) Else cmd.CommandText = "Insert Into 文件夹设置 (执行编号, 分类, 主文件夹目录, 次文件夹目录) Values(?,?,?,?)" cmd.Parameters.Add("@执行编号","A02") cmd.Parameters.Add("@分类","发票认证") cmd.Parameters.Add("@主文件夹目录",szw2) End If End If End If cmd.ExecuteNonQuery End If dt.Save() dt.Load() End If
帮我看看是哪里错了,怎么替换不了SQL对应的字符
|