我有一个SQL Server 2008 R2列包含一个字符串,我需要用逗号分隔.我在StackOverflow上看到了很多答案,但它们都不适用于R2.我确保我对任何拆分函数示例都有选择权限.任何帮助非常感谢.
我有一个SSIS包,最终我也想传递参数,这些参数将来自.NET应用程序(VB或C#),所以我很好奇,如果有人知道如何做到这一点,或者更好的是一个有帮助提示的网站如何做到这一点.所以基本上我想从.NET执行一个SSIS包传递它可以在其中使用的SSIS包参数.例如,SSIS包将使用平面文件导入到SQL数据库中,但文件的路径和名称可以是从.Net应用程序传递的参数.
当我尝试通过MSSQL Server数据导入连接到任何Excel时出现此错误,即SSIS包"Microsoft.ACE.OLEDB.16.0"提供程序未在本地计算机上注册.(System.Data)它不是相同的版本我认为需要其他修补
我正在尝试使用SSIS将电子表格导入我们的数据库.出于某种原因,SSIS想要相信其中两列是Double类型,当它们包含字符数据时.我已经尝试将列重新映射为nvarchar(255),但它仍然不想选择它认为是双倍的数据,因为它中有字符.如果我尝试编辑SSIS包并更改Excel源中的列类型,它将不允许我更改错误输出中的列类型,如果常规输出和错误输出列不比赛.
为什么SSIS坚持认为这些列是Double?我怎么能强迫它实现这些字符串呢?为什么微软的所有东西都不能正常工作?
编辑:我发现了这个:http://support.microsoft.com/kb/236605
我对数据进行了排序,以便混合数据类型位于顶部,然后猜测:问题发生了逆转.它不再导入字符数据,而是停止导入纯数字数据.显然有人不认为12345可以表示为字符串......
我已经下载并安装了 Visual Studio 2022。然后单击“修改”
现在,我想创建SSIS包,为此我已经启动了VS22,并且在“管理扩展”中当我尝试查找Microsoft SSIS时,我无法找到。
为此,我从市场下载了 SSIS:
但是当我尝试安装它时,它会抛出以下错误:
sql-server ssis etl sql-server-data-tools visual-studio-2022
我没有看到使用Visual Studio 2017创建SSIS项目的选项.
我试图制作一个方法,从我的字典中随机返回一个名片.
我的词典:第一个定义卡的名称是字符串,第二个是该卡的值,即int.
public static Dictionary<string, int> _dict = new Dictionary<string, int>()
{
{"7", 7 },
{"8", 8 },
{"9", 9 },
{"10", 10 },
{"J", 1 },
{"Q", 1 },
{"K", 2 },
{"A", 11 }
};
Run Code Online (Sandbox Code Playgroud)
方法:随机随机生成int.
public string getCard(int random)
{
return Karta._dict(random);
}
Run Code Online (Sandbox Code Playgroud)
所以问题是:
public static Dictionary<string, int> _dict = new Dictionary<string, int>()
{
{"7", 7 },
{"8", 8 },
{"9", 9 },
{"10", 10 },
{"J", 1 },
{"Q", 1 },
{"K", 2 },
{"A", 11 …Run Code Online (Sandbox Code Playgroud) 这是我最近修改这个问题的努力.但是这一次,我试图遵循Oded在他的文章中获得的好建议在StackOverflow上获得好的答案.
我需要找出如何确定以下错误的根本原因:
通信链路故障
TCP提供程序:指定的网络名称不再可用
有时,我在运行一组SSIS包时看到此错误.运行一到多个包时可能会发生此错误:
我看到的完整错误消息如下:
SSIS错误代码DTS_E_OLEDBERROR.发生OLE DB错误.错误代码:0x80004005.OLE DB记录可用.来源:"Microsoft SQL Server Native Client 10.0"Hresult:0x80004005描述:"通信链接失败".OLE DB记录可用.来源:"Microsoft SQL Server Native Client 10.0"Hresult:0x80004005说明:"TCP提供程序:指定的网络名称不再可用.".
SSIS错误代码DTS_E_OLEDBERROR.发生OLE DB错误.错误代码:0x80004005.OLE DB记录可用.来源:"Microsoft SQL Server Native Client 10.0"Hresult:0x80004005描述:"TDS流中的协议错误".OLE DB记录可用.来源:"Microsoft SQL Server Native Client 10.0"Hresult:0x80004005描述:"通信链接失败".OLE DB记录可用.来源:"Microsoft SQL Server Native Client 10.0"Hresult:0x80004005说明:"TCP提供程序:远程主机强行关闭现有连接."
这是我如何设计ETL过程的概述:
我使用OLE DB连接管理器从应用程序服务器上的SSIS包连接到数据库服务器上的SQL Server数据库.
这些包在应用程序服务器上作为文件系统部署运行,而不是在数据库服务器上作为数据库部署运行.
这样做的主要原因是ETL与一组找不到的工具集成,并且驱动器无法访问数据库服务器.这些工具包括适用于Salesforce的Apex Data Loader和pgAdmin III.
到目前为止,我无法一致地重现此错误.但是,这是我观察到的:
在星期五早上大约两个小时的时间里,我能够成功地重现特定包装上的错误.
如果启用了大数据流之前的子包调用,则在大数据流期间发生错误.
如果禁用了大数据流之前的子包调用,则在同一大数据流期间不会发生错误.
有问题的子包回调数据库以检索少量信息以便在电子邮件正文中使用,然后发送电子邮件.
感觉可能超出了资源限制?
也许连接限制?
我想知道我应该使用什么工具来尝试确定错误的根本原因.
有关这两个服务器的技术细节如下:
SQL Server和数据库服务器信息:
Microsoft SQL Server 2008 R2(SP1) - 10.50.2500.0(X64)2011年6月17日00:54:03版权所有(c)Windows …
networking ssis virtual-machine sql-server-2008 windows-server-2008
我有很多包含数据的excel文件,它包含空行和空列.如下所示
我试图使用互操作从excel中删除空行和列.我创建一个简单的winform应用程序并使用以下代码,它工作正常.
Dim lstFiles As New List(Of String)
lstFiles.AddRange(IO.Directory.GetFiles(m_strFolderPath, "*.xls", IO.SearchOption.AllDirectories))
Dim m_XlApp = New Excel.Application
Dim m_xlWrkbs As Excel.Workbooks = m_XlApp.Workbooks
Dim m_xlWrkb As Excel.Workbook
For Each strFile As String In lstFiles
m_xlWrkb = m_xlWrkbs.Open(strFile)
Dim m_XlWrkSheet As Excel.Worksheet = m_xlWrkb.Worksheets(1)
Dim intRow As Integer = 1
While intRow <= m_XlWrkSheet.UsedRange.Rows.Count
If m_XlApp.WorksheetFunction.CountA(m_XlWrkSheet.Cells(intRow, 1).EntireRow) = 0 Then
m_XlWrkSheet.Cells(intRow, 1).EntireRow.Delete(Excel.XlDeleteShiftDirection.xlShiftUp)
Else
intRow += 1
End If
End While
Dim intCol As Integer = 1
While intCol <= m_XlWrkSheet.UsedRange.Columns.Count
If m_XlApp.WorksheetFunction.CountA(m_XlWrkSheet.Cells(1, …Run Code Online (Sandbox Code Playgroud) 我View_Booking在sql server 2014中有一个View :
bkID bkSlot bkStatus
---- ------ --------
2 Lunch 1
4 Lunch 1
6 Dinner 0
7 Lunch 1
Run Code Online (Sandbox Code Playgroud)
在c#中,我使用了gridview并将其bkStatus转换为字符串,如:
<asp:Label ID="lblStatus" Text='<%# (Eval("bkStatus")+"" == "1") ? "Booked" : "Pending" %>'
... ></asp:Label>
bkID bkSlot bkStatus
---- ------ --------
2 Lunch Booked
4 Lunch Booked
6 Dinner Pending
7 Lunch Booked
Run Code Online (Sandbox Code Playgroud)
现在我正在使用此查询搜索View:
SELECT * FROM View_Booking
WHERE CAST(bkID AS NVARCHAR(MAX)) LIKE '%" + keyword + "%'
OR bkSlot LIKE '%"+keyword+"%'
OR bkStatus LIKE …Run Code Online (Sandbox Code Playgroud) sql-server ×7
ssis ×6
c# ×4
excel ×3
sql ×2
t-sql ×2
vb.net ×2
.net ×1
aceoledb ×1
dictionary ×1
etl ×1
networking ×1
oledb ×1
optimization ×1
split ×1
types ×1