SQLCE数据库操作总结.doc

上传人:sk****8 文档编号:3502384 上传时间:2019-06-01 格式:DOC 页数:7 大小:66KB
下载 相关 举报
SQLCE数据库操作总结.doc_第1页
第1页 / 共7页
SQLCE数据库操作总结.doc_第2页
第2页 / 共7页
SQLCE数据库操作总结.doc_第3页
第3页 / 共7页
SQLCE数据库操作总结.doc_第4页
第4页 / 共7页
SQLCE数据库操作总结.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、演练:使用 SQL Server CE 数据库Visual Studio .NET 2003 本节将指导您完成使用 Microsoft SQL Server 2000 Windows CE Edition (SQL Server CE) 数据库时需要执行的主要任务。假定您没有任何 SQL Server CE 数据库,需要在新的 Microsoft Visual Studio .NET 项目中创建新的数据库。该演练包括以下任务: 创建新的 SQL Server CE 数据库 读取 SQL Server CE 数据库数据 更改 SQL Server CE 数据库中的数据 阐释以上每个任务步骤的代码

2、旨在一起运行。不能在任务中运行仅用于特定步骤的代码。有关完整代码列表,请参见 代码列表:使用 SQL Server CE 数据库。创建新的数据库SQL Server CE 中的数据库是存储结构化数据的表集合。在可以存储数据库之前,必须创建数据库。在创建数据库之后,可以创建保存数据的表。在本节中,您将创建一个新的数据库,然后创建一个表,最后将数据添加到该表中。若要执行这些步骤,请使用 SQL Server CE (System.Data.SqlServerCe) .NET Framework 精简版数据提供程序的 SqlCeConnection、SqlCeEngine 和 SqlCeComman

3、d 类。注意 不能在此任务中运行仅用于特定步骤的代码。有关完整代码列表,请参见 代码列表:使用 SQL Server CE 数据库。创建新的 SQL Server CE 数据库 1. 启动 Visual Studio .NET,然后打开一个新项目。 2. 创建对使用的命名空间的引用。 using System;using System.IO;using System.Text;using System.Data;using System.Data.SqlServerCe;using System.Collections;using System.Windows.Forms;using Syst

4、em.Data.Common;3. 创建 WalkThrough 类。 public class WalkThrough static void Main() SqlCeConnection conn = null;try 4. 验证具有您打算使用的名称的数据库是否已存在。 if (File.Exists (“Test.sdf“) )File.Delete (“Test.sdf“);5. 使用 System.Data.SqlCeEngine 对象创建名为 Test.sdf 的空数据库。 注意 SQL Server CE 中,数据库名称的文件扩展名为 .sdf。SqlCeEngine engin

5、e = new SqlCeEngine (“Data Source = Test.sdf“);engine.CreateDatabase ();6. 连接到这个新数据库。 conn = new SqlCeConnection (“Data Source = Test.sdf“);conn.Open();创建新表 1. 使用 System.Data.SqlCeCommand 创建命令类的实例。 SqlCeCommand cmd = conn.CreateCommand();2. 运行命令 cmd 创建表。用于创建表的指令必须在 cmd.CommandText 所包含的 SQL 代码中。 若要使用

6、 SQL Server CE 的 SQL 编程语言创建表,请使用 CREATE TABLE 语法。有关更多信息,请参见SQL Server CE 联机手册中的 用于 SQL Server CE 的 SQL 参考。 cmd.CommandText = “CREATE TABLE TestTbl(col1 int PRIMARY KEY, col2 ntext, col3 money)“;cmd.ExecuteNonQuery();将数据添加到新表中 1. 运行命令以添加数据行。与创建表相同,用于添加行的指令也必须在 cmd.CommandText 所包含的 SQL 代码中。 若要使用 SQL S

7、erver CE 的 SQL 编程语言将行添加到表中,请使用 INSERT 语法。有关更多信息,请参见SQL Server CE 联机手册中的 用于 SQL Server CE 的 SQL 参考。 cmd.CommandText = “INSERT INTO TestTbl(col1, col2, col3) VALUES (0, abc, 15.66)“;cmd.ExecuteNonQuery();2. 创建命令,使用参数将数据多次插入表中。 参数可以更高效地查询数据库,因为可以使用一组包含参数的 SQL 语句插入多个值。有关更多信息,请参见SQL Server CE 联机手册的在查询中使用

8、参数。 cmd.CommandText = “INSERT INTO TestTbl(col1, col2, col3) VALUES (?, ?, ?)“;cmd.Parameters.Add(new SqlCeParameter(“p1“, SqlDbType.Int);cmd.Parameters.Add(new SqlCeParameter(“p2“, SqlDbType.NText);cmd.Parameters.Add(new SqlCeParameter(“p3“, SqlDbType.Money);cmd.Parameters“p2“.Size = 50;cmd.Prepare

9、();3. 执行参数化命令,将数据插入表中。 cmd.Parameters“p1“.Value = 1;cmd.Parameters“p2“.Value = “abc“;cmd.Parameters“p3“.Value = 15.66;cmd.ExecuteNonQuery();4. 清除参数,并检查已插入表中的数据。 若要使用 SQL Server CE 的 SQL 编程语言读取现有数据,请使用 SELECT 语法。有关更多信息,请参见SQL Server CE 联机手册中的 用于 SQL Server CE 的 SQL 参考。cmd.Parameters.Clear();/Set the

10、command text to a SELECT query./cmd.CommandText = “SELECT * FROM TestTbl“;读取 SQL Server CE 数据库数据读取数据库数据是一种常见的任务,通常涉及对表行信息的访问。为使用 System.Data.SqlServerCe 执行此任务,您需要 SqlCeDataReader 和 SqlCeCommand 对象。注意 有关完整代码列表,请参见 代码列表:使用 SQL Server CE 数据库。1. 调用 SqlCeCommand 对象的 ExecuteReader 方法以创建 SqlCeDataReader 的实

11、例。SqlCeDataReader rdr = cmd.ExecuteReader();2. 指示数据读取器 rdr 在行存在时在每行的列中显示数据。 while (rdr.Read()MessageBox.Show(“col1 = “ + rdr.GetInt32(0) + “col2 = “ + rdr.GetString(1) + “col3 = “ + rdr.GetSqlMoney(2);更改 SQL Server CE 数据库中的数据在创建表后,可以以多种方式修改表中的数据:更改特定数据的属性,添加和删除数据行,甚至还可以通过修改表中的列来更改存储数据的方式。在本节中,您将更改表项

12、的值,查找更改的表的数据并处理所有错误。为执行这些步骤,您将使用在前面的任务中使用的类:SqlCeCommand 和 SqlCeDataReader。另外,您将使用 SqlCeException 进行错误处理。注意 不能在此任务中运行仅用于特定步骤的代码。有关完整代码列表,请参见 代码列表:使用 SQL Server CE 数据库。更新 SQL Server CE 表中的数据 设置命令对象以使用 UPDATE 语句。 若要使用 SQL Server CE 的 SQL 编程语言更改行列的值,请使用 UPDATE 语法。有关更多信息,请参见SQL Server CE 联机手册中的 用于 SQL S

13、erver CE 的 SQL 参考。 cmd.CommandText = “UPDATE TestTbl SET col2 = some new value WHERE col1 = 0“;cmd.ExecuteNonQuery();读取 SQL Server CE 表中的数据 1. 设置命令对象以使用 SELECT 语句,然后通过执行 SqlCeCommand.ExecuteReader 创建数据读取器的实例。 cmd.CommandText = “SELECT * FROM TestTbl“;rdr = cmd.ExecuteReader();while (rdr.Read() Messa

14、geBox.Show(“ col1 = “ + rdr.GetInt32(0) + “ col2 = “ + rdr.GetString(1) +“ col3 = “ + rdr.GetSqlMoney(2);2. 使用 SqlCeException 捕获任何错误,然后关闭与数据库的连接。 catch (SqlCeException e) ShowErrors(e);finally if(conn.State = ConnectionState.Open)conn.Close();public static void ShowErrors(SqlCeException e) SqlCeErro

15、rCollection errorCollection = e.Errors;StringBuilder bld = new StringBuilder();foreach (SqlCeError err in errorCollection) bld.Append(“n Error Code: “ + err.HResult.ToString(“X“);bld.Append(“n Message : “ + err.Message);bld.Append(“n Minor Err.: “ + err.NativeError);bld.Append(“n Source : “ + err.So

16、urce);foreach (int numPar in err.NumericErrorParameters) if (0 != numPar) bld.Append(“n Num. Par. : “ + numPar);foreach (string errPar in err.ErrorParameters) if (String.Empty != errPar) bld.Append(“n Err. Par. : “ + errPar);MessageBox.Show(bld.ToString();bld.Remove(0, bld.Length);有关 SQL Server CE 中的错误处理的更多信息,请参见 SQL Server CE 联机手册中的错误处理。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。