Internetowe bazy danych

Podobne dokumenty
PHP + MySQL w laboratorium (1)

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

Autor: Joanna Karwowska

Podstawy programowania III WYKŁAD 2

Zagadnienia. Konstrukcja bibliotek mysql i mysqli w PHP. Dynamiczne generowanie stron. Połączenie, zapytanie i sesja

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki

Internetowe bazy danych

Bazy danych II. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Część VII Baza danych MySQL i PHP

Zajęcia 13 wykorzystanie MySQL w PHP cz. 2

Zaawansowane bazy danych i hurtownie danych

Systemy internetowe. Wykład 4 mysql. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Sprawdzenie czy połączenie przebiegło poprawnie if (mysqli_connect_errno()) { echo Błąd; Połączenie z bazą danych nie powiodło się.

Instalacja MySQL.

Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07

Sprzeg podstawowy do baz danych w PHP Mateusz Sowa, 2007

PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych:

5. Współpraca z bazą danych MySQL

BAZY DANYCH. Obsługa bazy z poziomu języka PHP. opracowanie: Michał Lech

Internetowe bazy danych

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Aplikacje internetowe

Bazy Danych i Usługi Sieciowe

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

Wykład 05 Bazy danych

Podstawy programowania (PHP/Java)

Obiektowe bazy danych

Bazy danych. dr Radosław Matusik. radmat

SYSTEMY TELEINFORMATYCZNE

Współpraca PHP z MySql

Wykład 5: PHP: praca z bazą danych MySQL

Współpraca PHP z MySql cz.2

Dostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK

Dlaczego PHP? - zalety

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Aplikacje WWW - laboratorium

Tworzenie serwisów WWW. Pierwsza pomoc

PHP5. Radocha z programowania

SQL (ang. Structured Query Language)

Zajęcia 11 wykorzystanie MySQL w PHP

Język PHP. Studium Podyplomowe Sieci Komputerowe i Aplikacje Internetowe. v1.7, 2007/11/23

Bazy danych w PHP dla początkujących

Aplikacje WWW - laboratorium

Projektowanie systemów baz danych

Bazy Danych i Usługi Sieciowe

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.

Systemy internetowe Wykład 4 mysql

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr Prosta obsługa Bazy w PHP

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

PHP i MySQL. Witryna WWW oparta na bazie danych. Wydanie III

Założenia do ćwiczeń: SQL Server UWM Express Edition: \SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń.

Bazy danych i usługi sieciowe

SIECI KOMPUTEROWE I BAZY DANYCH

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Projektowanie aplikacji w modelu MVC opartej o framework CodeIgniter

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

1. Sprawdzenie ustawień konfiguracyjnych. Uruchomienie wiersza poleceń:..\ścieżka\bin>mysqladmin variables

Internetowe Bazy Danych. dr inż. Roman Ptak Katedra Informatyki Technicznej

Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować:

Ref. 7 - Język SQL - polecenia DDL i DML

Java i jej wykorzystanie do tworzenia dynamicznych aplikacji Webowych

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

Bazy danych. Polecenia SQL

Bazy danych 7. SQL podstawy

Database Connectivity

Programowanie w języku Java. Bazy danych SQLite w Javie

SIECI KOMPUTEROWE I BAZY DANYCH

Wykład 5. SQL praca z tabelami 2

Kurs. Podstawy MySQL

Wykład 8. SQL praca z tabelami 5

Język SQL, zajęcia nr 1

Wprowadzenie do Doctrine ORM

6. Bezpieczeństwo przy współpracy z bazami danych

I.Wojnicki, JiTW. PHP PHP Hypertext Preprocessor. Igor Wojnicki. Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie.

Spis treści. Wstęp 5 Rozdział 1. Praca z AJAX-em 9. Rozdział 2. Współpraca ze skryptami PHP 55. Rozdział 3. Obsługa formularzy 81

Internetowe bazy danych

Wykład 03 JavaScript. Michał Drabik

Odnawialne Źródła Energii I rok. Tutorial PostgreSQL

ODBC polecenia i funkcje

Rejestracja i Logowania - PHP/MySQL

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Programowanie w Ruby

PHP: bazy danych, SQL, AJAX i JSON

Zadanie 4. Zadanie 5. Zadanie 6. Który z wymienionych znaczników należy do części <head> dokumentu HTML? A. <img> B. < tle> C. <span> D.

Wprowadzenie do JDBC z wykorzystaniem bazy H2

I.Wojnicki, PHP. PHP PHP Hypertext Preprocessor. Igor Wojnicki. Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie

Internetowe Bazy Danych. dr inż. Roman Ptak Katedra Informatyki Technicznej

Bazy Danych i Usługi Sieciowe

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT

Bazy Danych i Usługi Sieciowe

Specyfikacja instalacji usługi SMS Premium w Przelewy24.pl

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

mysql> UPDATE user SET Password=PASSWORD('pass') WHERE user='root'; Query OK, 2 rows affected (0.05 sec) Rows matched: 2 Changed: 2 Warnings: 0

Systemy GIS Tworzenie zapytań w bazach danych

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Instrukcje DML INSERT, UPDATE, DELETE. COPY

Transkrypt:

Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 5 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl

mysql_list_tables pobranie listy tabel z bazy MySQL resource mysql_list_tables(nazwa_bazy, id-połącz) wskaźnik nazw tabel danej bazy lub FALSE gdy błąd uzyskanie nazw ze wskaźnika funkcją mysql_tablename mysql_query wysłanie zapytania do serwera MySQL resource mysql_query(zapytanie, id-połącz) jeśli brak id-połącz przyjmowane jest połączenie otwarte ostatnio, jeśli żadne otwarte nie jest wywoła się mysql_connect domyślnie zwraca id-wyniku, FALSE gdy błąd w przypadku polecenia SELECT, brak info o liczbie przetworzonych lub zwróconych wierszy mysql_select_db wybór bazy MySQL bool mysql_select_db(nazwa_bazy, id-połącz) jeśli brak id-połącz przyjmowane jest połączenie otwarte ostatnio, jeśli żadne otwarte nie jest wywoła się mysql_connect domyślnie TRUE gdy sukces, FALSE gdy błąd, kolejne wywołania dotyczą aktywnej bazy danych

mysql_field_name podanie nazwy danego pola wyniku string mysql_field_name(resource_wynik, indeks_pola) indeks pola liczony jest od zera mysql_fetch_array wiersz wyniku do tablicy array mysql_fetch_array(resource_wynik) zwraca tablicę zawierającą jeden wiersz wyniku, kolejne wywołanie zwraca następny wiersz, FALSE gdy nie ma kolejnych wierszy oprócz indeksów numerycznych są indeksy asocjacyjne nazwy pól tablic jeśli nazwy pól są jednakowe prawidłowy dostęp tylko numeryczny mysql_create_db utworzenie nowej bazy danych bool mysql_create_db(nazwa_bazy, id-połącz) jeśli brak id-połącz przyjmowane jest połączenie otwarte ostatnio, jeśli żadne otwarte nie jest wywoła się mysql_connect domyślnie TRUE gdy sukces, FALSE gdy błąd

<HTML> <HEAD> <TITLE>Przykład pobierania danych z bazy MySQL</TITLE> </HEAD> <BODY> <?php if (!($polaczenie = mysql_connect( localhost, dino, kuku ))) die( Brak połączenia ); if (!mysql_select_db( Student, $polaczenie)) die( Nie można wybrać bazy ); $pytanie = SELECT num_stud AS Identyfikator, nazwisko AS Nazwisko, imie AS Imie FROM Studenci ORDER BY nazwisko, imie ; $wynik = mysql_query($pytanie, $polaczenie); $ile = mysql_num_rows($wynik); $pola = mysql_num_fields($wynik); <TABLE> <TR> <?php for ($i =0; $i < $pola; $i++) // wyświetl nagłówki kolumn { echo mysql_field_name($wynik, $i); </TR>

<?php while ($dane = mysql_fetch_row($wynik)) { for ($k =0; $k < $pola; $k++) { echo $dane[$k] ; // wyświetla kolejne wiersze wyniku </TABLE> </BODY> </HTML> Nowa Baza Danych <?php $new_db = "testtest"; $connection = @mysql_connect("localhost", "inr", "1N") or die("brak polaczenia"); $result = @mysql_create_db($new_db, $connection) or die("nie udało się utworzyć bazy"); if ($result) { $msg = "<P>Baza danych utworzona!</p>"; <HTML> <HEAD> <TITLE>Tworzenie nowej bazy danych</title> </HEAD> <BODY> <?php echo "$msg"; </BODY> </HTML>

mysql_change_user zmiana użytkownika bool mysql_change_user(user, password, baza, id-połącz) zmiana użytkownika w aktywnym połączeniu lub połączeniu, którego identyfikator podano, jeśli jest nazwa bazy ta będzie aktywna, jeśli nie pozostanie bieżąca mysql_affected_rows liczba przetworzonych wierszy int mysql_affected_rows(id-połącz) zwraca liczbę wierszy przetworzonych w ostatniej operacji INSERT, UPDATE, DELETE, jeśli brak id-połącz ostatnie otwarte połączenie ma zastosowanie do operacji modyfikujących rekordy może podawać nieprawidłowe wyniki dla operacji SELECT mysql_drop_db usunięcie bazy danych bool mysql_drop_db(nazwa_bazy, id-połącz) TRUE gdy sukces, FALSE gdy błąd

mysql_data_seek przesunięcie wskaźnika wyniku bool mysql_data_seek(resource_wynik, int nr_wiersza) przesunięcie wskaźnika na wskazany numer wiersza wyniku, następne wywołanie mysql_fetch_row zwróci ten wiersz numer wiersza liczony od zera mysql_tablename zwraca nazwę tabeli string mysql_tablename(resource_wynik, int i) wskaźnik wyniku zwrócony przez mysql_list_tables oraz indeks tabeli liczba tabel może być określona poprzez mysql_num_rows mysql_field_table pobranie nazwy tabeli poprzez pole string mysql_field_table(resource_wynik, int offset_pola) pobiera nazwę tabeli w której znajduje się pole mysql_free_result zwolnienie pamięci wskaźnika bool mysql_free_result(resource_wynik) do użycia przy pytaniach generujących dużo danych

<?php $connection = @mysql_connect("localhost", "inter", "1N") or die("brak polaczenia"); mysql_select_db( baza ); $result = @mysql_query( SELECT * FROM tabela, $connection) or die( Zapytanie błędne"); // pobranie danych o kolumnie $i = 0; while ($i < mysql_num_field($result)) { echo Informacje o kolumnie $i:<br>\n ; $meta = mysql_fetch_field($result); if (!$meta) { echo informacje niedostępne<br>\n ; echo <PRE> blob: $meta->blob max_lenght: $meta->max_lenght multiple_key: $meta->multiple_key name: $meta->name not_null: $meta->not_null numeric: $meta->numeric primary_key: $meta->primary_key table: $meta->table type: $meta->type unique_key: $meta->unique_key unsigned: $meta->unsigned zerofill: $meta->zerofill </PRE> ; $i++; mysql_free_result($result);

<?php $link = mysql_connect( localhost, dino, 1N ); $fields = mysql_list_fields( baza, tabela, $link); $columns = mysql_num_fields($fields); for ($i = 0; $i < $columns; $i++) { echo mysql_field_name($fields, $i). \n ; <?php $link = mysql_connect( localhost, dino, 1N ); $result = mysql_list_tables( baza, $link); $i = 0; for ($i = 0; $i < mysql_num_rows($result); $i++) { $tb_names[$i] = mysql_tablename($result, $i); echo $tb_names[$i]. <BR> ;

<?php $db_name = "piesio"; $table_name = "ksiazki"; $connection = @mysql_connect("localhost", "dino", 1N") or die("brak polaczenia"); $db = @mysql_select_db($db_name, $connection) or die("wybor nieudany"); $sql = "SELECT * FROM $table_name ORDER BY cena "; $result = @mysql_query($sql, $connection) or die("zapytanie nieudane"); while ($row = mysql_fetch_array($result)) { $isbn = $row['isbn']; $autor = $row['autor']; $tytul = $row['tytul']; $cena = $row['cena']; $display_block.= " <P><strong>$autor</strong> - $tytul<br> <em>isbn: $isbn</em> Cena: $cena</p> ";

<HTML> <HEAD> <TITLE>Dodawanie nowego rekordu</title> </HEAD> <BODY> <H1>Wstawianie rekordu</h1> <FORM ACTION="wstaw.php" METHOD="POST"> <TABLE BORDER=0> <tr><td>isbn</td><td><input type=char name=isbn maxlength=13 size=13><br></td></tr> <tr><td>autor</td><td><input type=char name=autor maxlength=50 size=50><br></td></tr> <tr><td>tytul</td><td><input type=char name=tytul maxlength=60 size=60><br></td></tr> <tr><td>cena</td><td><input type=char name=cena maxlength=7 size=7><br></td></tr> <tr><td colspan=2><input type=submit value="dodaj"></td></tr> </TABLE> </FORM> </BODY> </HTML>

<HTML> <HEAD> <TITLE>Efekt wstawiania nowego rekordu</title> </HEAD> <BODY> <H1>Rezultat wstawiania nowego rekordu</h1> <?php if ((!$isbn) (!$autor) (!$tytul) (!$cena)) { echo "Nie ma wszystkich danych<br>"; exit; $connection = @mysql_connect("localhost", "dino", 1N") or die("brak lacznosci"); $db_name = "piesio"; mysql_select_db($db_name, $connection); $sql = " insert into ksiazki values (\"$isbn\", \"$autor\", \"$tytul\", \"$cena\") "; $result = @mysql_query($sql, $connection) or die("zapytanie chybione"); if ($result) { echo mysql_affected_rows()." rekordow dopisanych"; </BODY> </HTML>

mysql_field_type pobiera typ pola string mysql_field_type(resource_wynik, int offset_pola) zwraca łańcuch z opisem typu pola typy zgodne z dokumentacją MySQL numer pola liczony od zera mysql_field_name pobiera nazwę pola string mysql_field_name(resource_wynik, int offset_pola) zwraca łańcuch z nazwą pola numer pola liczony od zera mysql_field_len pobiera wielkość pola pola int mysql_field_len(resource_wynik, int offset_pola) zwraca liczbę wielkość pola numer pola liczony od zera mysql_free_result zwolnienie pamięci wskaźnika bool mysql_free_result(resource_wynik) do użycia przy pytaniach generujących dużo danych

<?php $connection = @mysql_connect("localhost", "inter", "1N") or die("brak polaczenia"); mysql_select_db( baza ); $result = @mysql_query( SELECT * FROM tabela, $connection) or die( Zapytanie błędne"); $fields = mysql_num_fields($result); $rows = mysql_num_rows($result); $i = 0; $table = mysql_field_table($result, $i); echo Tabela.$table. ma.$fields. pol i.$rows. wierszy <BR> echo Tabela ma następujące pola <BR> ; while ($i < $fields) { $type = mysql_field_type($result, $i); $name = mysql_field_name($result, $i); $len = mysql_field_len($result, $i); echo $type..$name..$len. <BR> ; $i++; <?php $link = mysql_connect( localhost, dino, 1N ); $fields = mysql_list_fields( baza, tabela, $link); $columns = mysql_num_fields($fields); for ($i = 0; $i < $columns; $i++) { echo mysql_field_name($fields, $i). \n ;

mysql_get_client_info info o kliencie MySQL string mysql_get_client_info(void) zwraca łańcuch znaków zawierający wersję bibliotek klienta MySQL mysql_get_host_info info o hoście MySQL string mysql_get_host_info([id-połącz]) zwraca łańcuch typem połączenia, brak id-połącz ostatnio otwarte połączenie mysql_get_proto_info info o protokole MySQL int mysql_get_proto_info([id-połącz]) zwraca liczbę wersję protokołu, brak id-połącz ostatnio otwarte połączenie mysql_get_server_info info o serwerze MySQL int mysql_get_server_info([id-połącz]) zwraca liczbę wersję serwera, brak id-połącz ostatnio otwarte połączenie