Newsgroup: it.lavoro.professioni.webmaster
Titolo: Una domanda sui DB

Mi accingo a studiare i databases e loro relativa implementazione sul web.
Prima di iniziare, mi frulla per la testa una domanda, ovviamente da newbie:
Microsoft Access sta all' Sql come Frontpage sta all'HTML?
Cioč Access, che peraltro ho praticamente mai usato, č un editor o sbaglio?
Perchč non vedo codice da scrivere, mi sembra ci sia solo un macchinoso
lavoro manuale di inserimento dati...spero di non aver detto una
castroneria.
Detto questo, un'altra cosa: il doppio accoppiamento  Access+ASP  e
Php+MySql (a proposito, MySql č l'editor dell'Sql?) č insolubile oppure sono
possibili e consigliabili (su questo, a naso, ne dubito fortemente) degli
ibridi?
Vi ringrazio anticipatamente.

 ibridi?
L'accoppiamento Access+ASP è nato da confusione di termini: ASP, per mezzo
dell'oggetto ADO, riesce ad interagire (scrivere, leggere, cancellare) con
archivi Access (come lo farebbe su qualsiasi altro database).
ADO su archivio Access ha alcuni problemi quando il numero di record è molto
elevato o il numero di accessi contemporanei è molto elevato quindi per
applicazioni molto performanti (per i siti normali che ci sono in giro
Access va più che bene) si usano altri database più potenti (Oracle, SQL
Server, MySQL).
MySQL è un database (dispone in linea di massima delle medesime
caratteristiche ma molto più performante).
L'accoppiamento PHP+MySQL è nato dal momento che entrambi sono Open Source
(quindi gratuiti). Le combinazioni cui tu accenni possono essere molteplici.
Io ad esempio uso ASP con database MySQL su server W2K e devo dire che
funziona tutto molto bene (una volta imparato a conoscere i punti
no-standard di MySQL).
Alberto

(quindi gratuiti). 
alberto, d'accordo su tutto, ma open source non mi pare sia per forza
sinonimo di gratuità.
è vero che quasi tutte le applicazioni os sono gratuite ma mi pare che
una cosa non implichi l'altra.
-- 
dipende.

ibridi?
cominciamo a dire che non esiste un editor dell'sql.  l'sql è un
linguaggio che dovrebbe essere standard e comune a tutti gli strumenti
di gestione dei database, quali access, mysql, postgres, oracle,
microsoft sql server, ibm db2, il cui scopo è quello di definire delle
query.  una query è un "filtro" da usare per selezionare dei dati da
un insieme oppure è un "comando" che si dà al database, tipo aggiungi
alla tale tabella un record così e così, oppure cancella dalla
talaltra tabella i record che corrispondono a questi criteri, o anche
crea una tabella così e così e cose del genere.
mysql, come access, oracle ecc., è un coso al quale con vari sistemi
gli dai in pasto delle query sql e lui le esegue.
il sistema tipico delle applicazioni web è creare una connessione al
database, quale che sia, e poi dirgli di eseguire delle query sql
sotto forma di stringhe di testo che dovrai costruirti via codice.
per quanto riguarda le accoppiate che citi, a quanto so php ha delle
classi fatte apposta per usare il db mysql.  in soldoni vuol dire che
è più facile e si fa prima.  ma non ho mai provato personalmente.
altra cosa da considerare è il sistema operativo che usi.  mi pare di
aver letto qui sul ng che i risultati ottimali php-mysql li hai su
macchine lamp, cioè sistema operativo linux, server apache, db mysql e
linguaggio di scripting php.
puoi anche installare apache e php su windows, ma a sto punto chi te
lo fa fare... :-)
l'accoppiata asp-access è dovuta più che altro (per quanto mi
riguarda) ad una maggiore integrazione e facilità di gestione degli
ambienti di test.
comunque per i db in generale e per access in particolare ci sono dei
ng specifici.
-- 
dipende.



vero
non conosco tutti i tipi di licenze, ma la gpl non lo implica proprio,
puoi fartelo pagare quanto vuoi se trovi qualcuno che lo compra :)
--
Nico

 Vi ringrazio anticipatamente.
 
Nulla,
	Nicholas

individuali ma sul web č semplicemente comico.
e vai con la cazzata...
certo, non va bene per *grandi* volumi di traffico, ma per siti
diciamo cosě "normali" va benissimo.  esperienza personale.
poi ognuno si faccia le seghe coi dogmi che preferisce, tanto per far
vedere quant'č fico e quanto le spara grosse.
-- 
dipende.

> e vai con la cazzata...
mi associo.
un vecchio sito con un catalogo sotto access
ha 150 accessi giornalieri mirati (cioč clienti che
entrano in area riservata e consultano il catalogo)
Nessun problema da quasi 3 anni.
Marco

 snip >
<quote>
Microsoft Access - 
http://msdn.microsoft.com/office/
 Oltre ad avere una capacita' un po' limitata, ha il problema di
 gonfiarsi come un pallone per via del modo di gestione interno e
 richiede pertanto compattazioni periodiche del DB. Supporta un dialetto
 SQL sufficientemente esteso, ma ha la brutta abitudine di consentire
 cose piuttosto fuorvianti, come l'accettare nomi di campi che sono
 parole riservate dell'SQL, con il risultato che poi alcune query non
 funzionano su altri database e non si capisce perche' (e' successo). Le
 prestazioni del sistema in condizioni stand-alone e con indici numerici
 sono eccellenti. Disponibile solo per piattaforma Windows, dovrebbe
 essere usato solo per applicazioni che gestiscono un piccolo volume di
 dati o che non fanno troppe modifiche sui dati e con multiutenza
 medio/piccola (10 utenti sono gia' troppi). Attenzione a non avere
 problemi di rete se lo si usa in multiutenza.
</quote>
Ovviamente tu e il sempre più divertente Boccianti ne sapete di più dei 
DBA professionisti di it.comp.software.database, ne sono certo.
Eh, ma piccolo Boccia, te il reply stupido lo devi fare, nella speranza
che nessuno ti quoti. Peccato che se ti quotano fai la solita figura da
coglione, che tra l'altro ti si addice alla perfezione.
Direi che la cosa migliore che puoi fare è *evitare* di dare indicazioni
palesemente *errate* ai nubbi, se sono così poco furbi da seguire i tuoi
consigli si ritrovano a offrire a un cliente un prodotto scadente in
base al tuo bel faccione che con tre compagni di merende si mette a
testare il suo 'forum' con 'uno, due, tre, via' per gestire le
concorrenze.
Mai sentito parlare di ACID ? Mai usato DBA seri ? Ma il sito che
gestisci è su Access ? Metticelo se ti piace così tanto (perchè è guarda
caso su un DBMS no? Posto che tu lo sappia, chissà che cazzo ci fai in
mezzo a programmatori).
Leggiti un libro.
	nicholas

 ibridi?
Le accoppiate possono essere infinite (o quasi) dipende tutto da come
vengono connessi i componenti tra di loro.
L'accoppiata php+mysql funziona egregiamente in quanto php include le api
per la gestione di mysql, ma puoi ottenere ottimi risultati anche con
asp+odbc+mysql ovviamente puoi migliorare il tutto utilizzando
asp+oledb+mysql.
Pertanto sta a te decidere quale applicativo e quale database utilizzare e
poi utilizzare un connettore rapido, stabile e performante.
-- 
ITHost (your host company)
Technical Manager
C. Paparelli (MCSE,MCSD,MCDBA)
http://www.ithost.ch

 asp+oledb+mysql.
Si, ma un layer rallenta, anche se di poco. E' meglio utilizzare le API
del DB, anche perchè di funzioncine carine e utili MySQL ne ha un
fottìo.
Non so però come funzioni con ASP.
	Nicholas

mezzo a programmatori).
in mezzo a programmatori?  ma se i programmatori sono tutti come te,
bello mio, ti assicuro che c'è lavoro per tutti.  chi cazzo ha voglia
di avere a che fare con un pallone gonfiato come te.  guarda, io che
il mondo lo conosco, è cento volte più apprezzato un autodidatta che
crasha tutte le applicazioni ma sa stare al mondo che un petulante
boriosetto tutto manuali, nozionismo e sentito dire.
io parlo per esperienza personale, tu per sentito dire e per aver
letto sui libri.  vedi un po' tu cos'è meglio.
certo, amazon su access, o l'anagrafe di stato su access non ce la
metterei, ma il sito del niubi sì, e anche tanti altri siti diciamo
così normalmente trafficati, secondo i nostri standard nazionali.
almeno ha un'interfaccia decente per smanettare il db.  poi quando
diventa bravo gli fai fare tutto con stringhe sql.
-- 
dipende.


Moderatore di it.comp.www.asp - Microsoft .NET MVP
http://www.aspitalia.com/
 Enjoy the .NET community!
Corso Classic ASP, 
ASP.NET
 a Treviso? Dal 16 Giugno
su 
http://corsi.aspitalia.com/corsi/treviso.aspx

 Non so però come funzioni con ASP.
ASP (così come tutti gli ActiveX Engine o cmq il mondo COM in generale)
utilizza quasi sempre ODBC e se va bene (ovvero, chi sviluppa lo sa...)
OLE-db (che è già un passo in avanti).
fortunamente con il .NET Framework ci sono i managed provider, quindi
virtualmente ogni db dovrebbe avere il proprio. in questo momento ci sono
per SQL Svr, Oracle 8/9 (ma mi sa anche 7), MySQL.
per tutti gli altri rimane la possibilità di utilizzare i collegamenti
attraverso OLE-db o ODBC.
già solo questo fa capire che in genere un'app 
ASP.NET
 è più veloce di una
ASP (se utilizzi uno dei managed provider), senza contare tutto il resto.


 vista :(
personalmente non ho ancora avuto questi problemi ma ti parlo di tabelle con
al massimo 50'000 record ed con circa 20 connessioni contemporanee, inoltre
per ovvie ragioni consiglio sempre di passare a ms sql, eheheh ;-))


 per SQL Svr, Oracle 8/9 (ma mi sa anche 7), MySQL.
Nah, ce ne sono molti di più, da PostGreSQL a DB2 a Sybase a SQLLite.
Si vede che alla Microsoft non hanno voglia di lavorare.
	nicholas

 Si vede che alla Microsoft non hanno voglia di lavorare.
infatti i managed provider non deve farli microsoft, ma chi produce il db.
le specifiche sono lě (ci sono delle interfaccie da implementare) ed infatti
mi pare che per mysql ce ne siano due o tre.
microsoft li ha fatti per sql svr e oracle.
poi postGreSQL su Windows non ce lo vedo, DB2 forse q.uno lo usa e come per
gli altri ci accedi sempre via OLE-db.
fino a che i produttori non si metteranno a fare i managed provider :)


 a ms sql, eheheh ;-))
le connessioni contemporanee sono diverse, le query (per forza di cose...)
sono tante e le tabelle abbastanza grosse.
ma forse è solo sfiga, vedo di essere tra i pochi con questo problema di
frammentazione delle tabelle.


 frammentazione delle tabelle.
domandona ma usi innodb? non è un problema di variabili di mysql?


 domandona ma usi innodb? non è un problema di variabili di mysql?
 
Perchè InnoDB da problemi ? Hanno anche provato a rifilarmele... 

 domandona ma usi innodb? non č un problema di variabili di mysql?
no, MyISAM. avevo sentito di 
q.sa
 con innodb, ma usando MyISAM (dicono)
tutto dovrebbe essere a posto.
c'č da dire che online ho trovato diverse persone che si lamentano, ma non
sono mai riuscito ad incontrarne una :(
e questo sia usando una 3.5.x (o che era prima dell'ultima famiglia...) sia
una 4.0.12.
da premettere che i db sono su un disco SCSI di taglio medio (mi pare 10
giga) dove ci sono solo loro (cosě da evitare frammentazioni).


 ha scritto nel messaggio
news:bc4j0k$a6l$1...@newsread.albacom.net...

No anzi (a parte 20 mb di log file) funzionano a meraviglia, ma se non le
usi è meglio non attivarle.


 giga) dove ci sono solo loro (cosě da evitare frammentazioni).
Devo dirti qualche problemino (cpu 100%) con la 4.0.12 a causa di query
lente (+ 10 sec) l'ho avuto, adesso ho aggiornato i server mysql alla 4.0.13
e non ho piů nessun problema, inoltre finalmente si possono leggere i byte
spediti e ricevuti ;-))


 possono leggere i byte spediti e ricevuti ;-))
allora corro ad aggiornare :)
