---------------<a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流!-------------

12  优化导入数据
        /// <summary>

/// 优化导入操作

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void button3_Click(object sender, EventArgs e)

{

OpenFileDialog ofd = new OpenFileDialog();

if (ofd.ShowDialog()==DialogResult.OK)

{//创建一次连接

using (SqlConnection conn=new SqlConnection(conStr))

{

conn.Open();

using (SqlCommand cmd=conn.CreateCommand())

{

cmd.CommandText = "insert into T_Person values(@Name,@Age)";

using (FileStream stream = File.OpenRead(ofd.FileName))

{

using (StreamReader reader=new StreamReader(stream))

{

string lines = null;

while ((lines=reader.ReadLine())!=null)

{

string[] line = lines.Split('|');

string name = line[0];

int age = Convert.ToInt32(line[1]);

cmd.Parameters.Clear();//重要!

cmd.Parameters.Add(new SqlParameter("@Name",name));

cmd.Parameters.Add(new SqlParameter("@Age", age));

cmd.ExecuteNonQuery();

}

MessageBox.Show("导入数据成功!");

}

}

}

}

}

}

13  省市联级(DisplayMember  ComoBox加载时要显示的字段; DropDownStyle  ComoBox 只能下拉菜单;)      
       string conStr = @"Data Source=ZHANGLIANG\SQLEXPRESS;Initial Catalog=MyDB;Integrated Security=True";

/// <summary>

/// 加载省

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void Form1_Load(object sender, EventArgs e)

{

using (SqlConnection conn=new SqlConnection(conStr))

{

conn.Open();

using (SqlCommand cmd=conn.CreateCommand())

{

cmd.CommandText = "select * from promary ";

using (SqlDataReader reader=cmd.ExecuteReader())

{

while (reader.Read())

{

Promary promary = new Promary();

promary.ProID = reader.GetInt32(reader.GetOrdinal("proID"));

promary.ProName = reader.GetString(reader.GetOrdinal("proName"));

cmbpromary.Items.Add(promary);

}

}

}

}

}

/// <summary>

/// 加载市

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void cmbpromary_SelectedIndexChanged(object sender, EventArgs e)

{

City city=new City();

Promary promary = (Promary)cmbpromary.SelectedItem;

int i=promary.ProID;

using (SqlConnection conn=new SqlConnection(conStr))

{

conn.Open();

using (SqlCommand cmd=conn.CreateCommand())

{

cmd.CommandText = string.Format("select * from city where proID='{0}'",promary.ProID);

using (SqlDataReader reader=cmd.ExecuteReader())

{

cmbcity.Items.Clear();

while (reader.Read())

{

city.CityID = reader.GetInt32(reader.GetOrdinal("cityID"));

city.CityName = reader.GetString(reader.GetOrdinal("cityName"));

cmbcity.Items.Add(city);

}

}

}

}

}

}

class City {

public int CityID { get; set; }

public string CityName { get; set; }

}

class Promary {

public int ProID { get; set; }

public string ProName { get; set; }

}

14 读取配置中的连接字符串
  <connectionStrings>

<add name="ConnectionStr" connectionString=@"Data Source=ZHANGLIANG\SQLEXPRESS;Initial Catalog=MyDB;Integrated Security=True"/>

//获取配置连接字符串

</connectionStrings>

            stringconstr=ConfigurationManager.ConnectionStrings["ConnectionStr"].ConnectionString

 

15 号码归属地查询
private string constr = ConfigurationManager.ConnectionStrings["newconString"].ConnectionString;

private void button1_Click(object sender, EventArgs e)

{

using (SqlConnection conn=new SqlConnection(constr))

{

conn.Open();

using (SqlCommand cmd=conn.CreateCommand())

{

cmd.CommandText = "delete from T_Numbers";

cmd.ExecuteNonQuery();

}

}

FolderBrowserDialog fbd = new FolderBrowserDialog();

fbd.SelectedPath = @"F:\c#\c#基础\手机号码归属地";

if (fbd.ShowDialog() == DialogResult.OK)

{

string path = fbd.SelectedPath;

string[] files = Directory.GetFiles(path, "*.txt", SearchOption.AllDirectories);

using (SqlConnection conn = new SqlConnection(constr))

{

conn.Open();

using (SqlCommand cmd = conn.CreateCommand())

{

cmd.CommandText = "insert into T_Numbers values(@StartNumber,@EndNumber,@Name)";

foreach (var file in files)

{

string fileName = Path.GetFileNameWithoutExtension(file);

string[] lines = File.ReadAllLines(file, Encoding.Default);

foreach (var line in lines)

{

string[] str = line.Split('-');

string startNumber = str[0];

string endNumber = str[1];

string city = str[2];

cmd.Parameters.Clear();

cmd.Parameters.Add("@StartNumber", startNumber);

cmd.Parameters.Add("@EndNumber", endNumber);

cmd.Parameters.Add("@Name", fileName + city);

cmd.ExecuteNonQuery();

}

}

}

}

}

}

/// <summary>

/// 号码所属地查询

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void button2_Click(object sender, EventArgs e)

{

string No = txtNumber.Text.Trim();

using (SqlConnection conn=new SqlConnection(constr))

{

conn.Open();

using (SqlCommand cmd=conn.CreateCommand())

{

cmd.CommandText = "select * from T_Numbers where startnumber<=@No and @No<=endnumber ";

cmd.Parameters.Add("@No",No);

using (SqlDataReader reader=cmd.ExecuteReader())

{

while (reader.Read())

{

MessageBox.Show(reader.GetString(reader.GetOrdinal("name")));

}

}

}

}

}

------------<a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ---------------
详细请查看:<a href="http://edu.csdn.net" target="blank">http://edu.csdn.net</a>

黑马程序员+ADO.Net基础(下)的更多相关文章

  1. 黑马程序员+ADO.Net基础(中)

    ---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net ...

  2. 黑马程序员+ADO.Net基础(上)

    ---------------<a href="http://edu.csdn.net"target="blank">ASP.Net+Android ...

  3. 黑马程序员:Java基础总结----泛型(高级)

    黑马程序员:Java基础总结 泛型(高级)   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 泛型(高级) 泛型是提供给javac编译器使用的,可以限定集合中的输入类型 ...

  4. 黑马程序员:Java基础总结----类加载器

    黑马程序员:Java基础总结 类加载器   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 类加载器 Java虚拟机中可以安装多个类加载器,系统默认三个主要类加载器,每个 ...

  5. 黑马程序员:Java基础总结----反射

    黑马程序员:Java基础总结 反射   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 反射 反射的基石:Class类 Class类代表Java类,它的各个实例对象又分别 ...

  6. 黑马程序员:Java基础总结----网络编程

    黑马程序员:Java基础总结 网络编程   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 网络编程 网络通讯要素 . IP地址 . 网络中设备的标识 . 不易记忆,可用 ...

  7. 黑马程序员:Java基础总结----正则表达式

    黑马程序员:Java基础总结 正则表达式   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 正则表达式 import  java.util.regex.*; 符合一定规 ...

  8. 黑马程序员:Java基础总结----静态代理模式&动态代理

    黑马程序员:Java基础总结 静态代理模式&动态代理   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 静态代理模式 public  class  Ts {   ...

  9. 黑马程序员:Java基础总结----枚举

    黑马程序员:Java基础总结 枚举   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 枚举 为什么要有枚举 问题:要定义星期几或性别的变量,该怎么定义?假设用1-7分别 ...

随机推荐

  1. Oracle 12c 的新功能:模式匹配查询

    模式匹配SQL 在一系列的数据行中辨识出某种模式是一种广泛需求的功能,但在以前的SQL中是不可能的.有许多解决方法,但这些都很难写,很难理解,而且执行效率低下.在Oracle数据库中,从12c开始,你 ...

  2. Android框架之AndroidAnnotations实战

    方案一: 下载 androidannotations-bundle-3.3.2.zip 方案二:   楼主选用开发环境:android studio 新建项目  修改app 下的build.gradl ...

  3. 关于C++的递归调用(n的阶乘为例)

    C++,是入门编程界的一门初期的语言.今天我们浅谈一下有关C++的递归调用. 在没有继承,多态,封装之前,C++几乎看成是C语言,除了一些简单的输出和头文件. 具体代码实现如下: #include&l ...

  4. 排序陷阱 List.Sort Linq.OrderBy

    部分内容摘自:http://www.th7.cn/Program/net/201511/692766.shtml C#框架里面主要提供了两种排序方式:Array.Sort Linq.Orderby. ...

  5. Java中有四种常见的Map实现方法

    在 HTML5 之前我们做图片预览主流做法有两种,第一种是通过 Flash 插件来做预览,第二种是 Ajax 实现的假预览,也就是说选择图片文件后,图片其实已经异步上传到服务器,服务器处理后返回图片路 ...

  6. php嵌套数组递归搜索返回数组key

    var rewardTypes={"experience":{"\u7ecf\u9a8c\u503c":{"1":"\u660e\ ...

  7. Windows下的UDP爆了10054--远程主机强迫关闭了一个现有的连接

    原文地址:http://www.cnblogs.com/pasoraku/p/5612105.html 故事是这样的. 前几天在网上逛,看到了一个漂亮的坦克模型. 我觉得这个坦克可以做一个游戏,那需要 ...

  8. AngularJS实现单页应用的原理——路由(Route)

    AngularJS实现单页应用的原理——路由(Route) 路由:告诉你一个通往某个特定页面的途径 http://127.0.0.1/index.html#/start http://127.0.0. ...

  9. HttpWebResponse远程服务器返回错误: (500) 内部服务器错误。

    现象 我们编码实现请求一个页面时,请求的代码类似如下代码: HttpWebRequest req = (HttpWebRequest)WebRequest.Create(strUrl); req.Us ...

  10. 深入研究C语言 第四篇

    这里更多探究的是指针的机制. 用debug对下面程序进行分析,记录每一条C语句运行后,相关内存单元的值. 程序a.c 注意理解指针机制 我们编写如下代码: 编译加载进debug查看: 我们先看其反汇编 ...