如何将一个数组存入数据库中

如何将一个数组存入数据库中,第1张

将一个数组存入数据库和使用的语言有关系。

通常的做法是将数组的内容转换后传递到和语言相关的数据处理方法中进行处理。

涉及到的数据转换的方法:

1:可以转换为json格式

[{key:1},{key:2}]

2:可以转换为xml

<values>

<key>1</key><key>2</key>

</values>

数据处理方法解析转换后的字符串,执行数据库保存 *** 作。

使用ArrayList会方便许多,我写了个3个combobox的例子

首先添加引用   using System.Collections

步骤一:读取数据

将数据库的信息读取到yige DataSet(ds)中

定义 ArrayList al=new ArrayList()

richTextBox1.Text = "《------------结果-----------》"

al.Clear()//清楚 al 数组

//以下将姓名读取到 bl 中

ArrayList bl = new ArrayList()

if (comboBox1.SelectedIndex >= 0) { if (!bl.Contains(comboBox1.SelectedItem.ToString())) { bl.Add(comboBox1.SelectedItem.ToString()) } }

if (comboBox2.SelectedIndex >= 0) { if (!bl.Contains(comboBox2.SelectedItem.ToString())) { bl.Add(comboBox2.SelectedItem.ToString()) } }

if (comboBox3.SelectedIndex >= 0) { if (!bl.Contains(comboBox3.SelectedItem.ToString())) { bl.Add(comboBox3.SelectedItem.ToString()) } }

//从DataSet中检索出对应的学号

for (int i = 0 i < bl.Count i++)

{

for (int j = 0 j < ds.Tables[0].Rows.Count j++)

{

if (ds.Tables[0].Rows[j]["姓名"].ToString() == bl[i].ToString())

{

al.Add(ds.Tables[0].Rows[j]["学号"].ToString())

}

}

}

//将数组连成string(1|2|3|4|5)

string str = ""

for (int i = 0 i < al.Count i++)

{

if (i == 0)

{

str += al[i].ToString()

}

else { str += "|" + al[i].ToString() }

}

// richTextBox1.Enabled = true

//显示在richTextBox1中

richTextBox1.Text += "\n" + str

/*关于多选问题推荐使用图上其他3中组建*/

保存字节数组到数据库分两步:

第一、利用FileInputStream.read(byte[])方法把内容读取到byte[]数组中,比如图片是由二进制数组成的,就可以定义为一个字节数组。

第二、在数据库中对应记录字段应该设置为blob类型,这样就能够顺利保存了

事例代码如下:

PreparedStatement stmt = connection.generatePreparedStatement("INSERT INTO ... ")

stmt.setBytes(1, yourByteArray)

其中,yourByteArray是你读出来的字符数组。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9999242.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存