为什么金蝶的表资料库查询这么麻烦

如题所述

第1个回答  2022-11-06

为什么金蝶的表资料库查询这么麻烦

做金蝶的外挂程式,需要了解表结构,通常可以使用K3 BOS的栏位查询工具。或者直接通过查询以下三张表:
1、表描述表——t_TableDescription
2、栏位描述表——t_FieldDescription
3、子系统描述表——t_SubSystem
如果你想查询仓存管理系统有哪些表,可以通过以下SQL语句来实现:
1
2
3
4
SELECT t1.FName,t2.FTableName,t2.FDescription
FROM dbo.t_SubSystem t1
INNER JOIN dbo.t_TableDescription t2 ON t1.FSubSysID = t2.FSubSystemID
WHERE t1.FName LIKE '%仓存管理%'

资料库查询学号为157170063

1.select*from表名where学号like'%[4,5]'2.select*from表名groupby学生号having成绩>avg(成绩)1.select*fromXSQK,KC,XS_KCwhereXSQK.学号=XS_KC.学号andXSQK.课程号=XS_KC.课程号andXSQK.学号like'%[4,5]'------------------*的部分是查询所有列,你可以针对的填上你想要的列2.select*fromXSQK,KC,XS_KC-----------这是要从3个表中查询whereXSQK.学号=XS_KC.学号andXSQK.课程号=XS_KC.课程号-------这是3个表关联到一起andXS_KC.学号in---------我限定的条件学号在in里面(selectXS_KC.学号fromXS_KCgroupbyXS_KC.学号havingmin(成绩)>60)------------巢状的查询是通过学号分组每个人有多个成绩,最小的成绩大于60说明他所有成绩都大于60,返回的是学号,-----------------最终结果是返回所有成绩都大于60的所有同学的全部资讯如果不明白追问

请教ThinkPHP为什么会这么容易资料库查询超时

是你的sql查询语句有问题吧,或者伺服器的响应速度不行?ThinkPHP和资料库查询超时,应该没有丝毫关系

为什么Entity Framework不能进行跨资料库查询

在Entity Framework中,可以通过ToTable("表名")指定表名进行对映,Entity Framework会根据指定的表名构建SQL语句,如果在这里加上资料库名和Schema名(也就是ToTable("资料库.dbo.表名")),是不是可以实现跨资料库查询呢?
于是,根据这个思路进行了试验,结果发现了Entity Framework不能进行跨资料库查询的秘密:Entity Framework会对ToTable()中指定的表名进行处理,加上中括号,如果没有指定Schema名,会在表名前加上[dbo],比如:ToTable("表名"),SQL语句中的表名是[dbo].[表名]。而在加“中括号”时的不正确有处理,成为了罪魁祸首。
试图组装一些特殊字串骗过Entity Framework,都没成功。目前在用Reflector在Entity Framework的程式码中寻找凶手,只有找到了凶手,知道了作案手段,才能知道是否有可能解决这个问题。

的"CNBlogsTex.dbo.blog_PostBody"转换为"[CNBlogsText.dbo].[blog_PostBody]",从而造成不能进行跨资料库查询。
今天上午,我们通过Reflector对Entity Framework的程式码进行分析,找出了真相。
真相如下:
1. 对于“CNBlogsTex.dbo.blog_PostBody"字串,Entity Framework对其进行了拆分,拆分为:Schema名称(CNBlogsTex.dbo)与资料库表名称(blog_PostBod)。
这部分是在System.Data.Entity.ModelConfiguration.Utilities.ObjectExtensions的ParseQualifiedTableName()方法中处理的,Reflector出来的程式码如下:
复制程式码
public static void ParseQualifiedTableName(string qualifiedName, out string schemaName, out string tableName)
{
qualifiedName = qualifiedName.Trim();
int length = qualifiedName.LastIndexOf('.');
schemaName = null;
tableName = qualifiedName;
switch (length)
{
case -1:
break;
case 0:
throw Error.ToTable_InvalidSchemaName(qualifiedName);
default:
if (length == (tableName.Length - 1))
{
throw Error.ToTable_InvalidTableName(qualifiedName);
}
schemaName = qualifiedName.Substring(0, length);
tableName = qualifiedName.Substring(length + 1);
break;
}
if (string.IsNullOrWhiteSpace(schemaName))
{
schemaName = null;
}
}
复制程式码
2. 方括号的新增(CNBlogsTex.dbo变为[CNBlogsTex.dbo],blog_PostBod变为[blog_PostBod])是在System.Data.SqlClient.SqlDdlBuilder的AppendIdentifier(string identifier)方法中处理的,Reflector出来的程式码如下:
private void AppendIdentifier(string identifier)
{
this.AppendSql("[" + identifier.Replace("]", "]]") + "]");
}

资料库查询中 #new 什么意思

名为new的临时表?

怎么样用资料库查询

各种select语句

求助thomson reuters资料库查询Flurbiprofen

看你的mysql当前预设的储存引擎:
mysql> show variables like '%storage_engine%';
你要看某个表用了什么引擎(在显示结果里引数engine后面的就表示该表当前用的储存引擎):
mysql> show create table 表名;

这个资料库查询怎么做

select * from A1 except select * from A2

相似回答