Försök med att initiera connection så här istället.
string connection = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=data/DMAB2_chat.mdb";
4 svar · 384 visningar · startad av Brimba
Sitter och försöker connecta en accessdatabas i c#
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
<script language="C#" runat="server">
protected void Page_Load() {
string strconn = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=";
string accessdb = server.mappath("data/DMAB2_chat.mdb");
string connection = strconn+accessDB;
string SQLStmt = "Select * from tabChat";
ADOConnection oConnection = new ADOConnection(connection);
ADODataSetCommand oCommand = new ADODataSetCommand(SQLStmt, connection);
DataSet ds = new DataSet();
oCommand.FillDataSet(ds, "cID");
MyDataGrid.DataSource=ds.Tables["cID"].DefaultView;
MyDataGrid.DataBind();
}
</script>
Compiler Error Message: CS0234: The type or namespace name 'server' does not exist in the class or namespace 'ASP'
Line 9: string accessdb = server.mappath("data/DMAB2_chat.mdb");
Några tips?
Försök med att initiera connection så här istället.
string connection = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=data/DMAB2_chat.mdb";
aha! Nu löste det sig...
string connection = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=c:/data/DMAB2_chat.mdb";
Problemet var att jag tidigare hade provat med samma sak, men hade använt \ istället för /
Så det kan bli
Hur mycket tid (och systemresurser) sparar man egentligen genom att koppla sig direkt mot en databas istället för att göra det via ODBC? Finns det någon vits med att göra det på en enklare sida med inte allt för många besökare?
Jag läste på någon sida att man helst inte skall använda accessdatabaser mot .net. Men det fungerar ju självklart
Jag har även läst att ODBC skall vara ca 20% långsammare.