| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 510 人关注过本帖
标题:[求助]数据连接的错误
只看楼主 加入收藏
xiaobin2012
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-6-3
收藏
 问题点数:0 回复次数:7 
[求助]数据连接的错误

protected void Button1_Click(object sender, EventArgs e)
{
this.SqlDataSource1.Insert();
string filepath = "", filename = "", mfilename, mfilepath;
if(""!=FileUpload1.PostedFile.FileName)
{
filepath = FileUpload1.PostedFile.FileName;
filename = filepath.Substring(filepath.LastIndexOf(".") + 1);
try
{
mfilepath = Server.MapPath("ima/");
mfilename = filepath.Substring(filepath.LastIndexOf("\\") + 1);
string strsql = "insert into userinfo(imagepath)values('" + mfilepath + "')";
con = new SqlConnection(strCon);
con.Open();
SqlCommand cmd = new SqlCommand(strsql, con);
cmd.ExecuteNonQuery();
con.Close();//这句怎么不执行????

}
catch { Response.Write("<scrip>alert('上传文件不存在')</scrip>"); }
}

搜索更多相关主题的帖子: 数据 
2007-06-20 17:34
川流不息
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2000
专家分:47
注 册:2006-11-8
收藏
得分:0 
cmd.ExecuteNonQuery();
你是不是這句出錯,然後直接跳到catch中去了?那樣是不會執行下面的close方法的。

日月更替,天地輪回,人間已是幾回春。 江山不老,人正少年,只手能擎半邊天。
2007-06-20 18:08
yichen
Rank: 1
等 级:新手上路
帖 子:303
专家分:0
注 册:2005-3-9
收藏
得分:0 
再加个finally

衣带渐宽终不悔, 为伊消得人憔悴。 纸上得来终觉浅, 绝知此事要躬行。
2007-06-20 18:21
川流不息
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2000
专家分:47
注 册:2006-11-8
收藏
得分:0 
con.Close();//这句怎么不执行????
那就把這句放在finally裡面吧。

日月更替,天地輪回,人間已是幾回春。 江山不老,人正少年,只手能擎半邊天。
2007-06-20 18:22
xiaobin2012
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-6-3
收藏
得分:0 
回复:(川流不息)con.Close();//这句怎么不执行??...
   finally 没用过 ^_^!

2007-06-20 18:34
xiaobin2012
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-6-3
收藏
得分:0 
this.SqlDataSource1.Insert();这句是不是会跟另外的操作数据库有冲突阿?
错误提示是
不能将值 NULL 插入列 'username',表 'E:\会员注册\APP_DATA\DATABASE.MDF.dbo.userinfo';列不允许有空值。INSERT 失败。语句已终止



2007-06-20 18:52
xiaobin2012
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-6-3
收藏
得分:0 
问题已解决,都不是上两位所说的问题,还是谢谢两位了

this.SqlDataSource1.Insert();这是插入一条数据,原来的下面是插入一条数据
只要把原来的插入改为更新就可以了


string filepath = "", filename = "", mfilename, mfilepath;
if ("" != FileUpload1.PostedFile.FileName)
{
filepath = FileUpload1.PostedFile.FileName;
filename = filepath.Substring(filepath.LastIndexOf(".") + 1);

try
{
mfilepath = Server.MapPath("ima/");
mfilename = filepath.Substring(filepath.LastIndexOf("\\") + 1);
string strsql = "update userinfo set imagepath='ima\\"+mfilename+"'where username='"+TextBox1.Text+"'" ;
con = new SqlConnection(strCon);
con.Open();
SqlCommand cmd = new SqlCommand(strsql, con);
cmd.ExecuteNonQuery();


con.Close();


}


2007-06-20 19:52
川流不息
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2000
专家分:47
注 册:2006-11-8
收藏
得分:0 
错误提示是
不能将值 NULL 插入列 'username',表 'E:\会员注册\APP_DATA\DATABASE.MDF.dbo.userinfo';列不允许有空值。INSERT 失败。语句已终止。
不是你改update的問題,是你以前的insert語句insert into userinfo(imagepath)values('" + mfilepath + "')";
的問題。說你的列'username'不能為空,也就是說你這個字段設置不能為空,那麼就要在插入語句裡面加入這個字段:
insert into userinfo(username,imagepath)values('yourname','" + mfilepath + "')";

而且,你把你的insert改成update難道不會對你的操作造成不同的影響嗎?


日月更替,天地輪回,人間已是幾回春。 江山不老,人正少年,只手能擎半邊天。
2007-06-21 09:14
快速回复:[求助]数据连接的错误
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017770 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved