View Full Version : SQL puro dove inserirlo ?
Mi spiego : vorrei creare un database interamente in SQL ... cioè anche la creazione delle tabelle la voglio fare da codice , così come pure le query e tutto il resto .... quale programma dovrei utilizzare per inserire codice nativo SQL ? Mi consigliate ? Se non sbaglio MySql è uno di questi , ma non ne sono sicuro ..... Una volta mi è capitato di vedere un database realizzato in un semplice file di testo dove c'era tutto codice SQL .... mi aiutate per favore ?
l.golinelli
27-04-2003, 09:42
MySQL e programma scritto in C
;)
Scusa ti spieghi meglio ? Ma MySql non è maggiormente portato per sistemi UNIX ? A me interessava qualcosa su windows .... ora sto provando a leggere qualcosa su Microsoft SQL server ..... non so se sia la mia soluzione però
Cmq anche volendo usare MYSQL mi dici quale versione scaricare ? per windows ovviamente ? E mi dici anche dopo inserisco il codice sorgente ? Grazie mille
SQL Server è a pagamento...
MySQL funziona benissimo sotto Windows !!!
Athlon@Home
27-04-2003, 10:11
allora mycql è un ottimo database opensource e gratuito
www.mysql.com scarichi la versione stabile più nuova che c'è x win 32
dopodichè lo installi e ti dovrebbe installare anche la gui x gestire il database, lo avvii e dalla gui puoi inserire "codice sql" x creare tabelle e tutto :) o in alternativa usi phpmyadmin, ma devi anche installare ad esempio apache e php x poterlo gestire
niente di estremamente complicato cmq ;)
ah grazie mille ti avevo contattato nell'altra discussione ..... ok ma mi dici dove posso scaricarlo e quale versione ? per caso ce ne è una anche italiana ? e poi dove inserire il codice ? fatemi sapere
monkey72
27-04-2003, 10:12
dbms oracle
Scarica il server versione 4.0.12 e il Control Center versione 0.9.1...
Il Control Center è l'interfaccia grafica per gestire i database...
ok lo sto scaricando .... sono circa 20 MB ..... ok lo installo e pi dovrei trovare questa gui giusto ? ah un'altra cosa ma è questo software che alla fine mi rilascia il file di testo ? e questo file di testo sarebbe il mio database giusto ?
infatti sto scaricando quello ..... ma sto control center sarebbe la famosa gui di cui si parlava ?
ah non riesco a trovare il control .....
Originally posted by "leon84"
infatti sto scaricando quello ..... ma sto control center sarebbe la famosa gui di cui si parlava ?
Sì...
Home page... Intestazione del sito... Accanto al server c'è control center...
Comunque in MySQL i DB non sono file di testo...
Allora ora proverò a scaricarlo .... un'altra cosa ..... ho appena finito di installare mysql ..... l'installazione è riuscita ma nel menù start non c'è niente .... nella cartella dove me lo ha installato ci sono delle icone ma se le lancio non vedo niente .....
ok ci sono .... lo sto scaricando .....
Athlon@Home
27-04-2003, 10:41
beh il db si avvia come "servizio" lavora in background (si dice cosi? :D) se vai nel task manager lo vedi, avvia la versione giusta x il tuo windows
ok l'ho pure installato .... mi si apre una finestra che si chiama console .... ma dove mettere le mani ? Se ho capito bene questa finestra è l'interfaccia grafica al mysql che ho installato prima giusto ? Ah un'altra curiosità : ma come ACCESS anche Mysql è un DBMS ?
Dopo che hai installato MySQL devi procedere a metterlo in sicurezza...
Da una finstra DOS scrivi:
mysql e poi Invio
Ora scrivi:
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'la tua password' WITH GRANT OPTION;
quit[INVIO]
Dal prompt scrivi:
mysql -u root -p[INVIO]
Inserisci la password...
REVOKE ALL PRIVILEGES ON *.* FROM ''@'%';
REVOKE ALL PRIVILEGES ON *.* FROM '%'@'';
REVOKE ALL PRIVILEGES ON *.* FROM '%'@'%';
Ovviamente dopo ogni punto e virgola premi invio...
Quel programma che si chiama mysql è il client in testo... Volendo le stringhe SQL le puoi emttere anche lì...
Ad esempio:
SHOW DATABASES; (attento a non modificare il database mysql)
CREATE DATABASE Prova;
SHOW DATABASES;
USE Prova;
CREATE TABLE Tabella (ID Integer AUTO_INCREMENT Primary Key, Nome VARCHAR(50));
DESCRIBE Tabella;
INSERT INTO Tabella VALUES (NULL, 'Ciao');
SELECT * FROM Tabella;
Premetto che uso Win XP ... e lanciando da DOS mysql mi dice che non è un comando interno o esterno valido .....
Originally posted by "leon84"
ma come ACCESS anche Mysql è un DBMS ?
Confrontare Access con MySQL è come confrontare Access con SQL Server...
Access è una interfaccia intorno ad un unico database...
MySQL è un database server...che può mettere a disposizione più database a molti utenti...
MySQL può avere anche 10000 utenti connessi contemporaneamente...da locale o da remoto...
Access dopo 5 utenti connessi contemporaneamente comncia a perdere colpi...
Devi andare nella directory in cui hai installato mysql e all'internod ella directory bin c'è mysql.exe...
ah capisco ..... ma quindi ritronando al discorso di quel sito MWOPEN se ricordi , quello fa uso di un database Access ... è una chicca allora !!!!!
Quindi Access lo si può considerare come un database client giusto ? Estenderlo al web , come server , è un pò rischioso ..... chiaramente con Mysql posso fare le stesse cose che con Access se non di più giusto ?
Fatto mi dice impossibile connettersi a Mysql Server su localhost .... ma non mi dire che occorre anche installare il webserver apache ?
Originally posted by "leon84"
ah capisco ..... ma quindi ritronando al discorso di quel sito MWOPEN se ricordi , quello fa uso di un database Access ... è una chicca allora !!!!!
Non database client...ma un databse locale all'applicazione...
Più chicca è una cacca ;) Sicuramente con molti utenti verrà messo in ginocchio...
AH senti una cosa ..... un mio amico mi ha prestato il suo Microsoft SQL server ..... volendo mettere le mani con questo prodotto cosa bisogna fare ?
Originally posted by "leon84"
Fatto mi dice impossibile connettersi a Mysql Server su localhost .... ma non mi dire che occorre anche installare il webserver apache ?
No...non occorre...
Vai in Pannello di controllo-> Strumenti di amministrazione-> Servizi... Cerca MySQL e avvialo...
Originally posted by "leon84"
AH senti una cosa ..... un mio amico mi ha prestato il suo Microsoft SQL server ..... volendo mettere le mani con questo prodotto cosa bisogna fare ?
Sinceramente non lo mai installato e nemmeno usato se non da remoto...
porca miseria non lo trovo !!!!!
ok ho risolto .... bisognava prima avviare un file .exe che si trova all'interno di una cartellina .... mi ha chiesto nome utente e password ... ora da dos funziona ... ma ora dopo averlo protetto come faccio a creare i database ?
Te l'ho fatto prima un esempio di creazione di un database...
Comunque su www.mysql.com c'è la documentazione scaricabile con tutta la sintassi...
si ok il codice va inserito stesso nell'editor di DOS ma poi il file del database quale sarà ?
Cmq cionci , non voglio insistere , ma tempo fa provando phpnuke ho riscontrato che il database era un file di testo ..... è possibile ?
Originally posted by "leon84"
si ok il codice va inserito stesso nell'editor di DOS ma poi il file del database quale sarà ?
Non nell'editor di DOS ;)
Il file del database si trova all'interno della directory data dentro mysql...
Sono file multo complessi... Tutt'altro che di testo...
Scusa cionci e allora dove inserire queste istruzioni ?
Cioè quello che voglio dire io è che una volta creato il database a quale file fare riferimento se lo voglio spostare su un altro pc ? capito ?
Aspetta ora ricordo una cosa : quando utilizzai phpnuke il file di database lo caricai con phpmyadmin o qualcosa del genere .... che altro è ?
Originally posted by "leon84"
Scusa cionci e allora dove inserire queste istruzioni ?
Tramite il client DOS (non l'editor)...mysql.exe
phpmyadmin...è un'interfaccia web per mysql...
Solitamente quanto si sposta un database si usa mysqldump per ottenere il file di testo corrispondente al DB da ricaricare nel nuovo database...
Il file di testo conteine le query SQL necessarie per ricreare il DB nello stesso identico stato precedente...
Ok ma io per editor intendevo proprio mysql.exe .... Cmq quale istruzione devo dargli per dirgli che sto creando un nuovo database ? Mi spiego : Devo creare un database dall'inizio ..... devo quindi creare le tabelle , le relazioni che intercorrono tra le tabelle , e alla fine anche le query ok ? Mi spieghi passo passo come crearle queste cose ? non le istruzioni sql che le conosco ma come fargli a dire di creare un nuovo database ec... capito ?
Te l'ho scritto quando ti ho spiegato come mettere in sicurezza il DB...
Originally posted by "cionci"
Dopo che hai installato MySQL devi procedere a metterlo in sicurezza...
Da una finstra DOS scrivi:
mysql e poi Invio
Ora scrivi:
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'la tua password' WITH GRANT OPTION;
quit[INVIO]
Dal prompt scrivi:
mysql -u root -p[INVIO]
Inserisci la password...
REVOKE ALL PRIVILEGES ON *.* FROM ''@'%';
REVOKE ALL PRIVILEGES ON *.* FROM '%'@'';
REVOKE ALL PRIVILEGES ON *.* FROM '%'@'%';
Ovviamente dopo ogni punto e virgola premi invio...
Quel programma che si chiama mysql è il client in testo... Volendo le stringhe SQL le puoi emttere anche lì...
Ad esempio:
SHOW DATABASES; (attento a non modificare il database mysql)
CREATE DATABASE Prova;
SHOW DATABASES;
USE Prova;
CREATE TABLE Tabella (ID Integer AUTO_INCREMENT Primary Key, Nome VARCHAR(50));
DESCRIBE Tabella;
INSERT INTO Tabella VALUES (NULL, 'Ciao');
SELECT * FROM Tabella;
ok allora .... non è che hai una guida dove ci sono tutti questi comandi ? poi un'altra cosa ..... io mi creo le tabelle con questo editor .... poi volendo creare le interrogazioni parto direttamente con SELECT ..... o devo dirgli in qualche modo che sto per scrivere una query ? E una volta creata questa query come la si richiama ?
Guarda gli ultimi comandi...
Creo la tabella, ci inserisco un dato e faccio una SELECT...
Prova e vedrai...
C'è la guida scaricabile sul sito di MySQL...
Si ok inserisco un dato e faccio una select , ma a me la select serve farla quando l'utente me lo chiede .... un pò come access .... se non vai sulla query creata non la vedi mai .... non so se mi spiego
Hai detto tu che volevi un sistema per inserire direttamente le query SQL...
Allora lo vuoi fare da un linguaggio di programmazione ? Da quale ?
No ..... allora forse ho le idee un pò confuse ..... io considero e non so se sbaglio mysql come access ..... in access dopo che ho creato una query , cliccandoci due volte sopra la apro ..... capisci ? Credevo che in mysql ci fosse uno spazio riservato alle query ( un pò come access suddivide in tabelle,report,.....) e che una volta scritte si potevano richiamare come in access capisci ?
No...non c'è...ma non è che ci vuole molto per farlo...
Vedi...Access è un database con un programma intorno che lo usa... I report e tutto il resto (escluse le query salvate) hanno una loro utilità solo se utilizzati con Access... Se apriamo il database tramite ODBC o ADO non hanno più alcun significato...
Ti prendi un file di testo...prendi la tua query la metti nel file di testo e lo salvi...
Poi quando la vuoi usare la copi e la incolli nel client di testo...
Altrimenti usando MySQL Control Center, ti connetti al database e poi clicki sul pulsante SQL...
Lì puoi fare una query salvarla con un nome e ricaricarla...
Dal prompt scrivi:
mysql -u root -p[INVIO]
Inserisci la password...
REVOKE ALL PRIVILEGES ON *.* FROM ''@'%';
REVOKE ALL PRIVILEGES ON *.* FROM '%'@'';
REVOKE ALL PRIVILEGES ON *.* FROM '%'@'%';
Ovviamente dopo ogni punto e virgola premi invio...
A ME NN FUNZIONA ???????
MI SCRIVE QUESTO:
C:\Programmi\mysql\bin>mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 43 to server version: 4.0.13-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> revoke all privileges on *.* from "@'%';
"> "
-> revoke all privileges on *.* from '%'@";
"> "
-> revoke all privileges on *.* from '%'@'%';
ERROR 1064: You have an error in your SQL syntax. Check the manual that corresp
onds to your MySQL server version for the right syntax to use near 'revoke all p
rivileges on *.* from '%'@";
"
revoke all privilege
mysql> 'revoke all privileges on *.* from '%'@";
'>
'> '
-> 'revoke all privileges on *.* from '%'@';
ERROR 1064: You have an error in your SQL syntax. Check the manual that corresp
onds to your MySQL server version for the right syntax to use near ''revoke all
privileges on *.* from '%'@";
'
'revoke all privil
mysql> REVOKE ALL PRIVILEGES ON *.* FROM "@'%';
"> REVOKE ALL PRIVILEGES ON *.* FROM "@'%';
ERROR 1145: The host or user argument to GRANT is too long
mysql>
PERCHè MI Fà COSì?????????' :muro:
Copia una riga alla volta fino al punto e virgola e premi invio...
mi funziona solo la prima e le altre no???!!!
perchè????
Che ti dice delle altre 2 ?
Scrivi
SELECT * FROM MySQL.User;
ed incollami il risultato...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.