博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学了N年英语,你学会翻译了吗?——最基本的数据库连接
阅读量:6980 次
发布时间:2019-06-27

本文共 2243 字,大约阅读时间需要 7 分钟。

QQ交流群:13033480

刚上大学的时候,很激动,也很兴奋。其中,一个主要的兴奋点,就是学校的图书馆…

馆,大...;

书,多…

特别是大部头的英文版的书,中学里是绝没有的。

我兴冲冲地借了一本《三国演义》,回来小心地打开,看到了这么一句:

“Life is long”……

我的心,凉了……

拔凉拔凉的............

 

这是曹操的那句千古名句吗????

“人生几何”????

我怎么就读不出来这种味了呢????

生活是长的...,你哪怕给我译成,生活是漫长的,也些许有点味哈......

 

直到后来,我学汇编语言的时候,才真真的体会到了,什么叫直译,什么叫意译…

 

汇编语言,有三种读法,相应地,也就有三种译法:

一种是,一句一句地读,这样子读,主要是看看,每一句里,有没有自己不熟悉的指令,如果直接就翻译,没法看;

一种是:一块一块地读,但,是直译,主要是看看,这一段,主要进行了什么操作,翻译出来,好象说明了问题,但罗里巴罗嗦,你自己看着都烦;

第三种:一块一块地读,但,是意译,这时,你要真真地看出,这一段代码,在干什么??

 

汇编语言是这样的,什么语言,应该也都是这样的…

我们来看看这段代码吧:

string connectionString = "Server=.\\SQLEXPRESS;Database=NetShop;Trusted_Connection=SSPI";string cmdText = "SELECT * FROM Category";SqlConnection conn = new SqlConnection();conn.ConnectionString = connectionString;SqlCommand cmd = new SqlCommand();cmd.Connection = conn;cmd.CommandType = CommandType.Text;cmd.CommandText = cmdText;conn.Open();SqlDataReader rdr = cmd.ExecuteReader();while (rdr.Read()){    Response.Write(rdr["Name"] + "
");}rdr.Close();conn.Close();

 

这十四行代码,有十一行,我们前面,已经讲过了,相信你能理解,不需要我再说什么了,让我们来读一下这一段,三行代码吧:

SqlDataReader rdr = cmd.ExecuteReader();

while (rdr.Read())

{

    Response.Write(rdr["Name"] + "<br/>");

}

 

一、一句一句地读:

 

1、SqlDataReader rdr = cmd.ExecuteReader();

这一句,是声明了一个SqlDataReader指针,它指向的是cmd.ExecuteReader()获得的一个表格;

这个表格,是一个SqlDataReader类,这个类,在这里,主要是存放数据的,里面应该有几行代码,或者函数,帮助我们管理这个类里面的数据。

 

2、while (rdr.Read())

这一句里,while,大家都熟悉,rdr.Read(),是前进到SqlDataReader表格的下一行,如果存在下一行,就返回个true,如果不存在了,或者说没有数据了,就返回个false。

这个SqlDataReader表格数据,只能一行一行的读取,前进到哪一行,读取哪一行,并且是处于连接状态的。

 

3、Response.Write(rdr["Name"] + "<br/>");

这一句,主要是那个rdr[“Name”]了,好象不需要讲什么,猜都能猜得出来,这是读取SqlDatareader表格数据中,某一行的,“Name”中的值了。

 

二、一段一段地读,直译:

这是一个循环,每次循环,先判断rdr.Read()返回的值是不是true,如果是true,就说明表格中还有一行数据,就读取这一行数据中“Name”字段的值,并显示到浏览器上,如果是false,就说明,表格没有下一行数据了,循环就结束。这样读、这样译,好象差不多了。

 

三、一段一段地读,意译:

意译,关键是要看这一段,倒底是干什么的了。

我是这样翻译的,这是一个“遍历”,把SqlDataReader表格中的所有Name读出来,显示到到浏览器上。

言简意赅,好象还有点味,不是吗??

 

是的,这是一个遍历,听说过密码的暴力破解吧?很血惺,很刺激吧?其实,那也只是一个遍历,它的实质过程,就是用所有可能的密码组合,一个一个,挨个试一遍。

你以前学的很多循环,从数组开始,到二维数组的时候,开始遇到嵌套循环,如果你用循环的眼光去读,一会 i ,一会 j 地,相信很多刚学的人,头都挺大的。其实,那都只是一个遍历。就是把数组里的每一个数据,挨个访问一次而已。

 

记往,今天我们学到的是“遍历”,以后再看到这东东,你要能联想到工会主席,说上这么一句:“哦,那是工会主席在挨家挨户地了解民情,送温暖呢.....”,我会更高兴。

版权所有©2012,WestGarden.欢迎转载,转载请注明出处.更多文章请参阅博客

转载于:https://www.cnblogs.com/WestGarden/archive/2012/05/25/2517399.html

你可能感兴趣的文章
干货:Android 源码使用心得分享
查看>>
OSGI企业应用开发(二)Eclipse中搭建Felix运行环境
查看>>
JAVA Static方法与单例模式的理解
查看>>
BufferedWriter
查看>>
【基础篇】DatePickerDialog日期控件的基本使用(一)
查看>>
2017浅谈面试(一)
查看>>
javascript 操作Word和Excel的实现代码
查看>>
jQuery $.each用法
查看>>
Centos6/7下静默安装oracle10g
查看>>
MVC中获取模型属性的Range和StringLength验证特性设置
查看>>
Excel导入SQL数据库完整代码
查看>>
js字符串加密的几种方法
查看>>
游戏心理学
查看>>
字符流-缓冲区-自定义myBufferedReader
查看>>
1123 Is It a Complete AVL Tree
查看>>
Js_日期格式化
查看>>
MYSQL 客户端与服务器关系
查看>>
SPU、SKU、ARPU是什么,我来记录一下我的理解
查看>>
信息安全--密钥短语密码
查看>>
关于StartCoroutine的简单线程使用
查看>>