我不断收到此错误数据库架构已更改为“1”附近:语法错误.我没有在代码中更改我的架构.这是我制作架构的代码.希望尝试每个答案,以便您发布它.此代码用于将数据库传输到另一个数据库程序.因此它必须与多个数据库程序...
我不断收到此错误数据库架构已更改为“1”附近:语法错误.
我没有在代码中更改我的架构.
这是我制作架构的代码.
希望尝试每个答案,以便您发布它.
此代码用于将数据库传输到另一个数据库程序.
因此它必须与多个数据库程序兼容.
public DataTable GetSchemaTable(string schema, string nameTable)
{
switch (m_dbType)
{
case dbTypeEnum.Sqlite:
//Make the schema of the source table
MakeConnectionString();
string fullTableName = schema.Length > 0
? string.Format("[{0}].[{1}]", schema, nameTable)
: string.Format("[{0}]", nameTable);
if (!string.IsNullOrEmpty(fullTableName))
{
string sql = string.Format("SELECT * FROM {0} LIMIT 1", fullTableName);
DataTable dtSchemaSource;
try
{
using (IDataReader rdr = ReadOnlyForwardOnly(sql))
{
dtSchemaSource = rdr.GetSchemaTable();
}
}
finally
{
CloseConnection();
}
if (dtSchemaSource == null)
{
throw new RadGeneralException("rdr.GetSchemaTable() returns null with sql = " + sql);
}
return dtSchemaSource;
}
break;
default:
//Make the schema of the source table
MakeConnectionString();
string fullTableName = schema.Length > 0
? string.Format("[{0}].[{1}]", schema, nameTable)
: string.Format("[{0}]", nameTable);
string sql = string.Format("SELECT TOP 1 * FROM {0}", fullTableName);
DataTable dtSchemaSource;
try
{
using (IDataReader rdr = ReadOnlyForwardOnly(sql))
{
dtSchemaSource = rdr.GetSchemaTable();
}
}
finally
{
CloseConnection();
}
if (dtSchemaSource == null)
{
throw new RadGeneralException("rdr.GetSchemaTable() returns null with sql = " + sql);
}
return dtSchemaSource;
}
}
这是sqlite架构发生更改的部分.
StringBuilder sbColList = new StringBuilder();
nCol = 0;
identityColInBothTables = false;
//Make the schema of the source table
DataTable dtSchemaSource = objDbSource.GetSchemaTable(SchemaSource, Name);
//Make the schema of the target table
DataTable dtSchemaTarget = objDbTarget.GetSchemaTable(SchemaTarget, Name);
解决方法:
我相信,而不是SELECT TOP 1 *你需要使用SELECT * FROM …. LIMIT 1
沃梦达教程
本文标题为:c# – 数据库模式已更改
基础教程推荐
猜你喜欢
- C# 程序通用结构 2023-05-11
- WCF基础介绍并创建简单应用程序 2023-05-16
- C# 元组和值元组的具体使用 2023-03-14
- C# XML基础入门小结(XML文件内容增删改查清) 2023-05-26
- c# – 如何在Unity中实现和使用低级键盘钩子来禁用Windows快捷方式? 2023-09-20
- C#中的一些延时函数 2023-06-14
- C#中new操作符的工作机制 2023-07-04
- 浅析c# 线程同步 2023-03-10
- c# webapi 配置swagger的方法 2023-03-04
- c# – Xamarin Studio(在OSX上)或Visual Studio(在Windows上)? 2023-09-19