Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

cách sử dụng thuộc tính msbuild trong tập lệnh sqlproj (SQL Server 2012)

Trong sql server 2012 sqlproj (dự án cơ sở dữ liệu SSDT), bạn sử dụng hồ sơ xuất bản. Bạn có thể bắt đầu bằng cách nhấp chuột phải vào dự án cơ sở dữ liệu của mình và chọn 'Xuất bản'.

Sau đó, bạn có thể đặt các tùy chọn mong muốn và lưu các tùy chọn này trong một cái gọi là hồ sơ xuất bản trong dự án của bạn. Nhấp đúp vào cấu hình này sẽ khởi chạy trình hướng dẫn xuất bản với các tùy chọn chính xác được đặt.

Trong hồ sơ xuất bản của mình, bạn có thể bao gồm các giá trị được mã hóa cứng cho các biến sqlcmd:

<ItemGroup>
    <SqlCmdVariable Include="ProjectDirectory">
        <Value>UNKNOWN</Value>
    </SqlCmdVariable>
</ItemGroup>

Nếu muốn, bạn có thể cập nhật các giá trị này bằng các giá trị động trong quá trình xây dựng. Trong dự án msbuild của bạn:

<Target Name="SetProjectDirectoryInPublishXml">
    <ItemGroup>
        <Namespaces Include="nsMsbuild">
            <Prefix>nsMsbuild</Prefix>
            <Uri>http://schemas.microsoft.com/developer/msbuild/2003</Uri>
        </Namespaces>
    </ItemGroup>
    <ItemGroup>
        <SSDTPublishFiles Include="$(SolutionBinFolder)\**\*.publish.xml" />
    </ItemGroup>
    <MSBuild.ExtensionPack.Xml.XmlFile Condition="%(SSDTPublishFiles.Identity) != ''"
                                   TaskAction="UpdateElement"
                                   File="%(SSDTPublishFiles.Identity)"
                                   Namespaces="@(Namespaces)" 
                                   XPath="//nsMsbuild:SqlCmdVariable[@Include='ProjectDirectory']/nsMsbuild:Value" 
                                   InnerText="$(MSBuildProjectDirectory)"/>
</Target>

Điều này yêu cầu một phần mở rộng để cập nhật XML. Tôi sử dụng gói tiện ích mở rộng msbuild.

Tín dụng cho cơ chế này được chuyển đến Jamie Thomson




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kích hoạt đăng nhập trong SQL Server

  2. Hệ thống quản lý cơ sở dữ liệu phổ biến nhất trên thế giới

  3. SQL Server:số hàng tối đa trong bảng

  4. TDS Server - Sử dụng các câu lệnh Transact-SQL (T-SQL) để làm việc với dữ liệu Salesforce trong SQL Server

  5. Máy chủ SQL:DELETE so với TRUNCATE