专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VB Dotnet

新手,字符串连接有关问题

发布时间:2011-06-23 14:49:46 文章来源:www.iduyao.cn 采编人员:星星草
新手求助,字符串连接问题
Dim selStr As String
  selStr = "SELECT mh.StationID,mh.观测时间,小时雨量,二分钟平均风向, 二分钟平均风速,十分钟平均风向,十分钟平均风速"
selStr = selStr + "最大风速的风向, 最大风速, 最大风速出现时间, 瞬时风向, 瞬时风速, 极大风速的风向, 极大风速, 极大风速出现时间"
selStr = selStr + " from AhGis2012.dbo.Meso2012_hour mh and AhGis2012.dbo.AWS2012_10min A10 where A10.StationID =mh.StationID and A10.观测时间 =mh.观测时间" '连接数据库
  cnadonetconnection.ConnectionString = "provider=Sqloledb;Data Source=ip;Initial Catalog=AhGis2012;Persist Security Info=True;User ID=meso;password=meso"
  cnadonetconnection.Open()
  dadaataadapter = New OleDb.OleDbDataAdapter(selStr, cnadonetconnection)
提示说是红色字体处and出错误,不知道怎么改,请各位指教

------解决方案--------------------
十分钟平均风向,十分钟平均风速,"
少了逗号?

------解决方案--------------------
联合查询2个数据库表,怎么能用and呢,用逗号隔开

注意下面2个标红部分的逗号,楼主要么太粗心啦,如果不是看来得好好补补SQL了

selStr = "SELECT mh.StationID,mh.观测时间,小时雨量,二分钟平均风向, 二分钟平均风速,十分钟平均风向,十分钟平均风速,"
selStr = selStr + "最大风速的风向, 最大风速, 最大风速出现时间, 瞬时风向, 瞬时风速, 极大风速的风向, 极大风速, 极大风速出现时间"
selStr = selStr + " from AhGis2012.dbo.Meso2012_hour mh , AhGis2012.dbo.AWS2012_10min A10 where A10.StationID =mh.StationID and A10.观测时间 =mh.观测时间" '连接数据库
------解决方案--------------------
感觉先在写好SQL语句,然后把SQL复制到代码中,再用CTRL+H的方式在SQL的行首和行尾添加字符串连接需要的代码,这样看起来可能更美观,我一般用StringBuilder,觉得挺好的

Dim sqlStr As New System.Text.StringBuilder
sqlStr.Append(" SELECT mh.StationID,")
sqlStr.Append(" mh.观测时间,")
sqlStr.Append(" 小时雨量,")
sqlStr.Append(" 二分钟平均风向,")
sqlStr.Append(" 二分钟平均风速,")
sqlStr.Append(" 十分钟平均风向,")
sqlStr.Append(" 十分钟平均风速,")
sqlStr.Append(" 最大风速的风向,")
sqlStr.Append(" 最大风速,")
sqlStr.Append(" 最大风速出现时间,")
sqlStr.Append(" 瞬时风向,")
sqlStr.Append(" 瞬时风速,")
sqlStr.Append(" 极大风速的风向,")
sqlStr.Append(" 极大风速,")
sqlStr.Append(" 极大风速出现时间")
sqlStr.Append(" from AhGis2012.dbo.Meso2012_hour mh, AhGis2012.dbo.AWS2012_10min A10")
sqlStr.Append(" where A10.StationID = mh.StationID ")
sqlStr.Append(" and A10.观测时间 = mh.观测时间")

'StringBuilder转换成string
Dim sql As String = sqlStr.ToString

'使用后清空
sqlStr.Remove(0, sqlStr.Length)
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: