Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在VB.Net中消除空白_Sql_Vb.net - Fatal编程技术网

Sql 如何在VB.Net中消除空白

Sql 如何在VB.Net中消除空白,sql,vb.net,Sql,Vb.net,在以下代码中,SqlDataReader“dr”不读取名称包含空格的受试者的“SubjectCode”;科目表中的英语、社会学、成本核算原则等示例 因此,如果有人能立即帮助我,我将不胜感激 cmd=newsqlcommand(_ “从ProgramDetails.subjects中选择subjectCode,其中subjectname=”&_ 修剪(子名称)和“”,cn) dr=cmd.ExecuteReader 如果里德博士 子代码=dr(0) 如果结束 克洛斯博士() 只需使用 cmd=ne

在以下代码中,SqlDataReader“dr”不读取名称包含空格的受试者的“SubjectCode”;科目表中的英语、社会学、成本核算原则等示例

因此,如果有人能立即帮助我,我将不胜感激

cmd=newsqlcommand(_
“从ProgramDetails.subjects中选择subjectCode,其中subjectname=”&_
修剪(子名称)和“”,cn)
dr=cmd.ExecuteReader
如果里德博士
子代码=dr(0)
如果结束
克洛斯博士()
只需使用

cmd=newsqlcommand(“从ProgramDetails.subjects中选择RTRIM(subjectCode)”+_
“where subjectname,如“”&修剪(子名称)&“%”,cn)
dr=cmd.ExecuteReader
如果里德博士
子代码=dr(0)
如果结束
克洛斯博士()
只需使用

cmd=newsqlcommand(“从ProgramDetails.subjects中选择RTRIM(subjectCode)”+_
“where subjectname,如“”&修剪(子名称)&“%”,cn)
dr=cmd.ExecuteReader
如果里德博士
子代码=dr(0)
如果结束
克洛斯博士()
  • 您可以使用
    SQL参数

  • 你在结尾有一个空白,我想这不是你想要的
  • 您可能希望使用通配符
    %
    代替
    类似的
  • 例如:

    Dim sql=“从ProgramDetails.subjectname中选择subjectCode,其中subjectname类似@subname”
    使用con=newsqlconnection(connectionString)
    使用cmd=newsqlcommand(sql,con)
    cmd.Parameters.AddWithValue(“@subname”,String.Format(“%{0}%”,英语”))
    Con.Open()
    使用rd=cmd.ExecuteReader()
    而rd.Read()
    Dim subjectCode=rd.GetString(0)
    ' ... '
    结束时
    终端使用
    终端使用
    终端使用
    
  • 您可以使用
    SQL参数

  • 你在结尾有一个空白,我想这不是你想要的
  • 您可能希望使用通配符
    %
    代替
    类似的
  • 例如:

    Dim sql=“从ProgramDetails.subjectname中选择subjectCode,其中subjectname类似@subname”
    使用con=newsqlconnection(connectionString)
    使用cmd=newsqlcommand(sql,con)
    cmd.Parameters.AddWithValue(“@subname”,String.Format(“%{0}%”,英语”))
    Con.Open()
    使用rd=cmd.ExecuteReader()
    而rd.Read()
    Dim subjectCode=rd.GetString(0)
    ' ... '
    结束时
    终端使用
    终端使用
    终端使用
    

    您的代码是开放的-您应该使用参数化查询,而不是连接SQL。您的代码末尾有一个空格,这是需要的吗<代码>“'”
    您的代码是开放的-您应该使用参数化查询,而不是连接SQL。您的代码末尾有一个空格,这是需要的吗<代码>“'”
    我已尝试使用您的解决方案,但收到一条错误消息“connectionString尚未初始化”如何解决此问题?非常感谢。@Akaglo:
    connectionString
    只是一个字符串变量,应该用实际的connection-string替换它。那么,您必须在
    connectionString
    中放入一个有效的连接字符串。类似于
    connectionString=“Server=myServerAddress;Database=myDataBase;Trusted\u Connection=True;”
    。看见此域包含所有类型DBs的有用信息。请按照您的建议执行您的代码,但它无法读取名称有空格的主题的主题代码。@Akaglo:您能提供一个或两个示例吗?我已尝试使用您的解决方案,但收到一条错误消息“connectionString尚未初始化”如何解决此问题?非常感谢。@Akaglo:
    connectionString
    只是一个字符串变量,应该用实际的connection-string替换。您必须将有效的连接字符串放入
    connectionString
    。类似于
    connectionString=”Server=myserver地址;数据库=myDataBase;Trusted_Connection=True;“
    。请参阅。此域包含所有类型DBs的有用信息。请按照您的建议执行您的代码,但它无法读取名称有空格的主题的主题代码。@Akaglo:您能提供一两个示例吗?非常感谢。我尝试了您的解决方案,但问题仍然是一样的。@在is,SQLDataReader“dr“再试一次,请注意,此查询容易出现sql注入:)我刚刚再试了几次,但其工作方式与您之前建议的相同。请给我一个不同的建议。提前谢谢。我的意思是你编辑的代码仍然会读取名称不包含空格的主题的主题代码。请帮帮我。非常感谢。我试过你的解决办法,但问题还是一样;也就是说,SQLDataReader“dr”只读取名称不带空格的主题的subjectCodes。请注意,此查询容易出现sql注入:)我刚刚尝试了几次,但其工作方式与您之前建议的相同。请给我一个不同的建议。提前谢谢。我的意思是你编辑的代码仍然会读取名称不包含空格的主题的主题代码。请帮帮我。