表一包含
ID|Name
1 Mary
2 John
Run Code Online (Sandbox Code Playgroud)
表二包含
ID|Color
1 Red
2 Blue
2 Green
2 Black
Run Code Online (Sandbox Code Playgroud)
我想最终得到的是
ID|Name|Red|Blue|Green|Black
1 Mary Y Y
2 John Y Y Y
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助.
谢谢你的回复.我将重新发布一些关于我正在尝试做的事情的其他信息,这可能会使这一点复杂化.有人可以关闭这个吗?
我在网络共享上有一个DBF文件,我正在尝试选择一个SQL Server表.
这个查询:
SELECT * FROM OPENQUERY(MyLinkedServer, 'SELECT * FROM DP')
Run Code Online (Sandbox Code Playgroud)
...抛出此错误:
用于链接服务器"MyLinkedServer"的OLE DB提供程序"MSDASQL"返回消息"[Microsoft] [ODBC Visual FoxPro驱动程序]没有足够的内存用于文件映射."
消息7399,级别16,状态1,行11链接服务器"MyLinkedServer"的OLE DB提供程序"MSDASQL"报告错误.提供程序内存不足.
消息7320,级别16,状态2,行11无法针对链接服务器"MyLinkedServer"对OLE DB提供程序"MSDASQL"执行查询"SELECT*FROM DP".
我已经读过使用SYS(3050)来释放FoxPro的内存.我无法弄清楚如何针对链接服务器执行该操作.
我正在考虑将当前在FoxPro中构建的POS(Point Of Sale)项目升级到.net.计划的架构非常复杂,所选择的新技术背后有很多理由.一些要求包括能够同时拥有桌面和Web前端(Web前端功能有限),与外部网站同步数据以及多个客户端运行1台服务器的能力.我当前选择的模型是一个MVP模式,其中Sql Server(可能是Express)作为数据库,以及表示和服务之间的WCF服务层,以允许远程UI.
我担心的是,在我的研究过程中,我注意到在触摸屏POS系统中似乎有一个共同的主题,即在FoxPro中构建它们.
对于略微主观的问题道歉,但我很想知道这是否有任何特殊原因?FoxPro是否具有任何特定的开箱即用功能,适用于此类系统?我没有使用FoxPro,所以在最终确定我为这个项目选择的技术之前,我希望通过完全排除它来确保我不会错过任何技巧.
文件.fpt和.dbf(在Visual FoxPro 8中制作)具有我需要或至少可以看到的文本(人类可读).但我不能这样做.MS excel不仅可以看到文本,还可以看到很多没有意义的符号.
所以我的问题是如何从文件中提取文本?Visual FoxPro 8无法打开它说soandso.fpt丢失或无效,即使我试图打开该文件(soandso.fpt).
是否可以从文件.fpt和dbf中获取文本?
我有一个ActiveX控件(使用C#创建),我使用后期绑定添加到Visual FoxPro中的窗体.注册控件时,它可以正常工作.
我想使用reg免费COM并创建必要的清单文件.现在它加载并显示在非活动状态,直到我双击或语法激活它.我不认为它与reg free com清单文件有任何关系.但是,在进行后期绑定调用之前/之后我需要做些什么来设置它AddObject()?
this.AddObject('OleControl1', 'oleControl', 'SomeCompany.SomeOleControl')
Run Code Online (Sandbox Code Playgroud)
当我检查OleTypeAllowed由AddObject()它创建的OleControl 的属性是1(嵌入式OLE对象)而不是-2(ActiveX对象).所以OleControl被实例化为错误的类型.
我也尝试过以下方法:
DEFINE一个子类,OleControl并设置属性OleTypeAllowed = -2.使用后期绑定来加载控件.它没有按要求工作.在OleTypeAllowed为回来1
注册了ActiveX控件.使用可视化编辑器将ActiveX控件作为子类添加到项目中.取消注册控件.使用后期绑定来加载控件.它没有按要求工作.在OleTypeAllowed回来的1.
是否可以将OleControl加载为ActiveX控件?
我可以转换为FoxPro的任何VB输入也将不胜感激.
我在这里使用一种古老的数据库格式,dbf 文件。不要问为什么,只知道某个软件决定扩展foxpro支持,因为微软决定扩展foxpro支持。现在,我在特定文件上收到以下错误。我已成功加载另一个文件,我很好奇该数据库是否有问题。我确信您可能需要查看数据库来确定这一点,但它的发布方式太大了,所以我会采取我能得到的。
Traceback (most recent call last):
File "billsapi.py", line 250, in <module>
x.getUsedGuns()
File "billsapi.py", line 72, in getUsedGuns
itemdb = dbf.Dbf('item.dbf', readOnly=True, ignoreErrors=True)
File "C:\Python27\lib\site-packages\dbfpy\dbf.py", line 135, in __init__
self.header = self.HeaderClass.fromStream(self.stream)
File "C:\Python27\lib\site-packages\dbfpy\header.py", line 127, in fromStream
_fld = fields.lookupFor(_data[11]).fromString(_data, _pos)
File "C:\Python27\lib\site-packages\dbfpy\fields.py", line 455, in lookupFor
return _fieldsRegistry[typeCode]
KeyError: '0'
Run Code Online (Sandbox Code Playgroud)
这是返回此错误的简单代码:
def getUsedGuns(self):
itemdb = dbf.Dbf('item.dbf', readOnly=True, ignoreErrors=True)
Run Code Online (Sandbox Code Playgroud)
就像我说的,我可以毫无问题地加载其他文件,但也许有解决这个特定错误的方法?
编辑:我还想指出该文件可以在 DBF View Plus 中打开、查看和修改。
挑战是我正在检查我的FoxPro代码到源代码控制(使用Mercurial,但这不是这个问题的焦点),并希望快速获得FoxPro SCCTEXT输出和二进制输出而不使用该Tools > Options > Projects > Active source control provider功能.
有关我想要生成的输出类型的示例,VFPX源包含许多这些文本.sca,.vca等文件.有没有办法按需生成这些文件?
我在asp.net中有以下代码:
using (OleDbCommand command = dbConnW.CreateCommand())
{
string CreateTableK = null;
CreateTableK += "Create Table DSKKAR00 (DSK_ID c(10),DSK_KIND N(1),MON_PYM C(3))";
OleDbCommand cmdCreateTable = new OleDbCommand(CreateTableK, dbConnW);
cmdCreateTable.ExecuteNonQuery();
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append(WorkRoomNo + ",");
sb.Append("1,");
sb.Append(",");
OleDbCommand cmd3 = new OleDbCommand("Insert into DSKKAR00 (DSK_ID,DSK_KIND,MON_PYM) Values (" + sb.ToString() + ")", dbConnW);
cmd3.ExecuteNonQuery();
Run Code Online (Sandbox Code Playgroud)
但是我有以下错误:
语法错误
如何.dbf使用 SQL 脚本将文件导入 SQL Server?
从这篇文章中找到了答案,但不幸的是,没有一个对我有用:(:
当我尝试此代码时:
SELECT *
INTO [APP_DB]..[BILLHEAD]
FROM OPENROWSET('MSDASQL', 'Driver=Microsoft Visual FoxPro Driver; SourceDB=D:\DBF; SourceType=DBF', 'SELECT * FROM BILLHEAD')
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
链接服务器“(空)”的 OLE DB 提供程序“MSDASQL”返回消息“[Microsoft][ODBC 驱动程序管理器] 未找到数据源名称且未指定默认驱动程序”。消息 7303,级别 16,状态 1,第 1 行无法初始化链接服务器“(空)”的 OLE DB 访问接口“MSDASQL”的数据源对象。
而且,在尝试此操作时:
SELECT *
FROM openrowset('VFPOLEDB','D:\DBF\BILLHEAD.dbf';'';
'','SELECT * FROM BILLHEAD')
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
消息 7438,级别 16,状态 1,第 1 行
无法在 64 位 SQL Server 上加载 32 位 OLE DB 提供程序“VFPOLEDB”。 …
我们有一个用Visual FoxPro编写的遗留应用程序,我只是继承了.我们无法确定在哪里下载Visual FoxPro.我们有一个MSDN订阅,我被告知应该根据需要获得它的许可,但我实际上找不到下载.