c# - 数据库中的数组插入

标签 c# sql mysql arrays

如何最好地将数组(100 或更多长度)放入数据库(MySQL)?

我不想多次访问数据库,因为它负载太大了。

所以我的解决方案如下:

string insert = "INSERT INTO programs (name, id) VALUES ";

        for(int i = 0; i < name.Length; i++)
        {
            if (i != 0)
            {
                insert = insert + ",(";
            }
            else
            {
                insert = insert + "(";
            }

            insert = insert + "'" + name[i] + "','" + id[i] + "'";

            insert = insert + ")";
        }

        //INSERT INTO programs (name, id) VALUES ('Peter','32'),('Rikko','343') ....

但也许是更快的版本?

谢谢

最佳答案

如果名称和 ID 可以被用户更改(可能是 SQL 注入(inject)),您的解决方案是非常不安全的。我建议使用准备好的语句来加快速度。 MySQL documentation 中有一个示例

关于c# - 数据库中的数组插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2534199/

相关文章:

sql - Postgresql SQL 根据表 2 中的条件从表 1 中选择项目

c# - 在 for 循环中更新表

c# - 如何使用 ContinueWith 正确管理任务中的异常

c# - 为什么我不能在静态类中有实例成员,但我可以在静态方法中有实例成员?

c# - 如何在ASP.NET中使用DataList单独显示组数据?

mysql - Power bi 到本地主机上的 Mysql

php - 在标签上搜索时如何获得包含所有标签的文章?

c# - 如何在Windows Phone 8 中连续旋转?

c# - 我如何获得更多 SQL Server 和 T-SQL 经验

sql - MERGE 也插入 NULL 记录