MSSQL to VB.NET conversion



我正在研究一个正在将t-sql过程转换为vb.net代码的projec,我一直在考虑如何写一些整洁的东西,在vb.net中清洁。

例如,这是T-SQL:

insert into X(
 column1, 
 column2, 
 ....., 
 column100) 
select 
 column1, 
 column2, 
 ....., 
 column100 
 from Y 

我应该如何将此语句转换为vb.net?如果我使用字符串构建器,那将是:

Dim sb As New StringBuilder()
With sb
    .Append("Insert into x(")
    .Append("column1,")
    .Append("column2,")
    .Append("...,")
    ......
End With

代码太长。有更好的选择吗?

,因为不幸的是,在C#中没有逐字字符串文字,您可以在其中写下:

string insertSQL = @"
insert into X(
 column1, 
 column2, 
 ....., 
 column100) 
select 
 column1, 
 column2, 
 ....., 
 column100 
 from Y 
";

您可以使用XML文字来获得类似的行为:

Dim insertSQL As String = <![CDATA[ 
insert into X(
 column1, 
 column2, 
 ....., 
 column100) 
select 
 column1, 
 column2, 
 ....., 
 column100 
 from Y 
]]>.Value

详细的经典方式是使用:

Dim insertSQL As String = "insert into X( " & vbCrLf &
                          "column1, " & vbCrLf &
                          "column2,  " & vbCrLf &
                          ".....,  " & vbCrLf &
                          "column100)  " & vbCrLf &
                          "select  " & vbCrLf &
                          "column1,  " & vbCrLf &
                          "column2,  " & vbCrLf &
                          ".....,  " & vbCrLf &
                          "column100  " & vbCrLf &
                          "from Y  "

对不起,我没有将其称为"评论"的声誉,但是根据我的经验,linq在缩短了SQL程序方面有很大帮助。

https://msdn.microsoft.com/en-us/library/bb386946(v = vs.110).aspx

最新更新