• C#往数据库上传文件


    在C#中进行数据库上传通常涉及以下步骤:

    1. 连接数据库:使用适当的数据库连接库(如ADO.NET)连接到目标数据库(例如SQL Server、MySQL等)。

    2. 上传文件:通常情况下,上传文件后会获得文件的临时路径或内存中的字节流。

    3. 将文件存储到数据库:将文件内容存储到数据库中的表中,通常是将文件内容作为二进制数据存储在表的相应列中。

    这里提供一个基本的示例,假设你要将文件存储到SQL Server数据库中:

    1. using System;
    2. using System.Data.SqlClient;
    3. using System.IO;
    4. namespace FileUploadToDatabase
    5. {
    6. class Program
    7. {
    8. static void Main(string[] args)
    9. {
    10. string filePath = @"C:\Path\To\Your\File.txt"; // 替换为你的文件路径
    11. // 读取文件内容
    12. byte[] fileContent = File.ReadAllBytes(filePath);
    13. // 连接数据库
    14. string connectionString = "Data Source=YourServer;Initial Catalog=YourDatabase;Integrated Security=True";
    15. using (SqlConnection connection = new SqlConnection(connectionString))
    16. {
    17. try
    18. {
    19. connection.Open();
    20. string query = "INSERT INTO Files (FileName, FileContent) VALUES (@FileName, @FileContent)";
    21. SqlCommand command = new SqlCommand(query, connection);
    22. command.Parameters.AddWithValue("@FileName", Path.GetFileName(filePath));
    23. command.Parameters.AddWithValue("@FileContent", fileContent);
    24. int rowsAffected = command.ExecuteNonQuery();
    25. Console.WriteLine($"{rowsAffected} rows inserted.");
    26. }
    27. catch (Exception ex)
    28. {
    29. Console.WriteLine($"Error: {ex.Message}");
    30. }
    31. }
    32. }
    33. }
    34. }

    在这个示例中:

    • filePath 变量指定要上传的文件路径。
    • File.ReadAllBytes(filePath) 读取文件内容并将其存储为字节数组 fileContent
    • 使用 SqlConnection 建立到数据库的连接。
    • 执行 INSERT 查询将文件名和文件内容插入到数据库表中。注意,FileContent 列应该是 VARBINARY(MAX) 类型,以便存储二进制数据。

    确保替换示例中的数据库连接字符串 (connectionString) 为你的实际数据库连接信息,并根据你的表结构调整查询和参数。

  • 相关阅读:
    23种设计模式之责任链模式
    vue的响应式原理:依赖追踪
    Hadoop_HDFS
    龙格-库塔(Runge-Kutta)方法C++实现
    mybatis 八股篇(1)
    Python 学习 第二册 第14章 网络编程
    JSP config对象
    Nestjs中控制器和路由的配置使用
    qt 多语言版本 QLinguist使用方法
    ELK日志收集系统
  • 原文地址:https://blog.csdn.net/sunyao1314/article/details/140393805