
按照你的方法我来说一个具体的流程:
先把数组储存为文件
将文件以流的形式读取
将流update到表中,和你那些条件一起insert也行,注意,一定要使用参数化插入,参数类型就选blob
你数据库中的值类型必须是和你程序匹配的
执行后你去查查,我亲自尝试了这个方法,是成功的,
把数组转成json或其他字符串在写入数据库,不转换字符串无法写入或自由Array,我是没试过,反正我知道是无法写入,我都是转成json后在写入。
<php$array=array(
"data1"=>"data1",
"data2"=>array(
"data22"=>"data22",
"data222"=>"data222"
),
"data3"=>"data3"
);
$encode=json_encode($array); //数据库写入转换
$addslashes=addslashes(json_encode($array)); //如果只用英文字符的话可以直接用上面,用中文或有带斜杠/,PHP写入数据库的时候会去掉斜杠/,所以addslashes函数在转换下写入
$decode=json_decode($array,true); //数据库读取转换
>
建2个页面
1、testphp页面,代码如下:
<title></title>
<script src="jquery-142minjs" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
x=100000;
y=1;
$("#dosubmit")click(function(){
var rand=parseInt(Mathrandom() (x - y ));
var rand1=StringfromCharCode(Mathfloor( Mathrandom() 26) + "a"charCodeAt(0));
var col="<input name=info["+rand1+rand+"] type='text' class='text' value='"+rand+"' />";
$("input[id=submit]")before(col);
})
$("#submit")click(function(){
$("form input[class=text]")each(function(){
var val=$(this)val();
})
})
})
</script>
<meta >
下面的例子能够实现你的要求,看不懂找我
//数据源dt,这是我自己随便造的没进数据库,你把数据库里查的结果用datatabl
接收
DataTable dt = new DataTable();
dtColumnsAdd("a",typeof(int));
dtColumnsAdd("b",typeof(int));
dtColumnsAdd("c",typeof(int));
for (int i = 0; i < 8; i++)
{
DataRow row = dtNewRow();
row["a"] = i;
row["b"] = i + 2;
row["c"] = i + 8;
dtRowsAdd(row);
}
声明二维数组
int x = dtRowsCount;
int y = dtColumnsCount;
int[,] num = new int[x, y];
遍历dt将查到的数据加给二维数组
for (int i = 0; i < x; i++)
{
for (int j = 0; j < y; j++)
{
num[i,j] = intParse(dtRows[i][j]ToString());
}
}
遍历加完数据的二维数组并输出结果
SystemTextStringBuilder sb = new SystemTextStringBuilder();
sbAppend("<table>");
for (int i = 0; i < x; i++)
{
sbAppend("<tr>");
for (int j = 0; j < y; j++)
{
sbAppend("<td>"+num[i,j]ToString()+"</td>");
}
sbAppend("</tr>");
}
sbAppend("</table>");
ResponseWrite(sbToString());
因为楼主没有说数据库的名字,还有表名所有,我写成了方法的入口参数了。我觉得楼主应该会取数组的值的哦。
环境: NET FRAMEWORK 20
需要引入的命名空间 SystemDataSqlClient
/// <summary>
/// 插入数据。
/// </summary>
/// <param name="database">数据库名</param>
/// <param name="userId">登录数据库的用户名</param>
/// <param name="password">登录密码</param>
/// <param name="srcTable">数据表名</param>
/// <param name="name">表字段 name</param>
/// <param name="sex">表字段 sex</param>
/// <returns></returns>
public int InsertData
( string database, string userId, string password, string srcTable, string name, string sex )
{
int affected = -1; // 用于记录受影响的行数。
// 构造连接字符串
string conStr = StringFormat( @"server=localhost;database={0};uid={1};password={2};", database, userId, password );
// 构造 T-SQL 语句
string sql = StringFormat( @"Insert INTO [{0}]( [name], [sex] ) VALUES( @name, @sex )", srcTable );
using( SqlConnection con = new SqlConnection( conStr ) )
{
SqlCommand cmd = new SqlCommand( sql );
// 设置参数的值
cmdParametersAddWithValue( "@name", name );
cmdParametersAddWithValue( "@sex", sex );
try
{
// 执行 *** 作,并记录受影响的行数。
affected = cmdExecuteNonQuery();
}
catch( SqlException sqlEx )
{
throw new Exception( "数据库异常", sqlEx );
}
catch
{
throw new Exception( "未知错误" );
}
finally
{
cmdCancel();
cmdDispose();
}
}
return affected;
}
以上就是关于Oracle 数据库,想在一张表中的一个元素中插入一个大数组,该怎么做全部的内容,包括:Oracle 数据库,想在一张表中的一个元素中插入一个大数组,该怎么做、php数组插入数据库这个功能该怎么实现、php中 jquery如何获取js动态添加的文本框数组值,并插入mysql数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)