- 博客(15)
- 资源 (11)
- 收藏
- 关注
原创 SQL参数化查询讲座 (十)
由于篇幅限制,也为了使读者容易地理解参数化查询的基本用法,本文只对ADO、ADO.NET中的参数化查询作了大致介绍,没有涉及更多的细节。这里提及几个重要的概念,有兴趣的读者可查阅本文最后列出的相关资料。SQL中一个常见的特殊值就是NULL,它既不是0,也不等同于空字符串。初学数据库编程时千万别把它与VB中的Nothing、C#中Null和VC中的NULL混为一谈,更不能用字符串“NULL”作为
2010-08-10 09:15:00 2380 25
原创 SQL参数化查询讲座 (九)
初学者使用参数化查询易犯的错误是仍以字符串格式化变量的观点理解查询参数。有的程序员老想把数据列名称也作为可变的参数,结果要么执行出错,要么输出数据出乎意料。比如为SQL语句“SELECT column1,? FROM table1”指定参数“column2”,查询的结果的第2列并不是数据表table1的column2数据列的数据,而是在每条记录中都是字符串column2本身。要知道,数据表、数
2010-08-10 09:08:00 1343 13
原创 SQL参数化查询讲座 (八)
如果程序中使用数据库存储过程,则更应该使用参数化查询。很多数据库在使用存储过程时,其OLEDB驱动程序能自动解析所需的参数,根本不需要明确调用CreateParameter方法,直接给对应的参数赋值即可执行。下面的例子中,程序访问到本机MS SQL Server服务器的pubs数据库,执行数据库中的ByRoyalty存储过程。该存储过程返回给定忠诚度的顾客信息,忠诚度为该存储过程唯一的输入参数(这
2010-08-06 09:08:00 1462 6
原创 SQL参数化查询讲座 (七)
在ADO中,查询的一般过程是创建Connection对象连接数据库,再创建Command对象执行SQL语句或存储过程。如果SQL语句有返回数据,则用Recordset对象接收,然后以游标方式遍历Recordset中的每一行,读取查询结果(也可把整个Recordset保存到文件或数据流中)。在一般场合,Command对象可以省略,其职能由Connection对象和Recordset对象代替。不过如果
2010-08-04 09:23:00 1424 7
原创 SQL参数化查询讲座 (六)
再来看OLEDB驱动程序的方式: // 连接数据库,对于SQL Server的高版本,Provider可以为SQLNCLIusing (IDbConnection connection = new OleDbConnection( "Provider=SQLOLEDB;Data Source=(local);Initial Catalog=school;Integrated
2010-08-02 09:18:00 1688 10
原创 SQL参数化查询讲座 (五)
在.NET中访问SQL Server数据库有两种方式,一种是使用专为.NET开发的驱动程序,另一种是用SQL Server的OLEDB驱动程序(在.NET中也可以用ODBC驱动程序,不过微软不推荐)。下面分别演示。先是专为.NET开发的驱动程序。 // 连接数据库using (SqlConnection connection = new SqlConnection( "Dat
2010-07-29 09:36:00 2112 12
原创 SQL参数化查询讲座 (四)
在ADO.NET中,查询的一般过程是创建实现IDbConnection接口的连接对象,登录到相应数据库,再创建实现IDbCommand接口的命令对象执行SQL命令或存储过程。如果SQL语句有返回结果,则可以整表的方式接收数据或以逐行推进的方式遍历各条记录。在参数化查询中,创建命令对象后,为其指定SQL语句(或存储过程),然后创建SQL语句包含的各个参数,给参数赋值后再执行命令对象。与命令对象关
2010-07-29 09:34:00 1860 10
原创 SQL参数化查询讲座 (三)
参数化查询得到各种主流编程语言和开发工具的广泛支持。后续的章节我们将结合实例学习如何使用参数化查询。由于笔者水平有限,不可能掌握所有这些编程语言,只能在这里抛砖引玉,仅分别用C#和VB给出ADO.NET、ADO中参数化查询的例子。如果学习VC的同学也对数据库访问感兴趣,也可以补充ODBC方面的示例。欢迎其他老师和同学进一步说明Java、Delphi、Python等语言中的参数化查询方法。也欢迎各位
2010-07-28 10:20:00 1729 9
原创 SQL参数化查询讲座 (二)
以上的问题都可以通过参数化查询解决。上面的SQL语句如果采用参数化查询的方式,则表示为“SELECT column1, column2, … FROM table1 WHERE param_column1 = ? AND param_column2 = ? ”。其中两个问号(?)是待定的数据列的值。在有些开发平台,问号的地方可能用有指定标记的命名参数代替,如“SELECT column1, col
2010-07-27 09:11:00 2849 28
原创 SQL参数化查询讲座 (一)
当今,大多数程序都会或多或少地使用SQL语句和数据库打交道。在程序代码中,SQL语句以字符串的形式存在,如“SELECT column1, column2, … FROM table1 WHERE param_column1 = value1 AND param_column2 =‘value2’ ”。这个例子以数据列param_column1、param_column2的值分别为value1、v
2010-07-27 09:09:00 4329 33
原创 把SQL Server数据表的内容转换为相应的INSERT语句
笔者曾在《程序员》2009年11期上探讨Transact-SQL的元编程,即通过目录视图、元数据函数等方式访问数据库的元数据信息,在执行过程中动态生成SQL脚本。当时限于篇幅,所给的例子较少。这里给出动态生成SQL脚本的一个典型应用,把数据表的内容转换为相应的INSERT语句。这个启发来自我管理远程数据库的经历。我常常需要用本地SQL Server数据库中的一个表的内容,去更新远程数据库中同名
2010-02-26 00:24:00 4751
原创 计算MD5的小程序源代码
常常需要计算文件的MD5。到网上一搜,发现有的MD5计算程序还不是免费的。那还不如自己动手写一个。用Windows API,要不了多少代码。下面给出我写的小程序的完整源代码: /* * md5.c * Calc files MD5 hash value by WIN32 crypto API. * Version: 1.00.00 * Copyright (c
2010-02-05 11:02:00 1193
原创 计算24点游戏精化算法剖析
很多人都玩过这个数学味儿很浓的益智游戏:抽出4张扑克牌,牌上的点数代表四个数字,花牌视为1点(有的把J、Q、K分别视为11、12、13点),玩家中谁最先运用加减乘除四则运算,由这四个数计算出24,谁就在这个回合中取胜,要求每个数字必须且只能使用一次。这个游戏称作“计算24点”或“计算24”,有的人也把它叫做“三八二十四”。 喜欢这个游戏的程序员可能都想过把它搬到电脑上。事实上,很多人已经这么做了。
2009-06-07 16:56:00 4309 2
Spark SQL源码概览.pdf
2020-01-11
Streaming Data - Understanding the real-time pipeline.zip
2019-07-30
动手学深度学习
2018-08-09
数据清洗研究综述
2018-08-07
智慧社区项目物业系统建设方案
2018-08-07
魔鬼数学:大数据时代,数学思维的力量
2017-08-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人