?
反思"列名无效"的问题
标签:?数据库serverdatabasebuttonsqlobject
2011-03-16 21:09?
8531人阅读?
?
收藏?
举报
 ?
分类:
版权声明:本文为博主原创文章,未经博主允许不得转载。
发帖解决了~!贴在地址:
http://topic.csdn.net/u/20110316/21/1ee00820-09f4-446a-a451-6e84694abfc5.html?829232601
?
——————————————————————————————————————————————————————————
?
初学.net,今天连数据库,一直报“列名无效”的错。已经调了一个晚上,纠结啊~~
我用的环境:os: win xp sp3? ;? ??????????? db: sq server2005 ??????????? 环境:visual studio 2005.
提示错误,我尝试过 1)核对db列名,无误。? 2)sql语句用查询分析器执行,也正确。 3)看了网上N多帖子,有的说加' 或者 " ; 尝试良久,不成功。
?????
??
?代码:
[c-sharp]?
view plain
?copy
- protected?void?Button5_Click(object?sender,?EventArgs?e)??
- ?{??
- ?????sqlConnection?MyConnection;??
- ?????sqlCommand?MyCommond;??
- ?????sqlDataReader?MyDataReader;??
- ?????int?iNum;???????
- ??
- ?????MyConnection?=?new?sqlConnection();??
- ?????MyConnection.ConnectionString?=?"server=(local);user?id=sa;pwd=;database=AndXu";??
- ?????MyConnection.Open();??
- ?????MyCommond?=?new?sqlCommand();??
- ?????MyCommond.CommandText?=?"select?*?from?UserInfo?where?[UserName]=?@name?and??[UserSex]=?@sex?"??;??????
- ?????MyCommond.CommandType?=?CommandType.Text;??
- ?????MyCommond.Connection?=?MyConnection;??
- ?????MyCommond.Parameters.Add("@name",Name.Text);?????
- ??????????????????????????????????
- ?????MyCommond.Parameters.Add("@sex",Sex.Text);??
- ?????MyDataReader?=?MyCommond.ExecuteReader();??
- while?(MyDataReader.Read())??
- ?????{??
- ?????????for?(int?inum?=?0;?inum?<?MyDataReader.FieldCount;?inum++)??
- ?????????{??
- ?????????????AllSult.Text?=?MyDataReader[0].ToString()??
- ??????????????????????????+?MyDataReader[1].ToString()??
- ??????????????????????????+?MyDataReader[2].ToString()??
- ??????????????????????????+?MyDataReader[3].ToString();??
- ?????????}??????
- ?????}??
- ?????MyDataReader.Close();?????
- ?????MyConnection.Close();??
- ?}??
?
?
?
e....e.. ? 对不起大家,问题解决了。说出来 我都不好意思了。。。 ? ?? ??“我有两个数据库,下面有同一个表,其中我连的那个表恰没有UserSex 而是 UserLevel”
? 多谢大家的帮忙,问题终于明朗了。 ? 不过我也学到不少,总结一下: ? 1.如果提示 列名无效,可能是 ? 1)数据库连接错误。 改改语句试试,检查数据库连接。 ? 2)sql错误。带回查询分析器试试。 ? 3)(据楼上某仁兄说)可能是关键字命名冲突,也有可能。 ? 4)可能是数据类型冲突。检查是否匹配。 ? 照此顺序,依次检查,应该能找到症结。
? 2.再则,打印出类名看看是否正确: ? for (int i = 0; i < MyDataReader.FieldCount; i++) ? { ? Response.Write(MyDataReader.GetName(i) + "<br>"); ? }也是好法。
? 哎,一个不细心,白白纠结了一天。? 以后要多加小心~!
顶 (编辑:北几岛)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|