webForumDet fria alternativet

SQL eller Access?

8 svar · 630 visningar · startad av nisslass

nisslassMedlem sedan nov. 2001371 inlägg
#1

Vad är största skillnaden mellan MS SQL och Access? SQL ska tydligen vara snabbare? Men annars.. prestandamässigt och kodmässigt?

doggelitoMedlem sedan juni 20003 100 inlägg
#2

Min egna tolkning:
MS SQL är storebror, MY SQL är mellanbror och Access är lillebror.
Kodmässigt är det små skillnader mellan de olika men största
skillnaden är nog priset, då MS SQL kostar typ 15.000, MY SQL är
gratis och Access följer med i Office-paketet som kostar typ 5-6 tusen.
Prestandamässigt gäller nog ordningen ovan också, inte helt lätt
att gämföra dem, det som skiljer mest är nog antalet anrop till
dem, Access är väldigt begränsad mot de andra två.
(jag tykte det även var värt att nämna MY SQL i disskusionen)

Någon mer kunnig kan nog fylla i med mer fakta.

Hoppas du blev lite klokare nu! :)

LAMPMedlem sedan mars 2002729 inlägg
#3

Ursprungligen av doggelito **Min egna tolkning:
MS SQL är storebror, MY SQL är mellanbror och Access är lillebror.
Kodmässigt är det små skillnader mellan de olika men största
skillnaden är nog priset, då MS SQL kostar typ 15.000, MY SQL är
gratis och Access följer med i Office-paketet som kostar typ 5-6 tusen.
Prestandamässigt gäller nog ordningen ovan också, inte helt lätt
att gämföra dem, det som skiljer mest är nog antalet anrop till
dem, Access är väldigt begränsad mot de andra två.
(jag tykte det även var värt att nämna MY SQL i disskusionen)

Någon mer kunnig kan nog fylla i med mer fakta.

Hoppas du blev lite klokare nu! :)**

Du behöver ju inte programmet ms access för att skapa en accessdatabas. Jag skulle vilja säga att mysql är lika mycket storebror som SQL Server. SQL Server lämpar sig till windowsmiljö medan mysql lämpar sig till Unix/Linux miljö. Sedan är nämnda dbms bra på olika saker, då menar jag att läsa, skriva etc.

LarsGMedlem sedan dec. 200012 465 inlägg
#4

Jag skulle vilja säga att mysql är lika mycket storebror som SQL Server.

Det håller jag inte alls med om. Mysql saknar väldigt mycket funktionalitet jämfört med MSSQL och även jämfört med Access. Prestandamässigt så hänger den med MSSQL så länge det är mest läsningar. Mysql skalar inte lika bra som sql server och andra.

Mysql är bättre än Access prestandamässigt men det är inte så mycket att skryta med.

LAMPMedlem sedan mars 2002729 inlägg
#5

Jag är mycket väl medveten om att mysql har bristfälliga funktioner att skala data. Jag syftade mer på att de används på helt olika plattformar. Hur de förhåller sig till oracle mfl vågar jag inte sia om. Men om jag fick välja skulle jag välja SQL Server på en win maskin och mysql på en unix/linux och helst undvikit access om det inte är en liten personlig sida. Det kan hända att övriga dbms lämpar sig bättre, men det vet jag inget om.

nisslassMedlem sedan nov. 2001371 inlägg
#6

Jag är så ny på det här... Kopplingen till en Access databas vet jag hur man gör men en till en SQL... ingen aning.. göra om Access till SQL, är det möjligt?

Kan jag ansluta till min databas som ligger online genom MS Access... programvaran då? Så jag kan administrera den databasen remote?... Annars behöver jag ju tanka hem hela databasen om jag vill göra egna ändringar i den? Access då alltså...

Erik JuhlinMedlem sedan maj 20007 625 inlägg
#7

LarsG, om du plockar in lite andra i jämförelsen som Mimer, Oracle och IBM har väl nån också.
Vad finns det för för/nackdelar med dem?

LAMPMedlem sedan mars 2002729 inlägg
#8

och IBM har väl nån också

Menar du DB2 ?

Hittade lite statestik i CS hämtad från Gartner Dataquest maj 2002.

Totala marknaden:

Oracle 32,0 %
IBM 31,7%
Övriga 17%
Microsoft 16,3%
Infomix 3,0%

Marknaden för relationsdatabaser:

Oracle 39,8 %
IBM 30,7%
Övriga 11,8%
Microsoft 14,4%
Infomix 3,3%

Windowsmarknaden för relationsdatabaser:

Oracle 34,0 %
IBM 20,0%
Övriga 5,3%
Microsoft 39,9%
Infomix 0,8%

Unixmarknaden för relationsdatabaser:

Oracle 63,3%
IBM 17,5%
Övriga 12,0%
Infomix 7,2%
(microsoft ej representerad)

LR^evil.sidMedlem sedan maj 2002552 inlägg
#9

När du kopplar din databas till asp-sidor är det viktigt att du använder dig av rätt ConnectionString, vilken ser ut enligt följande:

[red]"Provider=SQLOLEDB;Server=dbhost1.telenordia.se;Database=databas_namn;UserId=
användar_namn;Password=lösenord;Extended Properties=" & Chr(34) & "Network=dbmssocn" & Chr(34)[/red]

Som databas anger du namnet på din databas. Användarnamn och lösenord är det användarnamn och lösenord du har blivit tilldelad av Telenordia. Trots att användarnamnet och lösenordet står i koden, kan användarna ändå inte komma åt dem eftersom asp-sidorna körs på servern och aldrig visas på klienten. ConnectionString kan anges antingen som en egenskap för objekten Connection, Recordset och Command, eller som en parameter vid öppnandet av objekten.
Nedan följer ett exempel på hur ConnectionString anges som egenskap till Connection-objektet. På grund av den smala spaltbredden görs en radbrytning i strängen, vilken i asp-sidan måste stå på en och samma rad:

[red]<%
	Set con = Server.CreateObject("ADODB.Connection")
	con.ConnectionString = "Provider=SQLOLEDB;Server=dbhost1.telenordia.se;Database=jesper;UserId=
	jesper;Password=jesper;Extended Properties=" & Chr(34) & "Network=dbmssocn" & Chr(34)
	con.Open
	con.Execute("DELETE FROM test WHERE nr > 20)

	con.Close
	Set con = nothing
%>[/red]

Om ConnectionString istället anges som en parameter till metoden Open, ser det ut så här:

[red]<%
	Set con = Server.CreateObject("ADODB.Connection")
	con.Open "Provider=SQLOLEDB;Server=dbhost1.telenordia.se;Database=jesper;UserId=
	jesper;Password=jesper;Extended Properties=" & Chr(34) & "Network=dbmssocn" & Chr(34)
	con.Execute("DELETE FROM test WHERE nr > 20)

	con.Close
	Set con = nothing
%>[/red]

För objekten Recordset och Command kan man använda egenskapen ActiveConnection på motsvarande sätt:

[red]<%
	Set rs = Server.CreateObject("ADODB.Recordset")
	rs.ActiveConnection = "Provider=SQLOLEDB;Server=dbhost1.telenordia.se;Database=jesper;UserId=
	jesper;Password=jesper;Extended Properties=" & Chr(34) & "Network=dbmssocn" & Chr(34)
	rs.Source = "SELECT * FROM  test"
	rs.Open

	do until rs.EOF
		Response.Write rs(1) & "<br>"
		rs.Movenext
	Loop

	rs.Close
	Set rs = nothing
%>[/red]

Alternativt kan man också ange en ConnectionString som parameter till metoden Open:

[red]<%
	Set rs = Server.CreateObject("ADODB.Recordset") 
	rs.Open "SELECT * FROM  test",
	"Provider=SQLOLEDB;Server=dbhost1.telenordia.se;Database=jesper;UserId=
	jesper;Password=jesper;Extended Properties=" & Chr(34) & "Network=dbmssocn" & Chr(34)

	do until rs.EOF
		Response.Write rs(1) & "<br>"
		rs.Movenext
	Loop

	rs.Close
	Set rs = nothing
%>[/red]

kommer inte ihåg vart jag fann det här men det ger nog svar på din fråga.

Genererad på 372 ms · cache AV · v20260730165559-full.f96bc7eb