当前位置:编程学习 > C#/ASP.NET >>

急呀!大家帮我看,怎么提交不到数据库中去呀!30分

textarea.aspx页面:<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/user.master" CodeFile="textarea.aspx.cs" Debug="true" Inherits="textare" Title="留言版"%>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <span style="font-size: 16pt; font-family: 楷体_GB2312">留言版
        <hr style="color: black" />
    </span>
    <table border="0">
    <tr><td>类  型:</td> <td style="width: 169px"><asp:DropDownList ID="dropdownlist1" runat="server">
    <asp:ListItem>对网站的意见</asp:ListItem>
    <asp:ListItem>对公司的建议</asp:ListItem>
    <asp:ListItem>具有合作意向</asp:ListItem>
    <asp:ListItem>产品投诉</asp:ListItem>
    <asp:ListItem>服务投诉</asp:ListItem>
    </asp:DropDownList>
    </td></tr>
    <tr><td>标  题:</td><td style="width: 169px"><asp:textbox ID="textbox1" runat="server" MaxLength="200"></asp:textbox></td><td><asp:RequiredFieldValidator ID="requiredfieldvalidator1" runat="server" ControlToValidate="textbox1" ErrorMessage="标题文本框不能为空"></asp:RequiredFieldValidator></td></tr>
    <tr><td>姓  名:</td><td style="width: 169px"><asp:TextBox ID="textbox2" runat="server" MaxLength="50"></asp:TextBox></td><td><asp:RequiredFieldValidator ID="requiredfieldvalidator2" runat="server" ControlToValidate="textbox2" ErrorMessage="姓名文本框不能为空"></asp:RequiredFieldValidator></td></tr>
    <tr><td>E-mail:</td><td style="width: 169px"><asp:TextBox ID="textbox3" runat="server" maxlength="50"></asp:TextBox></td><td><asp:RequiredFieldValidator ID="requiredfieldvalidator3" runat="server" ControlToValidate="textbox3" ErrorMessage="E-mail文本框不能为空"></asp:RequiredFieldValidator></td></tr>
    
    <tr><td>来  自:</td><td style="width: 169px"><asp:DropDownList ID="dropdownlist4" runat="server" >
    <asp:ListItem>北京</asp:ListItem>
    <asp:ListItem>广东</asp:ListItem>
    <asp:ListItem>广西</asp:ListItem>
    <asp:ListItem>四川</asp:ListItem>
    <asp:ListItem>浙江</asp:ListItem>
    <asp:ListItem>重庆</asp:ListItem>
    <asp:ListItem>云南</asp:ListItem>
    <asp:ListItem>贵州</asp:ListItem>
    <asp:ListItem>江苏</asp:ListItem>
    <asp:ListItem>陕西</asp:ListItem>
    <asp:ListItem>安徽</asp:ListItem>
    <asp:ListItem>内蒙</asp:ListItem>
    <asp:ListItem>新疆</asp:ListItem>
    <asp:ListItem>黑龙江</asp:ListItem>
    <asp:ListItem>湖南</asp:ListItem>
    <asp:ListItem>湖北</asp:ListItem>
    <asp:ListItem>河南</asp:ListItem>
    <asp:ListItem>甘肃</asp:ListItem>
    <asp:ListItem>福建</asp:ListItem>
    <asp:ListItem>江西</asp:ListItem>
    <asp:ListItem>海南</asp:ListItem>
    <asp:ListItem>山东</asp:ListItem>
    <asp:ListItem>上海</asp:ListItem>
    <asp:ListItem>吉林</asp:ListItem>
    <asp:ListItem>辽宁</asp:ListItem>
    <asp:ListItem>山西</asp:ListItem>
    <asp:ListItem>天津</asp:ListItem>
    <asp:ListItem>河北</asp:ListItem>
    </asp:DropDownList></td></tr>
    <tr><td>电  话:</td><td style="width: 169px"><asp:TextBox ID="textbox4" runat="server" maxlength="50"></asp:TextBox></td><td><asp:RequiredFieldValidator ID="requiredfieldvalidator4" runat="server" ControlToValidate="textbox4" ErrorMessage="电话文本框不能为空"></asp:RequiredFieldValidator></td></tr>
    <tr><td>内  容:</td><td style="width: 169px"><asp:TextBox ID="textbox5" runat="server" maxlength="50" TextMode="multiline" Rows="10" Columns="40"></asp:TextBox></td><td><asp:RequiredFieldValidator ID="requiredfieldvalidator5" runat="server" ControlToValidate="textbox5" ErrorMessage="内容文本框不能为空"></asp:RequiredFieldValidator></td></tr>
    <tr><td></td><td style="width: 169px"><asp:button ID="button1" runat="server" text="提交信息" OnClick="btnSubmit_Click"/></td><td></td></tr>
    </table>
   </asp:Content>
textarea.aspx.cs代码:using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class textare : System.Web.UI.Page
{
     protected void btnSubmit_Click(object sender,EventArgs e)
     {
    string constring=ConfigurationManager.ConnectionStrings["sqlconnedtion"].ConnectionString;
     SqlConnection mycon=new SqlConnection(constring);
     string strsql ="Insert into textarea (type,title,name,E-Mail,comefrom,tel,content) values (" + this.dropdownlist1.SelectedValue +"," + this.textbox1.Text + "," + this.textbox2.Text + "," + this.textbox3.Text + "," + this.dropdownlist4.SelectedValue + "," + this.textbox4.Text + "," + this.textbox5.Text + ")";
     SqlCommand mycmd = new SqlCommand(strsql, mycon);
        try
        {
            mycon.Open();
            mycmd.ExecuteNonQuery();
            }
    catch(Exception ex)
        {
    Response.Write(ex.Message);
    }
    finally
        {
            mycon.Close();
        }

     }
   
    
    }
  

  
--------------------编程问答-------------------- 保存不到数据库中,调试时提示为: System.ArgumentException: 不支持关键字: “datasource”。 --------------------编程问答-------------------- insert语句,缺单引号
自己DEBUG一下. --------------------编程问答-------------------- 同意楼上的观点,
我感觉,你的insert语句中,不应该都是数字性的信息吧,
所以,你应该把SQL语句按如下格式写
type 数字型
title varchar
name varchar
后面的不写了
Insert into textarea (type,title,name) values (1,'对网站的意见 ','abc')

你没有写单引号,所以才这样的。
你再顺便检查一下你连接串的格式,是否正确 --------------------编程问答--------------------
引用 3 楼 je_ck 的回复:
同意楼上的观点,
我感觉,你的insert语句中,不应该都是数字性的信息吧,
所以,你应该把SQL语句按如下格式写
type 数字型
title varchar
name varchar
后面的不写了
Insert into textarea (type,title,name) values (1,'对网站的意见 ','abc')

你没有写单引号,所以才这样的。
你再顺便检查一下你连接串的格式,是否正确
--------------------编程问答--------------------
引用 1 楼 cadwork 的回复:
保存不到数据库中,调试时提示为: System.ArgumentException: 不支持关键字: “datasource”。


感觉像是连接字符串写的不正确

自己多调式一下吧,看看是哪一行代码出的错 --------------------编程问答-------------------- 建议楼主用参数插入 --------------------编程问答-------------------- 插入字符串的问题! --------------------编程问答-------------------- 用 sql 事件易做图 看一下 sql 执行了没有  
 没执行 则表示 数据库连接字符串错误  
  如果执行了 并且产生 sql 错误 则表示 insert into 语句错误  你就仔细检查错误 --------------------编程问答--------------------      String strsql = String.Format(@"insert into textarea(type,title,name,E-Mail,comefrom,tel,content)values({0},{1},{2},{3},{4},{5},{6})", this.dropdownlist1.SelectedValue, this.textbox1.Text, this.textbox2.Text, this.textbox3.Text,
我改成这样的格式都不管用呀 --------------------编程问答-------------------- 向数据库追加数据的时候如果包含字符,字符串里要加单引号
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,