saucer大侠先谢谢你,不过我照着你的第二个例子做,出现了以下错误:多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态值。没有工作被完成。服务器用户 'ZXC-W7M760XQ9S8\ASPNET' 不是数据库 'model' 中的有效用户。已将数据库上下文改为 'master'。已将数据库上下文改为 'GrocerToGo'。 我的aspx是这样的: <%@ Import Namespace="System" %> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.SqlClient" %> <%@ Import Namespace="System.Collections" %> <%@ Import Namespace="System.Data.OleDb" %> <%@ Page Language="C#" Inherits="aa.bb" Src="aaa.aspx.cs" %><html> <head></head> <body> </body> </html>aspx.cs文件是这样的:using System; using System.Collections; using System.Data; using System.Data.SqlClient; using System.Data.OleDb;namespace aa { public class bb : System.Web.UI.Page { void Page_Load(Object Src, EventArgs E ) {string ConnectionString = "Provider=SQLOLEDB;server=(local)\\NetSDK;database=test;Trusted_Connection=yes"; OleDbConnection conn = new OleDbConnection(ConnectionString); conn.Open(); DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Catalogs, new object[] {null}); ArrayList a = new ArrayList(); Console.WriteLine("list of databases:"); foreach (DataRow dr in schemaTable.Rows) { a.Add((String)dr["CATALOG_NAME"]); Console.WriteLine(dr["CATALOG_NAME"]); } foreach (String Database in a) { conn.ChangeDatabase(Database); Console.WriteLine("*****list of tables in database {0}:*********", Database); schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] {null, null, null, "TABLE"}); foreach (DataRow dr in schemaTable.Rows) Console.WriteLine(dr["TABLE_NAME"]); } conn.Close();}}}请问我以上有什么错误吗?再谢谢.
the code is run under ASPNET account, it doesn't have permissions to access the database, either add the account to the database, or use SQL Authentication:Provider=SQLOLEDB;server=(local)\\NetSDK;database=test;Trusted_Connection=yes"; ==> Provider=SQLOLEDB;server=(local)\\NetSDK;database=test;uid=sa;pwd=;";
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Collections" %>
<%@ Import Namespace="System.Data.OleDb" %>
<%@ Page Language="C#" Inherits="aa.bb" Src="aaa.aspx.cs" %><html>
<head></head>
<body>
</body>
</html>aspx.cs文件是这样的:using System;
using System.Collections;
using System.Data;
using System.Data.SqlClient;
using System.Data.OleDb;namespace aa
{
public class bb : System.Web.UI.Page
{
void Page_Load(Object Src, EventArgs E ) {string ConnectionString = "Provider=SQLOLEDB;server=(local)\\NetSDK;database=test;Trusted_Connection=yes";
OleDbConnection conn = new OleDbConnection(ConnectionString);
conn.Open();
DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Catalogs, new object[] {null}); ArrayList a = new ArrayList();
Console.WriteLine("list of databases:");
foreach (DataRow dr in schemaTable.Rows)
{
a.Add((String)dr["CATALOG_NAME"]);
Console.WriteLine(dr["CATALOG_NAME"]);
} foreach (String Database in a)
{
conn.ChangeDatabase(Database);
Console.WriteLine("*****list of tables in database {0}:*********", Database);
schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
new object[] {null, null, null, "TABLE"}); foreach (DataRow dr in schemaTable.Rows)
Console.WriteLine(dr["TABLE_NAME"]);
}
conn.Close();}}}请问我以上有什么错误吗?再谢谢.
==>
Provider=SQLOLEDB;server=(local)\\NetSDK;database=test;uid=sa;pwd=;";
==>
Response.Write