c# - 在 visual studio 2012 Express Edition 中运行 sql 脚本 [主题 : C# interpreted queries]

标签 c# sql-server linq

<分区>

我正在尝试运行包含以下代码的脚本:

create table Customer
(
   ID int not null primary key,
   Name varchar(30)
)
insert Customer values (1, 'Tom')
insert Customer values (2, 'Dick')
insert Customer values (3, 'Harry')
insert Customer values (4, 'Mary')
insert Customer values (5, 'Jay')

并将其集成到此 C# 代码中

using System;
using System.Linq;
using System.Data.Linq; // in System.Data.Linq.dll   
using System.Data.Linq.Mapping;
[Table]
public class Customer
{
    [Column(IsPrimaryKey = true)]
    public int ID;
    [Column]
    public string Name;
}
class Test
{
    static void Main()
    {
        DataContext dataContext = new DataContext("connection string");
        Table<Customer> customers = dataContext.GetTable<Customer>();
        IQueryable<string> query = from c in customers
                                   where c.Name.Contains("a")
                                   orderby c.Name.Length
                                   select c.Name.ToUpper();
        foreach (string name in query) Console.WriteLine(name);
    }
}

到目前为止,我只设法添加对 System.Data.Linq dll 的引用。

我尝试使用谷歌搜索,但没有找到答案。这是在 C# in a nutshell 书中找到的,它在本书中没有提供有关如何在 visual studio 2012 express 上运行它的主题的详细信息。 (sql 文件与 C# 文件一起)。

最佳答案

第一步是您需要连接到 SQL 服务器。如果您的工作场所没有为您提供,或者这是一个业余爱好/学校项目,请下载 SQL Server Express Edition(如果您尚未下载)。

安装完后,我有以下建议:

  1. 添加 Adventureworks 测试数据库。关于如何做到这一点的快速文章:http://technet.microsoft.com/en-us/library/ms144235%28v=sql.90%29.aspx .该数据库将为不知道从哪里开始的人消除设置设置时的猜测。

  2. 使用 Visual Studio(SQL->Transact Sql Editor->New Query)或 Sql Server Management Tools(点击工具栏中的 New Query 按钮)连接到 SQL Server。您需要连接到本地主机。

好的,现在您有一个可以使用的查询编辑器窗口。键入“USE AdventureWorks”并按 F5 或单击“执行”按钮。或者,您可以从左侧列出所有可用数据库的下拉框中选择 AdventureWorks。

好的,现在您可以创建和填充表格了。

如果需要,您可以直接在查询编辑器中执行此操作。

代码看起来像这样:

USE AdventureWorks
GO

CREATE TABLE dbo.Customer
(
    [ID] int NOT NULL Primary Key,
    [Name] varchar(30)
)

INSERT INTO dbo.Customer
(
    [ID],
    [Name] 
)
VALUES 
    1,
    'Tom'

INSERT INTO dbo.Customer
(
    [ID],
    [Name] 
)
VALUES 
    2,
    'Dick'

INSERT INTO dbo.Customer
(
    [ID],
    [Name] 
)
VALUES 
    3,
    'Harry'

INSERT INTO dbo.Customer
(
    [ID],
    [Name] 
)
VALUES 
    4,
    'Mary'

INSERT INTO dbo.Customer
(
    [ID],
    [Name] 
)
VALUES 
    5,
    'Jay'

按 F5 键或单击“执行”按钮。现在您的数据库中已经有了可供使用的数据。

您需要设置一个连接以使其余部分正常工作(您需要将 DataContext 行替换为有效的内容)。

您可以通过直接连接到 .mdf 数据库文件来完成此操作,就像这些 MSDN 示例中的一些示例所做的那样:http://msdn.microsoft.com/en-us/library/vstudio/bb399349%28v=vs.100%29.aspx

或者您可以像在服务器上一样连接到数据库,就像这个问题询问的那样: Connect to SQL Server 2012 Database with C# (Visual Studio 2012)

关于c# - 在 visual studio 2012 Express Edition 中运行 sql 脚本 [主题 : C# interpreted queries],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18668528/

相关文章:

c# - 具有先前状态的状态模式 C#

c# - ASP.NET - 扩展 gridview 以允许过滤、排序、分页等

c# - 如何从字符串中删除特殊字符并制作新字符串?

sql-server - 创建 SQL Server ODBC 数据源的最简单、最易于维护的方法是什么?

SQL Server 按值排序而不是按字段名称排序

c# - 如何访问 linq 中等待方法的属性?

c# - Asp.Net中如何实现SQLDependency缓存?

sql-server - 构建类似于 Stackoverflow "Inbox"的功能的推荐方法是什么?

c# - 使用 .Contains 保留 LINQ 的顺序

c# - MVC DropDownListFor 值不能为空