VS Express 2012,SQL Server Express 2012,Win 8.1
您好,
我有一个(非常)简单的WCF作为IIS上的Web服务托管。我还在同一台机器上安装了一个SQL Server实例(带有1个表)。
我需要有关如何从WCF(VB)连接到SQL并从表中检索单个记录的逐步指南(即:“从MYTABLE中选择最后一个名称PK = 1;”)。而已。我不需要1,200页的手册 - 这就是Google一直在向我投掷的内容。
任何人都知道快速,干净的资源吗?
谢谢, 杰森
答案 0 :(得分:0)
从所需类的角度来看,在WCF服务或普通应用程序中使用ADO.NET没有区别。
首先需要的是一个连接字符串,它允许您的SqlConnection对象找到您要使用的主机和数据库。 Here examples on connection strings
然后你通常需要一个SqlCommand来封装检索数据所需的SQL文本和参数(在这里设置你的SELECT语句和条件)
最后,您需要一个SqlDataReader来获取命令执行的结果,并允许您循环结果。
Here a sample that could get you started.
请记住,这只是一个最小的待办事项列表,还有许多其他方法可以处理数据。 SqlDataAdapter,Dataset,DataTable等基本对象提供了从数据库加载数据和使用该数据的不同方法。除此之外,还有Linq To Sql和Object Relational Mapper等工具可以抽象数据访问并在数据之上提供高级功能。
这可能是您获得有关数据访问技术的大量信息的原因
答案 1 :(得分:0)
涉及的主要课程是SqlConnection和SqlCommand。这些类的文档包含一些如何使用它们的示例。为了帮助您入门,这里有一个小样本:
Dim connStr = "Data Source=SQLServerName\InstanceName;Initial Catalog=DatabaseName;Integrated Security=SSPI"
Using conn As New SqlConnection(connStr)
conn.Open()
Using cmd = conn.CreateCommand()
cmd.CommandText = "SELECT LAST_NAME FROM MYTABLE WHERE PK = @pk"
cmd.Parameters.AddWithValue("@pk", 1)
Dim result = cmd.ExecuteScalar()
If Typeof result Is DbNull Then
' Handle null value
Else
' Otherwise
End If
End Using
End Using
此示例假定您要在语句中检索单个单元格。如果要检索表格数据,请查看SqlDataReader或SqlDataAdapter类。 请注意 - 特别是在服务器应用程序中 - 正确处理创建的实例非常重要。