Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL]Tworzenie funkcji w mysql
arzach
post 29.07.2011, 12:47:50
Post #1





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 27.11.2008

Ostrzeżenie: (0%)
-----


Witam mam zainstalowany WampServer 2.1e

Do katalogu wamp/bin/mysql/mysql5.5.8/
Wrzuciłem plik o nazwie test.sql o zawartości
  1. delimiter //
  2.  
  3. CREATE FUNCTION HelloWorld () RETURNS VARCHAR(20)
  4. BEGIN
  5. RETURN 'Hello World';
  6. END
  7.  
  8. delimiter ;


I w konsoli mysql wpisuje

source test.sql

I wywala bład proszę o pomoc
feiled to open file test error 2

Proszę o pomoc umieszczałem plik w innym folderze i tez nic
Go to the top of the page
+Quote Post
wookieb
post 29.07.2011, 12:49:16
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




source szuka pliku w katalogu roboczym (czyli w tym w którym jesteś w momencie odpalenia polecenie "mysql").
Wiec...
Kod
cd wamp/bin/mysql/mysql5.5.8/
mysql
... itd


--------------------
Go to the top of the page
+Quote Post
arzach
post 29.07.2011, 13:00:26
Post #3





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 27.11.2008

Ostrzeżenie: (0%)
-----


Umieściłem plik na C:/test.sql

I wpisałem SOURCE c:/test.sql;

I wywala błąd


Oraz mam drugie pytanie czy można utworzyć funkcję z poziomu php
np coś w ten deseń

  1. delimiter //
  2. CREATE FUNCTION HelloWorld () RETURNS VARCHAR(20)
  3. BEGIN
  4. RETURN 'Hello World';
  5. END
  6.  
  7. delimiter ;
  8. ");
  9. select helloworld();
  10. ");




Ten post edytował arzach 29.07.2011, 13:11:50
Go to the top of the page
+Quote Post
wookieb
post 29.07.2011, 13:11:52
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Ale przecież jesteś w mysql a nie w standardowym środowisku (czyli tam gdzie cd działa).
Otwórz nowe CMD (start -> uruchom -> cmd)
Kod
c:
mysql -u <user> -p
use <nazwa_bazy>
source test.sql;


--------------------
Go to the top of the page
+Quote Post
arzach
post 29.07.2011, 13:59:13
Post #5





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 27.11.2008

Ostrzeżenie: (0%)
-----


Nie działa probowałem rożne wpisywałem w konsole
  1. CREATE FUNCTION HelloWorld () RETURNS VARCHAR(20)
  2. BEGIN
  3. RETURN 'Hello World';
  4. END
  5.  


i za każdym razem błąd
Go to the top of the page
+Quote Post
wookieb
post 29.07.2011, 14:01:14
Post #6





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Naucz się pracować na katalogach roboczych to zadziałą.
A tobie teraz NIE DZIAŁA bo zapomniałaś o poleceniach DELIMITER.

Poza tym po END powinieneś zakończyć funkcję odpowiednio... //
  1. delimiter //
  2.  
  3. CREATE FUNCTION HelloWorld () RETURNS VARCHAR(20)
  4. BEGIN
  5. RETURN 'Hello World';
  6. END//
  7.  
  8. delimiter ;
Powód edycji: [wookieb]:


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 00:06