当前位置: 首页 > 面试题库 >

如何使用C#将数据插入SQL表以及实现上传功能?

郎恺
2023-03-14
问题内容

以下是我尝试将数据插入“ ArticlesTBL”表中的代码。我也想将图像文件上传到我的计算机。

我收到错误消息:“ UploadedUserFiles”附近的语法不正确。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Data;
using System.Data.SqlClient;
using System.Web.Configuration;

public partial class _CopyOfSubmitArticle : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}

protected void uploadbutton_Click(object sender, EventArgs e)
{
    string UpPath = Server.MapPath("~/UploadedUserFiles");

        int imgSize = FileUpload1.PostedFile.ContentLength;
        string imgName = FileUpload1.FileName;
        string imgPath = "UploadedUserFiles/" + imgName;

        if (FileUpload1.PostedFile.ContentLength > 1000000)
        {
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Alert", "alert('File is too big')", true);
        }

        else
        {
            FileUpload1.SaveAs(Server.MapPath(imgPath));
            myinfo.Text = "file" + imgPath + "uploaded.";
        }



    String connectionString = WebConfigurationManager.ConnectionStrings["ConnectAntiFrack"].ConnectionString;

    SqlConnection myConnection = new SqlConnection(connectionString);

    myConnection.Open();

    string ArticleImg = "UploadedUserFiles/" + FileUpload1.FileName;
    string ArticleTitle = ArticleTitleTextBox.Text;
    string ArticleContent = ArticleContentTextBox.Text;
    string ArticleType = ArticleTypeDropdown.Text.ToString();
    string ArticleAuthor = ArticleAuthorTextBox.Text.ToString();
    string ArticleBrief = ArticleBriefTextBox.Text;
    string ArticleDateTime = DateTime.Now.ToShortTimeString();

    string query = "INSERT INTO ArticlesTBL (ArticleTitle, ArticleContent, ArticleType, ArticleImg, ArticleBrief,  ArticleDateTime, ArticleAuthor, ArticlePublished, ArticleHomeDisplay, ArticleViews) VALUES (" + ArticleTitle +", " + ArticleContent +", "+ ArticleType +" " + ArticleImg +", "+ ArticleBrief +"," + ArticleDateTime + ", "+ ArticleAuthor +",'False', 'False', '0')";

    SqlCommand myCommand = new SqlCommand(query, myConnection);

    myCommand.ExecuteNonQuery();

    //       myinfo.Text = "connection to db is made";
    myConnection.Close();

}

问题答案:

您应该在查询中使用参数来防止攻击,例如有人输入'); drop table ArticlesTBL;--' 了其中一个作为值之一。

string query = "INSERT INTO ArticlesTBL (ArticleTitle, ArticleContent, ArticleType, ArticleImg, ArticleBrief,  ArticleDateTime, ArticleAuthor, ArticlePublished, ArticleHomeDisplay, ArticleViews)";
query += " VALUES (@ArticleTitle, @ArticleContent, @ArticleType, @ArticleImg, @ArticleBrief, @ArticleDateTime, @ArticleAuthor, @ArticlePublished, @ArticleHomeDisplay, @ArticleViews)";

SqlCommand myCommand = new SqlCommand(query, myConnection);
myCommand.Parameters.AddWithValue("@ArticleTitle", ArticleTitleTextBox.Text);
myCommand.Parameters.AddWithValue("@ArticleContent", ArticleContentTextBox.Text);
// ... other parameters
myCommand.ExecuteNonQuery();


 类似资料:
  • 本文向大家介绍C#实现文件上传以及多文件上传功能,包括了C#实现文件上传以及多文件上传功能的使用技巧和注意事项,需要的朋友参考一下 一、前端搭建 1、前端用到js:uploadify(下载地址:http://www.uploadify.com/download/)、layer (下载地址:http://layer.layui.com/),下载之后把它们放在你的项目里 列如 2、根据你的需要在你项目

  • 问题内容: 我需要帮助,以从R语言向SQL服务器写入一个简单的数据行。(使用RODBC或其他方式)。 问题答案: 您可以使用where写入所有数据(所有行)。这将在您的数据库中创建一个带有名称的表。 然后,您可以通过附加现有表。

  • 我是新加入这个网站的。我有点小问题。我需要知道如何使用C#将数据插入多个SQL Server表。英语不是我的母语,所以如果有一些拼写错误,很抱歉。 这是我的C#代码 这是我运行此代码时遇到的错误。请帮助解决此问题

  • 本文向大家介绍C#实现SQL批量插入数据到表的方法,包括了C#实现SQL批量插入数据到表的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现SQL批量插入数据到表的方法。分享给大家供大家参考,具体如下: 更多关于C#相关内容感兴趣的读者可查看本站专题:《C#数据结构与算法教程》、《C#常见控件用法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》 希望本

  • 我想使用Java将用户提供的输入插入Sql表,但不知道需要多少列。 如。 这个查询不起作用,因为我不知道列名,即ID,name。 我想要一个对任何插入数据都通用的查询。

  • 问题内容: 我在SQL数据库中有四个coloum表。前三个列的信息由另一个来源提供。默认情况下,coloum 4设置为null。 然后,我获得了一个带有数据表的胜利表格,该数据表使用以下代码填充了来自sql tabase的信息: 现在,可以很好地获取我的数据。 然后,用户可以更改第4列中的空值。 我如何轻松地将这些更改从数据表写回到SQL表中? 换句话说,一旦屏幕上的数据表具有附加值,我该如何将更