-1
你好,我得到了錯誤:錯誤「令牌UKNOWN」在Borland的
Token unknown - line 1, char 74
當我試圖讓與SQL注入的查詢時,不帶參數我沒有任何問題,這裏是代碼:
DbProviderFactory factory= DbProviderFactories.GetFactory("Borland.Data.AdoDbxClient");
IDbConnection c = factory.CreateConnection();
c.ConnectionString = "DriverName=Interbase;Database=....;RoleName=RoleName;User_Name=...;Password=......;SQLDialect=1;MetaDataAssemblyLoader=Borland.Data.TDBXInterbaseMetaDataCommandFactory,Borland.Data.DbxReadOnlyMetaData,Version=11.0.5000.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b;GetDriverFunc=getSQLDriverINTERBASE;LibraryName=dbxint30.dll;VendorLib=GDS32.DLL";
c.Open();
IDbCommand cmd = c.CreateCommand();
cmd.CommandText = @"SELECT ID,NAME FROM USERS WHERE UPPER(NAME) = @NAME ORDER BY ID";
cmd.Connection = c;
IDbDataParameter p = cmd.CreateParameter();
p.ParameterName = "@NAME";
p.DbType = DbType.String;
p.Size = 15;
p.Value = "test_spring";
cmd.Parameters.Add(p);
IDataReader myreader = cmd.ExecuteReader();
DataTable dt = new DataTable();
int fieldCount = myreader.FieldCount;
for (int i = 0; i < fieldCount; i++)
{
dt.Columns.Add(myreader.GetName(i), myreader.GetFieldType(i));
}
while (myreader.Read())
{
object[] values = new object[fieldCount];
myreader.GetValues(values);
DataRow dataRow = dt.Rows.Add(values);
// We should not AcceptChangesDuringFill to avoid multiple data row versions
}
dt.EndLoadData();
堆棧跟蹤:
[TAdoDbxException (0x65): Token unknown - line 1, char 4
TERM]
Borland.Data.TAdoDbxProviderFactory.AdoDbxException(TDBXError DBXError) +34
Borland.Data.TDBXContext.Error(Int32 ErrorCode, String ErrorMessage) +66
Borland.Data.TDBXMethodTable.RaiseError(TDBXContext DBXContext, Int32 DBXResult, IntPtr DBXHandle, String AdditionalInfo) +288
Borland.Data.TDBXDynalinkCommand.CheckResult(Int32 DBXResult) +33
Borland.Data.TDBXDynalinkCommand.DerivedPrepare() +63
Borland.Data.TDBXCommand.Prepare() +66
Borland.Data.TDBXCommand.CommandExecuting() +54
Borland.Data.TDBXCommand.ExecuteQuery() +72
Borland.Data.TDBXMorphicCommand.ExecuteQuery() +23
Borland.Data.TAdoDbxCommand.ExecuteDbDataReader(CommandBehavior Behavior) +57
System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior) +10
WebApplication1._Default.Page_Load(Object sender, EventArgs e) in C:\Users\ntaskas\Documents\Visual Studio 2008\Projects\WebApplication1\WebApplication1\Default.aspx.cs:43
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +50
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627
PLZ我要完成一個項目!任何想法??
Thx爲您的答案,但與這些更正再次我有同樣的錯誤。 –
究竟在哪一行,你遇到異常?向我發送堆棧跟蹤詳細信息。 – RRM
在這一行中:IDataReader myreader = cmd.ExecuteReader();出現錯誤。 –