如下connection出错 反应“系统错误” 请求指导 拜谢……

susantj 2006-07-13 01:05:21
program events;

{$APPTYPE CONSOLE}

{%DotNetAssemblyCompiler 'c:\windows\microsoft.net\framework\v1.1.4322\System.Data.dll'}
uses
SysUtils,
System.Data,
System.Data.SQLClient,
System.Collections,
System.Reflection;

procedure OnStateChangeEvent(sender: System.Object;
args: StateChangeEventArgs);
begin
Console.WriteLine(System.String.Format(
'State changed from {0} to {1}.', args.CurrentState,
args.OriginalState));
end;

procedure OnInfoMessageEvent(sender: System.Object;
args: SqlInfoMessageEventArgs);
var
se: System.Data.SqlClient.SqlError;
erEnum: IEnumerator;
begin
erEnum := args.Errors.GetEnumerator;
while erEnum.MoveNext do
begin
se := erEnum.Current as SqlError;
Console.WriteLine('Server: '+se.Server);
Console.WriteLine('Source: '+se.Source);
Console.WriteLine('Class: '+se.&Class.ToString);
Console.WriteLine('State: '+se.State.ToString);
Console.WriteLine('Number: '+se.Number.ToString);
Console.WriteLine('LineNumber: '+se.LineNumber.ToString);
Console.WriteLine('Procedure: '+se.&Procedure);
Console.WriteLine('Message: '+se.Message);
end;
end;

const
CNSTR = 'server=XWING;database=Northwind;Trusted_Connection=Yes';
var
sqlcn: SqlConnection;
cmd: SqlCommand;
begin
sqlcn := SqlConnection.Create(CNSTR);
Include(sqlcn.InfoMessage, OnInfoMessageEvent);
Include(sqlcn.StateChange, OnStateChangeEvent);
sqlcn.Open();
try
System.Console.WriteLine(System.String.Format('Connected to: {0}',
sqlcn.ConnectionString)); //在本行产生错误
cmd := sqlcn.CreateCommand;
cmd.CommandText := 'PRINT ''hello''';
cmd.ExecuteNonQuery;
finally
sqlcn.Close;
end;
Console.ReadLine;
end.



连接数据库总是产生错误
且均显示“系统错误”
实在不明白是怎么回事

向各位大侠求助……

拜谢!

如下代码得到相同结果
uses
SysUtils,
System.Data,
System.Data.SQLClient,
System.Collections,
System.Reflection;

procedure OnStateChangeEvent(sender: System.Object;
args: StateChangeEventArgs);
begin
Console.WriteLine(System.String.Format(
'State changed from {0} to {1}.', args.CurrentState,
args.OriginalState));
end;

procedure OnInfoMessageEvent(sender: System.Object;
args: SqlInfoMessageEventArgs);
var
se: System.Data.SqlClient.SqlError;
erEnum: IEnumerator;
begin
erEnum := args.Errors.GetEnumerator;
while erEnum.MoveNext do
begin
se := erEnum.Current as SqlError;
Console.WriteLine('Server: '+se.Server);
Console.WriteLine('Source: '+se.Source);
Console.WriteLine('Class: '+se.&Class.ToString);
Console.WriteLine('State: '+se.State.ToString);
Console.WriteLine('Number: '+se.Number.ToString);
Console.WriteLine('LineNumber: '+se.LineNumber.ToString);
Console.WriteLine('Procedure: '+se.&Procedure);
Console.WriteLine('Message: '+se.Message);
end;
end;

const
CNSTR = 'server=XWING;database=Northwind;Trusted_Connection=Yes';
var
sqlcn: SqlConnection;
cmd: SqlCommand;
begin
sqlcn := SqlConnection.Create(CNSTR);
Include(sqlcn.InfoMessage, OnInfoMessageEvent);
Include(sqlcn.StateChange, OnStateChangeEvent);
sqlcn.Open();
try
System.Console.WriteLine(System.String.Format('Connected to: {0}',
sqlcn.ConnectionString));
cmd := sqlcn.CreateCommand;
cmd.CommandText := 'PRINT ''hello''';
cmd.ExecuteNonQuery;
finally
sqlcn.Close;
end;
Console.ReadLine;
end.
...全文
295 1 打赏 收藏 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingtoo008 2006-08-12
  • 打赏
  • 举报
回复
路过...
------------------------------------------------------------------------------------
100M.Net空间+50M企业邮局=60元/年
100M.Net空间+国际顶级域名=100元/年
国际顶级域名.com.net.cn=50元/年
本站申请域名可绑定免费10M Asp.Net空间
1000M.Net空间 + 100M MsSql数据库 + 1000M企业邮局 + 顶级域名=600元/年
数据库 企业邮局 网站推广 整机租用 美国空间 网站建设 均有售
还有很多优惠套餐提供给各个用户层.
有意者可联系电话:021-64802212 传真:021-64802212
咨询信箱:info@kingtoo.com 咨询OICQ:68311305,379620139 81778640

1,979

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧