- 浏览: 611832 次
- 性别:
- 来自: 卡哇伊
文章分类
- 全部博客 (299)
- C# (25)
- Java (1)
- WinForm (0)
- Asp.Net (86)
- Jsp (2)
- Php (1)
- Web Service (0)
- Desgin Patterns (19)
- Data Structure & Algorithms (1)
- SQLserver (41)
- Mysql (0)
- Oracle (2)
- Javascript (50)
- Ajax (10)
- Jquery (1)
- Flex (0)
- Regular Expression (5)
- DIV+CSS+XHTML+XML (18)
- Software Test (0)
- Linux (0)
- Utility (17)
- Net Digest (4)
- windows 2003 (10)
- Other (4)
- English (1)
- IT Term (1)
最新评论
-
w497480098h:
学习了 很好谢谢
SQL Server下无限多级别分类查询解决办法(简单查询树形结构数据库表) -
main_fun:
确实不错
iframe自适应高度 -
jveqi:
...
DBA -
mxcie:
其它版本没有确认,今天使用vs2003时,其.sln文件也需要 ...
彻底删除项目的VSS源代码管理信息 -
moneyprosper:
就只有IE支持,火狐和谷歌都不支持此种方法。正在寻找中。。。
从父页面读取和操作iframe中内容方法
今天写代码遇到了一个小小的问题看来是基础不过关啊,嘿嘿.
上图中注释的几种向ParameterCollection集合添加参数的方式程序都能正确执行, 并能成功的向数据库添加数据
为什么只有comm.Parameters.Add("@password",SqlDbType.VarChar,50,password);
这种方式向ParameterCollection集合添加参数会报异常呢,很是不解..
查了下MSDN才明白原来是我理解错误啦,罪过啊........
问题已经很明显了。
SqlCommand.Parameters.Add(String, SqlDbType, Int32, String)
这个方法的最后一个参数,设置的是SqlParameter.SourceColumn属性,而不是SqlParameter.Value属性,所以SqlParameter.Value的值一直保持为null,在执行自然会报错了。
我理解错了,我一直把该方法最后一个参数的源列的名称理解成传入的参数值,实际上这里指的是数据库中的列名.
MSDN:
public sealed class SqlParameter { ... // // 摘要: // 获取或设置源列的名称,该源列映射到 System.Data.DataSet 并用于加载或返回 System.Data.SqlClient.SqlParameter.Value // // 返回结果: // 映射到 System.Data.DataSet 的源列的名称。默认值为 Null字符串。 public override string SourceColumn { get; set; } ... }
MSDN:
http://msdn.microsoft.com/zh-cn/library/33y2221y.aspx
下面的示例演示如何通过显式设置 DataAdapter 的 UpdateCommand 并调用其 Update 方法对已修改行的执行更新。 请注意,在 UPDATE 语句的 WHERE 子句中指定的参数设置为使用 SourceColumn 的 Original 值。 这一点很重要,因为 Current 值可能已被修改,可能会不匹配数据源中的值。 Original 值是用于从数据源填充 DataTable 的值。 private static void AdapterUpdate(string connectionString) { using (SqlConnection connection = new SqlConnection(connectionString)) { SqlDataAdapter dataAdpater = new SqlDataAdapter( "SELECT CategoryID, CategoryName FROM Categories", connection); dataAdpater.UpdateCommand = new SqlCommand( "UPDATE Categories SET CategoryName = @CategoryName " + "WHERE CategoryID = @CategoryID", connection); dataAdpater.UpdateCommand.Parameters.Add( "@CategoryName", SqlDbType.NVarChar, 15, "CategoryName"); SqlParameter parameter = dataAdpater.UpdateCommand.Parameters.Add( "@CategoryID", SqlDbType.Int); parameter.SourceColumn = "CategoryID"; parameter.SourceVersion = DataRowVersion.Original; DataTable categoryTable = new DataTable(); dataAdpater.Fill(categoryTable); DataRow categoryRow = categoryTable.Rows[0]; categoryRow["CategoryName"] = "New Beverages"; dataAdpater.Update(categoryTable); Console.WriteLine("Rows after update."); foreach (DataRow row in categoryTable.Rows) { { Console.WriteLine("{0}: {1}", row[0], row[1]); } } } }
发表评论
-
数字金额转为大写金额
2009-10-21 16:46 1260方法一: /// <summary> ... -
格式化文件大小的C#方法
2009-10-21 10:31 1810/// <summary> // ... -
学习C#:Attribute与Property
2009-10-04 14:23 2764一.什么是Attribute 先看下面的三段代码: ... -
String和StringBuilder的区别和使用
2009-08-11 10:22 1270String是固定不变的,在进行字符串连接的时候是新建一 ... -
C#值类型后面加问号表示可为空null(Nullable 结构)
2009-08-04 14:38 7973值类型后面加问号表示可为空null(Nullable 结构)N ... -
C# 替换去除HTML标记方法(正则表达式)
2009-07-31 11:02 8633using System.Text.RegularExpres ... -
C#里面比较时间大小三种方法
2009-07-29 12:55 12201。比较时间大小的实验 string str1 ... -
DataTime.Ticks
2009-07-29 07:30 4481java Date.getTime() getTime pub ... -
.net读取和写入txt文件
2009-07-21 23:34 7339//检查文件,如果文件不 ... -
Static方法
2009-07-19 23:28 8561.static方法是类中的一个成员方法,属于整个类,即使不用 ... -
C#中判断空字符串的3种方法性能分析
2009-07-02 08:47 12343种方法分别是: string a="&qu ... -
ASP.NET发布网站解决方案
2009-06-30 14:31 5355对于想了解发布网站那 ... -
C#中@的用法
2009-06-28 06:13 8621. 加在字符串前面,字符串中的 \ 失去转义符的作用,直接 ... -
c# cs 生成dll
2009-06-25 23:00 2350C# 语言是一种简单但功 ... -
C#项目引用完全相同dll文件的问题解决方法(反射)
2009-06-25 19:52 7213今天有开发人员问我一个问题,他的项目中要引用两个类库,这两 ... -
ADO.NET事务
2009-06-23 14:07 977private void DemoTranscation() ... -
null,"",String.Empty的区别
2009-06-16 16:37 11671.null null 关键字是表示不引用任何对象的空引用 ... -
C#类和接口、虚方法和抽象方法及值类型和引用类型的区别
2009-06-13 14:56 10921.C#类和接口的区别 ... -
Asp.net日期格式
2009-06-06 18:37 1282DateTime dt = DateTime.Now; ... -
GUID介绍
2009-05-22 08:56 1600GUID(全局统一标识符) ...
相关推荐
创建SqlCommand对象时,通常需要提供两个主要参数:一个是连接到数据库的SqlConnection对象,另一个是要执行的SQL命令字符串。例如: ```csharp string connectionString = "Data Source=myServerAddress;Initial ...
`SqlParameter`类用于创建参数,可以将它们添加到`SqlCommand`的`Parameters`集合中。例如: ```csharp string searchKey = "keyword"; SqlCommand command = new SqlCommand("SELECT * FROM TableName WHERE ...
2. **添加参数**:使用SqlCommand对象的Parameters集合,我们可以添加SqlParameter对象。参数通常以“@”符号开头,这在SQL命令文本和SqlParameter对象中都是如此。例如,添加一个名为@CustomerID的参数: ```...
然后,创建一个SqlCommand对象,并将SqlConnection对象作为参数传递,这样SqlCommand就与特定的数据库连接关联起来了。接下来,设置SqlCommand的CommandText属性,赋值为要执行的SQL语句。如果需要,可以设置...
这样,当执行SQLCOMMAND对象时,这些参数值会被传递给存储过程。 最后,执行SQLCOMMAND对象。调用ExecuteNonQuery、ExecuteReader或ExecuteScalar方法来运行存储过程。根据存储过程是否返回结果集以及期望的结果...
综上所述,ASP.NET调用带参数的存储过程涉及到数据库连接的建立、SqlCommand对象的配置、参数的添加和执行。通过这种方式,开发者可以灵活地与数据库进行交互,同时利用存储过程带来的性能优势。在实践中,务必注意...
接下来,我们添加参数到SqlCommand对象中。每个参数都由SqlParameter对象表示,我们需要设置其参数名、参数类型和值。例如,如果存储过程有一个名为`@inputParam`的输入参数,我们可以这样添加: ```csharp int ...
为了向存储过程传递参数,我们需要创建一系列`SqlParameter`对象,并将它们添加到`SqlCommand`对象的`Parameters`集合中。 ```csharp SqlParameter[] parms = { new SqlParameter("@tuikushuliang", SqlDbType.Int...
在C#中,我们可以使用ADO.NET的`SqlCommand`对象来实现参数化查询。首先,创建一个`SqlCommand`实例,然后设置其`CommandText`属性为包含参数的SQL语句。接着,使用`AddWithValue`或`Add`方法为每个参数添加对应的值...
接着遍历参数数组,将每个参数添加到`SqlCommand`对象的`Parameters`集合中。 #### 存储过程定义 ```sql CREATE PROC [dbo].[pro_GetDifferenceTimeInfos] @AnalysisDate varchar(50), @Process_PTR int AS ...
SqlCommand_ExecuteScalar方法是.NET Framework中的SQL Server数据访问组件SQLClient的一部分,主要用于执行SQL查询或存储过程,并返回单个值。这个方法在处理那些预期只返回一个结果的数据操作时非常实用,比如查询...
这个方法将参数添加到SqlCommand对象中,然后执行该命令。在调用这个方法时,我们需要传递参数,例如string sql = "Update users SET userstateid =" + status + " WHERE Id = @UserId"; DBHelper.ExecuteCommand...
将参数添加到SqlCommand对象,以便在执行时传递给存储过程。 8. **打开Sql连接对象**: ```csharp MyCon.Open(); ``` 打开到数据库的连接,以便执行命令。 9. **执行SqlCommand**: ```csharp MyCmd....
在C#中,我们可以使用SqlCommand对象的Parameters集合来添加参数,并在执行SQL时传递值。例如: ```csharp SqlCommand cmd = new SqlCommand("SELECT * FROM Users WHERE ID = @userId", connection); cmd....
在.NET中,我们可以使用ADO.NET API动态地构造SqlCommand对象,遍历查询结果,为每个参数创建SqlParameter,并添加到SqlCommand对象的Parameters集合中。然后执行存储过程,根据需求选择是否填充DataSet或处理...
现在,我们创建SqlParameter对象并将其添加到SqlCommand的Parameters集合中: ```csharp SqlParameter parameter = new SqlParameter("@UserID", SqlDbType.Int); parameter.Value = 123; // 这里假设ID为123 ...
在VB.NET中,你可以通过定义一个递归函数来实现这个功能,该函数接收当前部门ID作为参数,使用Command对象执行嵌套查询,将结果添加到结果集中,并在需要时调用自身处理子部门。 总的来说,了解和掌握ASP.NET中...
添加适当的异常处理代码,以便在出现错误时向用户显示友好的错误消息。 8. **测试与优化** 运行你的应用程序,确保在不同的数据库配置下都能正确同步数据。考虑添加日志功能,记录每次同步的详细信息,以便于调试...
5. **Parameters属性**:这是一个参数集合,用于存储将传递给SQL语句或存储过程的参数。这对于动态构建SQL语句非常有用,可以防止SQL注入攻击。 #### 二、实战示例:执行SQL语句与存储过程 接下来,我们将通过具体...
在C#编程环境中,开发一个窗体应用来向数据库中添加图片涉及到多个步骤和技术。首先,我们需要理解如何处理图像文件,然后将它们转换为二进制数据,以便于存储在数据库中。通常,数据库系统如SQL Server不直接支持...