mysql语句多表查询mysql循环update_MySql多表循环遍历更新
MySql数据库中存在⼤量的表结构,⽽且这些表都存在⼀个共同点,就是表中都有相同字段,⽐如 id,name,city,adress,lat,lng。表中字段id,name,city,adress不允许为空,所以表中这⼏个字段的数据都是已 经赋给实值的,⽽lat与lng(经纬度)是为空的。现在要写⼀个
MySql数据库中存在⼤量的表结构,⽽且这些表都存在⼀个共同点,就是表中都有相同字段,⽐如 id,name,city,adress,lat,lng。表中字段id,name,city,adress不允许为空,所以表中这⼏个字段的数据都是已 经赋给实值的,⽽lat与lng(经纬度)是为空的。现在要写⼀个程序,根据city,adress请求获取数据,把循环每⼀表中根据 city,adress请求获取的数据更新到相应表,相应表中对应的那⼀⾏数据。这句话,可能你有点晕,说⽩了就是,先循环查询遍历表中city与 adress的值,根据city,adress的值请求获取数据,更新到相应⾏中,这个表循环更新完了就跳到下个表中再循环更新,以此类推,直到全部更 新。。。
这是我们做的⼀个程序,当时我还天真的以为⼿动输⼊city和adress请求获取更新,谁不曾料想数据库表中的数据有好⼏万条,要是⼿动累死 你吧,呵呵。。。所以这个程序思想也是从我们同事那获取到的,很有⽤,我也是在不断学习当中,发表出来供⼤家参考,资源共享才能更好的进步
MySql数据库的连接字符串是:
string MySqlString = "Host=ip地址;Port=端⼝号;User id=⽤户名;pwd=密码;Database=数据库名;Character Set=utf8"
第⼀步,
连接数据库,写个根据city,adress请求获取数据的查询⽅法,传个参数(数据库的表名),如Get_Data(string tablename)
查询语句:
string MySqlSelect = "select id,city,address,lat,lng from " + tablename;
然后调⽤ExecuteReader()⽅法将值传出去,注意:表中这⼏个字段应该先建⽴⼀个model类(这⾥不细说,⼤家都懂,就是get{}set{}),⽅便传值
using (MySqlDataReader dataReader = Command.ExecuteReader())
{
while (dataReader.Read())
{
DataModel dataModel = new DataModel();
dataModel.Id = dataReader["id"].ToString();
dataModel.City = (string)dataReader["city"];
dataModel.Address = (string)dataReader["address"];
if (dataReader["latitude"] != DBNull.Value)
hive是干什么的{
dataModel.Latitude = (decimal)dataReader["latitude"];
}
else
dataModel.Latitude = 0.0M;
php怎么调用数据库数据
if (dataReader["longitude"] != DBNull.Value)
{
dataModel.Latitude = (decimal)dataReader["longitude"];
}
else
dataModel.Latitude = 0.0M;
dataSource.Add(dataModel);
}
dataReader.Close();
dataReader.Dispose();
}
numpy随机数第⼆步,
那就是更新⽅法了,从查询到的数据,循环遍历表名更新。更新⽅法中有四个参数,根据city,adress查询出来的id,数据库的表名,以及要更新的字段lat,lng。如Update_Data(string id, string dataTable, decimal lat, decimal lng)
struts2通用漏洞更新语句:
string MySqlUpdata = "update " + dataTable + " set latitude=" + lat + ",longitude=" + lng + " where id=" + id;
plsql导出dmp文件然后执⾏ExecuteNonQuery()⽅法,返回受影响的⾏数。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。