一、Add方法
string sql = "update Table1 set name = @name where ID = @ID";
SqlParameter sp = new SqlParameter("@name", "Pudding"); //生成一个名字为@name的参数,必须以@开头表示是添加的参数,并给其赋值"Pudding"
cmd.Parameters.Add(sp); //把参数变量添加到命令对象中去
sp = new SqlParameter("@ID", "1");
cmd.Parameters.Add(sp);
该方法每次只能添加一个SqlParameter。上述代码的功能是将ID值等于1的字段name更新为Pudding(人名)。
二、AddRange方法
?
1
2 SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@name", "Pudding"), new SqlParameter("@ID", "1") };
cmd.Parameters.AddRange(paras);
显然,Add方法在添加多个SqlParameter时不方便,此时,可以采用AddRange方法。
下面是通过SqlParameter向数据库存储及读取图片的代码。
public int SavePhoto(string photourl)
{
FileStream fs = new FileStream(photourl, FileMode.Open, FileAccess.Read);//创建FileStream对象,用于向BinaryReader写入字节数据流
BinaryReader br = new BinaryReader(fs);//创建BinaryReader对象,用于写入下面的byte数组
byte[] photo = br.ReadBytes((int)fs.Length); //新建byte数组,写入br中的数据
br.Close();//记得要关闭br
fs.Close();//还有fs
string sql = "update Table1 set photo = @photo where ID = '0'";
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=.\SQLExpress;Integrated Security=true;AttachDbFilename=|DataDirectory|\Database.mdf;User Instance=true";
SqlCommand cmd = new SqlCommand(sql, conn);
SqlParameter sp = new SqlParameter("@photo", photo);
cmd.Parameters.Add(sp);
try
{
conn.Open();
return (cmd.ExecuteNonQuery());
}
catch (Exception)
{
return -1;
throw;
}
finally
{
conn.Close();
}
}
public void ReadPhoto(string url)
{
string sql = "select photo from Table1 where ID = '0'";
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=.\SQLExpress;Integrated Security=true;AttachDbFilename=|DataDirectory|\Database.mdf;User Instance=true";
SqlCommand cmd = new SqlCommand(sql, conn);
try
{
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();//采用SqlDataReader的方法来读取数据
if (reader.Read())
{
byte[] photo = reader[0] as byte[];//将第0列的数据写入byte数组
FileStream fs = new FileStream(url,FileMode.CreateNew);创建FileStream对象,用于写入字节数据流
fs.Write(photo,0,photo.Length);//将byte数组中的数据写入fs
fs.Close();//关闭fs
}
reader.Close();//关闭reader
}
catch (Exception ex)
{
throw;
}
finally
{
conn.Close();
}
}
}
京喜app是一款京东旗下推出的网购电商平台,京喜app里面能够帮助你省下的大量的金额,很多的优惠卷免费发送,先领劵在购物省一大笔钱。还有每天推荐精品好货为你提供最优质的商品,精细分类让你挑选起来更简易,需要的用户快来下载体验把。
旅行串串游戏下载是一款非常好玩的休闲经营养成类型游戏,旅行串串游戏安卓下载在游戏剧情里,你跟女友辞去了工作,来了一场说走就走的旅行,旅途中你会看到世界各地的文化、风景、美食等。非常的有意思。赶快下载试试。
泡沫冬景破解版是一款今年超级火爆galgame。泡沫冬景破解免费版游戏正版是要收费18元才能玩的,小编在这里找到了一个免费的下载渠道,但内容是跟正版一模一样的哦。喜欢这款游戏的欢迎来ucbug下载站下载体验。
百度地图2020最新版是一款最新的地图导航手机软件,百度地图2020最新手机版软件内有着全网最新的地图路线,而且增添了许多实用功能,可以看到公交车的实时定位,也可以直接在地图软件上预估打车价格等等。非常方便。
高德地图手机版是目前手机上最好用的一款地图软件之一,高德地图手机版软件内有着非常精准的定位系统,包括的人的朝向都能够清晰观察到。软件内还有实时路况播报,方便你开车时避开高峰路段,节省路途时间。
1号店app是一款非常好用网上电子商务平台。1号店app可以说是一家网上百货超市,几乎所有日常生活用品等可以在1号店上进行购买,覆盖食品、饮食、进口商品、服饰、鞋帽、清洁用品、数码、家电等非常多的种类。同时1号店拥有独具特色的集成供应链既保证了商品质