Ogldasz odpowiedzi wyszukane dla hasa: sql date
Temat: problem bez rozwiazania ...
Czesc, nie wiem o co chodzi w PHPLibie, ale nie jest to tu wiazaca kwestia (chyba). Z tego co widze poniezej to wykonujesz zapytanie, nastepnie przegladasz wiersze w petli i dla jakies wartosci tworzysz kolejne zapytanie i tez wykonujesz je. A nie mozesz zlaczyc danych z tych tabel ? np.: (tyczy sie Towjego przykladu) $sql="select t1.*, t2.* from tabela t1, tabela2 t2 where t1.data=t2.id" i po prostu to wykonac i "wypluc" w petli. Jak widzisz oszczedzasz sobie i nam niepotrzebnych zmartwien :)) Wracajac do twojego przykladu to zdaje sie ze "zamazujesz" sobie 2-gim zapytaniem wyniki z pieerwszego, ja jesli juz, zrobilbym tak: <? $sql="select * from t1"; $q=db_query($sql); while ($r=db_fetch_object($q)) { $tmp = $r-data; $sql="select * from t2 where id= $tmp"; $q1=db_query($sql); $r1=db_fetch_object($q1) ; }
? Uzyte tu funkcje to takie moje "wrapery" na funckcje z MySQL'a w PHP.
od kilku dni probuje od Was uzyskac odpowiedz, czy da sie w phpLibie zagniezdzic zapytania do bazy, tzn: Mam pytanko z mysql-a (w phpLibie): $query="SELECT * FROM tabela"; $dbh-query($query); while( $row = $dbh-next_record()) { /* pobieram wartosc pola */ $tmp=$dbh-f("data"); /* a teraz chcialbym w tej petli zadac kolejne pytanie z wartoscie tej petli , wiec robie */ $query2="SELECT * FROM tabela2 WHERE id = $tmp"; $dbh-query($query); $tmp2=$dbh-f("imie"); } i wszystko bylobo, ok (takie przynajmniej robi wrazenie, ale jak np pierwsze zapytanie zwraca mi 10 rekordow a drugie 1 to petla wykonuje sie tylko jeden raz bo $dbh zwraca juz inna ilosc pol.
-- MW soft4all<atpolbiznes.pl http://soft4all.polbiznes.pl http://soft4all.polbiznes.pl/a/apache_vs_aol
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Dodanie rekordu do tabeli po aktualizacji pola na podformularzu
Zenon Biedrzycki wrote:
| Mam formularz w którym zagnieżdżony jest podformularz tabela. | Chciałbym aby po katualizacji pola na podformularzu dodawany był | rekord do tabeli logującej. Wszystko działa jak mam otwarty dany | podformularz sam, ale jak mam otwarty fromularz i robię zmiany na | podformularzu to mam okienko z prośbą o podanie wartości. | KOD | Private Sub ABI__data_wykreślenia__AfterUpdate() | DoCmd.SetWarnings (WarningsOf) | | DoCmd.RunSQL "INSERT INTO LOG_HR ( [Autonumerowanie_HR],[Wartość po], | [User], Data) SELECT [Forms]![HR20061207_A]![Autonumerowanie] as wyr6, | [Forms]![HR20061207_A]![ABI (data wykreślenia)] AS Wyr2, | CurrentUser() AS Wyr3, Now() AS Wyr4;", -1 | DoCmd.RunCommand acCmdSaveRecord | | End Sub | Co powinienem poprawić, żeby to zadziałało? | Access nie widzi wartości z pól | [Forms]![HR20061207_A]![Autonumerowanie] i | [Forms]![HR20061207_A]![ABI (data wykreślenia)] Access nie rozumie co to jest [Forms]![HR20061207_A], bo taki formularz nie jest otwarty ! Kolekcja Forms zawiera formularze otwarte bezpośrednio. Jeśli zaś jest to podfrormularz, to należy do niego odwołać się pełnym odwołaniem: Forms!FormularzGlowny!HR20061207_A.Form!Autonumerowanie (o ile nazwa kontrolki podformularza jest taka sama jak nazwa obiektu, który zawiera) Ale takie odwołanie konieczne jest jedynie w przypadku, gdy odwołujesz się do tego formularza z modułu standardowego, innego formularza lub kwerendy (Twój przypadek) W module _TEGO_ formularza wystarczy uzyć Me (!) I to daje wskazówkę, jak powinieneś napisać swój kod: Dim sql as string sql = "INSERT INTO LOG_HR " & _ " ( [Autonumerowanie_HR],[Wartość po], [User], Data) " & _ "SELECT " & _ Me!Autonumerowanie & _ ", " & Format(Me![ABI (data wykreślenia)], "#mm/dd/yyyy#") & _ ", CurrentUser(), Now()" DoCmd.RunSQL sql Czyli w zmiennej sql sklejasz docelowe polecenie, tak aby wyglądało powiedzmy: INSERT INTO LOG_HR ( [Autonumerowanie_HR],[Wartość po], [User], Data ) SELECT 1234, #04/29/2008#, CurrentUser(), Now() i taki argument przekazujesz do Docmd.RunSQL. Jest to moze mało czytelne, ale logika chyba jasna (?) Ja preferuję uzywanie tymczasowych kwerend parametrycznych: Dim db as Database Dim qr as QueryDef Dim sql as string sql = "Parameters p1 long, p2 datetime, p3 text (255), p4 datetime;" sql = sql & vbNewLine & "Insert into LOG_HR " sql = sql & vbNewLine & "([Autonumerowanie_HR],[Wartość po], [User], Data)" sql = sql & vbNewLine & "SELECT p1, p2, p3, p4 " set db = CurrentDb set qr = db.CreateQueryDef("", sql) qr.Parameters(0).Value = Me!Autonumerowanie qr.Parameters(1).Value = Me![ABI (data wykreślenia)] qr.Parameters(2).Value = CurrentUser qr.Parameters(3).Value = Now qr.execute i nie musze przejmować się ptaszkami, płotkami, formatami amerykańskimi - niczym.
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Dodanie rekordu do tabeli po aktualizacji pola na podformularzu
Krzysztof Naworyta <k.nawor@datacomp.com.plnapisał(a): Zenon Biedrzycki wrote: | Mam formularz w którym zagnieżdżony jest podformularz tabela. | Chciałbym aby po katualizacji pola na podformularzu dodawany był | rekord do tabeli logującej. Wszystko działa jak mam otwarty dany | podformularz sam, ale jak mam otwarty fromularz i robię zmiany na | podformularzu to mam okienko z prośbą o podanie wartości. | KOD | Private Sub ABI__data_wykreślenia__AfterUpdate() | DoCmd.SetWarnings (WarningsOf) | | DoCmd.RunSQL "INSERT INTO LOG_HR ( [Autonumerowanie_HR],[Wartość po], | [User], Data) SELECT [Forms]![HR20061207_A]![Autonumerowanie] as wyr6, | [Forms]![HR20061207_A]![ABI (data wykreślenia)] AS Wyr2, | CurrentUser() AS Wyr3, Now() AS Wyr4;", -1 | DoCmd.RunCommand acCmdSaveRecord | | End Sub | Co powinienem poprawić, żeby to zadziałało? | Access nie widzi wartości z pól | [Forms]![HR20061207_A]![Autonumerowanie] i | [Forms]![HR20061207_A]![ABI (data wykreślenia)]
Access nie rozumie co to jest [Forms]![HR20061207_A], bo taki formularz nie jest otwarty ! Kolekcja Forms zawiera formularze otwarte bezpośrednio. Jeśli zaś jest to podfrormularz, to należy do niego odwołać się pełnym odwołaniem: Forms!FormularzGlowny!HR20061207_A.Form!Autonumerowanie (o ile nazwa kontrolki podformularza jest taka sama jak nazwa obiektu, który zawiera) Ale takie odwołanie konieczne jest jedynie w przypadku, gdy odwołujesz się do tego formularza z modułu standardowego, innego formularza lub kwerendy (Twój przypadek) W module _TEGO_ formularza wystarczy uzyć Me (!) I to daje wskazówkę, jak powinieneś napisać swój kod: Dim sql as string sql = "INSERT INTO LOG_HR " & _ " ( [Autonumerowanie_HR],[Wartość po], [User], Data) " & _ "SELECT " & _ Me!Autonumerowanie & _ ", " & Format(Me![ABI (data wykreślenia)], "#mm/dd/yyyy#") & _ ", CurrentUser(), Now()" DoCmd.RunSQL sql Czyli w zmiennej sql sklejasz docelowe polecenie, tak aby wyglądało powiedzmy: INSERT INTO LOG_HR ( [Autonumerowanie_HR],[Wartość po], [User], Data ) SELECT 1234, #04/29/2008#, CurrentUser(), Now() i taki argument przekazujesz do Docmd.RunSQL. Jest to moze mało czytelne, ale logika chyba jasna (?) Ja preferuję uzywanie tymczasowych kwerend parametrycznych: Dim db as Database Dim qr as QueryDef Dim sql as string sql = "Parameters p1 long, p2 datetime, p3 text (255), p4 datetime;" sql = sql & vbNewLine & "Insert into LOG_HR " sql = sql & vbNewLine & "([Autonumerowanie_HR],[Wartość po], [User], Data)" sql = sql & vbNewLine & "SELECT p1, p2, p3, p4 " set db = CurrentDb set qr = db.CreateQueryDef("", sql) qr.Parameters(0).Value = Me!Autonumerowanie qr.Parameters(1).Value = Me![ABI (data wykreślenia)] qr.Parameters(2).Value = CurrentUser qr.Parameters(3).Value = Now qr.execute i nie musze przejmować się ptaszkami, płotkami, formatami amerykańskimi - niczym. -- KN
Dzięki Działa!
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Microsoft Security Bulletin (MS00-014)
The following is a Security Bulletin from the Microsoft Product Security Notification Service. Please do not reply to this message, as it was sent from an unattended mailbox. ******************************** Microsoft Security Bulletin (MS00-014) -------------------------------------- Patch Available for "SQL Query Abuse" Vulnerability Originally Posted: March 08, 2000 Summary ======= Microsoft has released a patch that eliminates a security vulnerability in MicrosoftŽ SQL Server 7.0 and Microsoft Data Engine (MSDE) 1.0. The vulnerability could allow the remote author of a malicious SQL query to take unauthorized actions on a SQL Server or MSDE database or on the underlying system that was hosting the SQL Server or MSDE database. Frequently asked questions regarding this vulnerability and the patch can be found at http://www.microsoft.com/technet/security/bulletin/fq00-014.asp Issue ===== Microsoft SQL Server 7.0 and MSDE 1.0 perform incomplete argument validation on certain classes of remotely submitted SQL statements. If a user is able to submit a particular form of a SQL Select statement to SQL Server or MSDE, it is possible to take actions on the SQL data base or, if the SQL Server or MDSE is operating in an account with elevated privileges on the underlying system, on the underlying operating system itself. In order to exploit this vulnerability, a user would have to have the right to submit queries to the SQL Server or MSDE via ODBC, OLE DB, or DB-Library and be logged on using SQL Server Security. The user would not require any special privileges beyond the right to submit SQL queries. Affected Software Versions ========================== Microsoft SQL Server Version 7.0 and Microsoft Data Engine (MSDE) 1.0. Patch Availability ================== - http://www.microsoft.com/downloads/release.asp?ReleaseID=19132 Note: Additional security patches are available at the Microsoft Download Center More Information ================ Please see the following references for more information related to this issue. - Frequently Asked Questions: Microsoft Security Bulletin MS00-014, http://www.microsoft.com/technet/security/bulletin/fq00-014.asp. - As soon as more information on this topic is available, it will be posted at http://www.microsoft.com/technet/security/bulletin/ms00-014.asp. - Microsoft TechNet Security web site, http://www.microsoft.com/technet/security/default.asp. Obtaining Support on this Issue =============================== This is a fully supported patch. Information on contacting Microsoft Technical Support is available at http://support.microsoft.com/support/contact/default.asp. Acknowledgments =============== Microsoft thanks Sven Hammesfahr http://www.itrain.de for reporting the SQL Query Abuse vulnerability to us and working with us to protect customers.. Revisions ========= - March 08, 2000: Bulletin Created. THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Last updated March 8, 2000 Š 2000 Microsoft Corporation. All rights reserved. Terms of use. ******************************************************************* You have received this e-mail bulletin as a result of your registration to the Microsoft Product Security Notification Service. You may unsubscribe from this e-mail notification service at any time by sending an e-mail to MICROSOFT_SECURITY-SIGNOFF-REQU@ANNOUNCE.MICROSOFT.COM The subject line and message body are not used in processing the request, and can be anything you like. For more information on the Microsoft Security Notification Service please visit http://www.microsoft.com/security/services/bulletin.asp. For security-related information about Microsoft products, please visit the Microsoft Security Advisor web site at http://www.microsoft.com/security.
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Jak zrobić kopię bazy zapytaniem w pliku php ?
Ja to robię tak: <? set_time_limit(0); $host="host"; $login_baza="login"; $haslo_baza="pass"; $war = date("U"); $data = date("Y-m-d",$war); $file_name = "powiat/".$data.".sql"; touch($file_name); //chmod($file_name,"0777"); $open = fopen($file_name,"w+"); $connection=@mysql_connect($host, $login_baza, $haslo_baza) or die (include"error/blad_baza.php"); $sql = "SHOW DATABASES"; $sql_res = @mysql_query($sql, $connection); while ($arr = mysql_fetch_array($sql_res)) { // pobieranie wszystkich baz danych z serwera $baza = $arr[0]; $zapisz .= "##
## Zrzut dla bazy $baza
##
USE $baza;
"; $db=@mysql_select_db($baza, $connection) or die (include"error/blad_baza.php"); $sql2="SHOW TABLES"; $sql_res2 = @mysql_query($sql2, $connection); while ($arr2 = mysql_fetch_array($sql_res2)) { // pobieranie nazw tabel z konkretnej bazy unset($field); $field = array(); $tabela = $arr2[0]; $zapisz .= "
##
##Zrzut tabeli $tabela
##
"; $fields = mysql_list_fields($baza, $tabela, $connection); $columns = mysql_num_fields($fields); for ($i = 0; $i < $columns; $i++) { // pobieranie nazw pól z konkretnej tabeli $pole = mysql_field_name($fields, $i); $tablica=array_push($field,$pole); } // zwraca strukturę tabeli $sql3="SHOW CREATE TABLE $tabela"; $sql_res3 = @mysql_query($sql3, $connection); $zapisz .= "
##
## Wyswietlenie struktury tabeli $tabela
##
"; while ($arr3 = mysql_fetch_array($sql_res3)) { $zapisz .= "
$arr3[1];"; // pobieranie warto?ci dla konkretnej tabeli $sql4 = "SELECT * FROM $tabela"; $sql_res4 = @mysql_query($sql4, $connection); $zapisz .= "
##
## Wyswietlenie danych z tabeli $tabela
##
"; while ($arr4 = mysql_fetch_array($sql_res4)) { $wartosc = count($field); $zapisz .= "INSERT INTO $tabela VALUES("; for ($i=0;$i<$wartosc;$i++) { $pole1 = $arr4[$i]; $zapisz .= ""$pole1""; if ($i!=$wartosc-1) $zapisz .= ","; } $zapisz .= ");
"; } } fwrite($open,$zapisz); unset($zapisz); } }
$war2 = date("U"); fclose($open); ? I w cronie ustawiłem sobie dzienne robienie kopii i po krzyku. Pozdrawiam, Flipi
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Jak uzyskac jeden connect do MsSql 7.0
Tak w komponencie TDatabase wybralem odpowiedni alias dla wlasciwosci AliasName, wlasciwosci DatabaseName nadalem wartosc np. dbBaza1 i komponentom TTable wlasciwosc DatabaseName wybralem wlasnie dbBaza1 a nie alias wiec korzysta z TDatabase a nie z aliasu.
Ha czyli wszystko zgodnie ze sztuka czy jak otwierasz jakies zapytanie to jestes pytany o uzytkownika? Jezeli tak to nie uzupelniles jeszcze wszystkiego z komponentu TDataBase 2x kliknij na nim i nascisnij przycisk default, uzupelnij nazwe uzytkownika i haslo ustaw loginprompt na false a keepconnection na true
ja zrobilem test i uzyskalem takie logi z nich wynika ze jest to jedno polaczenie 2 10:17:23 Log started for: Delphi 4 3 10:17:26 Log started for: Project1 4 10:17:26 SQL Prepare: SQL Server - select * from dbo.proba 5 10:17:26 SQL Execute: SQL Server - select * from dbo.proba 6 10:17:26 SQL Stmt: SQL Server - Fetch 7 10:17:26 SQL Data Out: SQL Server - Column = 1, Name = id, Type = fldINT32, Precision = 10, Scale = 0, Data = 1 8 10:17:26 SQL Data Out: SQL Server - Column = 2, Name = nazwa, Type = fldZSTRING, Precision = 5, Scale = 0, Data = lll 9 10:17:27 SQL Prepare: SQL Server - select * from dbo.proba 10 10:17:27 SQL Data Out: SQL Server - Column = 1, Name = id, Type = fldINT32, Precision = 10, Scale = 0, Data = 2 11 10:17:27 SQL Data Out: SQL Server - Column = 2, Name = nazwa, Type = fldZSTRING, Precision = 5, Scale = 0, Data = aaa 12 10:17:27 SQL Data Out: SQL Server - Column = 1, Name = id, Type = fldINT32, Precision = 10, Scale = 0, Data = 3 13 10:17:27 SQL Data Out: SQL Server - Column = 2, Name = nazwa, Type = fldZSTRING, Precision = 5, Scale = 0, Data = oooo 14 10:17:27 SQL Data Out: SQL Server - Column = 1, Name = id, Type = fldINT32, Precision = 10, Scale = 0, Data = 4 15 10:17:27 SQL Data Out: SQL Server - Column = 2, Name = nazwa, Type = fldZSTRING, Precision = 5, Scale = 0, Data = aaa 16 10:17:27 SQL Data Out: SQL Server - Column = 1, Name = id, Type = fldINT32, Precision = 10, Scale = 0, Data = 5 17 10:17:27 SQL Data Out: SQL Server - Column = 2, Name = nazwa, Type = fldZSTRING, Precision = 5, Scale = 0, Data = zzz 18 10:17:27 SQL Data Out: SQL Server - Column = 1, Name = id, Type = fldINT32, Precision = 10, Scale = 0, Data = 6 19 10:17:27 SQL Data Out: SQL Server - Column = 2, Name = nazwa, Type = fldZSTRING, Precision = 5, Scale = 0, Data = ccc 20 10:17:27 SQL Stmt: SQL Server - Fetch 21 10:17:27 SQL Stmt: SQL Server - EOF 22 10:17:27 SQL Stmt: SQL Server - Reset 23 10:17:27 SQL Execute: SQL Server - select * from dbo.proba 24 10:17:27 SQL Stmt: SQL Server - Fetch 25 10:17:27 SQL Data Out: SQL Server - Column = 1, Name = id, Type = fldINT32, Precision = 10, Scale = 0, Data = 1 26 10:17:27 SQL Data Out: SQL Server - Column = 2, Name = nazwa, Type = fldZSTRING, Precision = 5, Scale = 0, Data = lll 27 10:18:40 SQL Stmt: SQL Server - Reset 28 10:18:40 SQL Stmt: SQL Server - Close 29 10:18:40 SQL Stmt: SQL Server - Close 30 10:18:40 SQL Connect: SQL Server - Disconnect GENERAL 31 10:18:41 Log started for: Delphi 4
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: import graph.*..... i moje lamerstwo..
Użytkownik "Daniel Żołopa" <zol@student.uci.agh.edu.plnapisał w wiadomości (...) nie bardzo rozumiem mechanizmu importu, w przykladzie uzycia mam import graph.*; Moze mi ktos powiedziec gdzie powiny sie znalezc pliki klas (nie wiem czy to te *.java, czy *.class) aby dzialal mechanizm imporu. (...)
Klasy javy można organizować w tzw. pakiety (packages). Pakiet to pewna hierarchiczna struktura klas, którą tworzy się poprzez odpowiednie zorganizowanie adekwatnej struktry katalogów i plików. W skład pakietu wchodzą oczywiście pliki class a nie java (te ostatnie są źródłem, te pierwsze skompilowanymi klasami). Organizacja klas w hierarchiczne pakiety ma wiele powodów, np. wygodę użycia, unikanie powtórzeń nazw klas, etc. Z tego ostatniego powodu nazwy pakietów poprzedza się odwróconą domeną własnej firmy czy organizacji. W Twoim wypadku mogłoby to być pl.edu.agh.uci jako przedrostek. Dalsza organizacja pakietów to już decyzja programisty. Przykładowo napisałeś klasę Date, która odpowiada za datę. Jednocześnie w pakiecie java.util oraz java.sql także znajdują się takie klasy, ale przedrostki pozwalają je rozróżnić. Żeby skorzystać z klas bez ich importowania możesz używać ich pełnych nazw (tj. łacznie z nazwami pakietów), np: java.util.Date, java.sql.Date czy też pl.edy.agh.uci.zolopa.util.Date. Oczywiście takie rozwiązanie jest mało wygodne, więc wystarczy dorzucić import java.util.* --- dzięki temu możesz pisać po prostu Date. Kompilator przeszuka odpowiednie importy i odnajdzie klasy, które nie mają pełnych nazw. Gorzej, jeśli zaimportowałeś jednocześnie pakiety java.util.* i java.sql.* --- wtedy użycie Date spowoduje błąd kompilatora, gdyż ten nie będzie wiedział, klasy z jakiego pakietu użyć (jak napisałem, klasa ta jest w obu pakietach). Wtedy możesz znowu powrócić do używania pełnej nazwy klasy (razem z nazwą pakietu) albo dopisać explicite import klasy Daty z określonego pakietu, np. import java.sql.Date --- wtedy odwołanie do klasy Date będzie tłumaczone przez kompilator na odwołanie do klasy java.sql.Date, mimo że będzie też zaimportowany pakiet java.util.*. Jeżeli jednak potrzebujesz w danej klasie używać jednocześnie dwóch różnych klas o takich samych nazwach, to nie unikniesz odwoływania się od pełnej ich nazwy. Wszystkie pliki klas powinny się znajdować w CLASSPATH. Teoretycznie może to być dowolne miejsce na dysku, przy czym trzeba wtedy odpowiednio zmodyfikować powyższą zmienną, w praktyce jednak wystarczy stworzyć z nich jara i wrzucić go do jre/lib/ext. Jeżeli jednak wygodniej Ci jest korzystać z rozpakowanych klas, to musisz zatroszyć się o odpowiednie ustawienie CLASSPATH czy też podanie ścieżki do tych klas podczas uruchamiania czy kompilowania. Ponieważ nie używam JBuildera, nie potrafię Ci powiedzieć, gdzie konkretnie powinieneś coś ustawić, ale mam nadzieję że uzbrojony w nową wiedzę sam sobie z tym poradzisz 8) Pozdrawiam, Cromax
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: konwersja daty
On 24 Wrz, 13:36, "pvsp" <pvsp.SKA@gazeta.plwrote: Pietrina <pietr@orange.plnapisał(a):
| On 24 Wrz, 13:25, Pietrina <pietr@orange.plwrote: | On 24 Wrz, 13:20, "pvsp" <pvsp.SKA@gazeta.plwrote: | Peter <pkiry@o2.plnapisa=B3(a): | | On 24 Wrz, 13:05, "pvsp" <p@NOSPAM.gazeta.plwrote: | | Witam, | | Mam date w takiej postaci 2007-09-24 12:58:46 przy czym bardzo waz= | ne sa =3D | | te | | godz, potzrebuje to skonwertowac na sql date. Najprosciej zrobic to= | tak: | | java.sql.Date(requestDate.getTime()) ale problem jest z obiektem Da= | te, jak | | zbudowac z takiego stringa obiekt Date zeby zachowac te godziny ? | | Napisalem sobie metode: | | public static Date convertStringToDateLong(String suggested= | Date) =3D | | throws | | Exception { | | suggestedDate =3D3D suggestedDate.substring(0, 10); | | SimpleDateFormat formatter =3D3D new SimpleDateForm= | at("dd M=3D | | MM yyyy hh:mm:ss"); | | TimeZone zone =3D3D TimeZone.getTimeZone("GMT"); | | Calendar cal =3D3D Calendar.getInstance(zone); | | formatter.setCalendar(cal); | | return formatter.parse(suggestedDate); | | } | | no ale niestety nie dziala, wiem jak zrobic z sama data natomiast d= | la mnie | | wazne jest aby miec godz,minuty i sekundy w BD | | -- | | Wys=3DB3ano z serwisu Usenet w portalu Gazeta.pl -http://www.gazet= | a=2Epl/use=3D | | net/ | | Powinienes wykorzystac java.sql.Timestamp. | | Masz wtedy: | | new java.sql.Timestamp(new java.util.Date().getTime()); | | Pozdrawiam, | | Pietrina. | tak tylko ja musze najpierw z tego stringa ("2007-09-24 12:58:46") zbud= | owac | prawidlowo obiekt java.util.Date i wlasnie z tym mam problem | -- | Wys=B3ano z serwisu Usenet w portalu Gazeta.pl -http://www.gazeta.pl/u= | senet/ | A skad pobierasz t=B1 dat=EA?? | Czy pochodzi to mo=BFe z bazy danych?? | Spr=F3buj tak: | formatter =3D new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); | Date date =3D (Date)formatter.parse("2007-09-24 12:58:46"); | Pozdrawiam, | Pietrina. ten sam problem, co prawda utworzyl obiekt Date ale gubi mi godzine i mam cos takiego 2007-09-24 00:00:00 -- Wysłano z serwisu Usenet w portalu Gazeta.pl -http://www.gazeta.pl/usenet/
U mnie działa tak. DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = (Date)formatter.parse("2007-09-24 12:58:46"); System.out.println(date); //Wyrzuci: Mon Sep 24 12:58:46 CEST 2007
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Dodawanie pustego ciągu jako typ Date do tablicy w bazie danych POMOCY
moze podaj desc tabeli i polecenie sql ktore generujesz.. bedzie latweij pomoc
..::WojT::..
TABELA create table zgloszenie( id_zglosz int unsigned not null auto_increment primary key, id_trans int unsigned not null, id_zwierz int unsigned not null, data_nast_wiz date, objawy varchar(255), diagnoza varchar(255), leczenie varchar(255), uwagi varchar(255)); KOD public void dodaj(int aKlientid, String data, int idzwierz, String datanast, String objawy, String diagnoza, String leczenie, String uwagi) { try { java.sql.Date date = new java.sql.Date(new java.text.SimpleDateFormat("dd-MM-yyyy").parse(data).getTime()); weterynarz wet = new weterynarz(); ps = wet.conn.prepareStatement("insert into transakcja values(?,?,?)"); ps.setNull(1, java.sql.Types.NULL); ps.setInt(2, aKlientid); ps.setDate(3, date); ps.executeUpdate(); ps = wet.conn.prepareStatement("select count(*) from transakcja"); rs = ps.executeQuery(); rs.next(); int idtrans = rs.getInt(1); //********************** TO TUTAJ **************** if(!datanast.equals("__-__-____")) date = new java.sql.Date(new java.text.SimpleDateFormat("dd-MM-yyyy").parse(datanast).getTime()); ps2 = wet.conn.prepareStatement("insert into zgloszenie values(?,?, ?, ?, ?, ?, ?, ?)"); ps2.setNull(1, java.sql.Types.NULL); ps2.setInt(2, idtrans); ps2.setInt(3, idzwierz); // if(datanast.equals("__-__-____")) // ps.setDate(4, java.sql.Types.NULL); // else ps2.setDate(4, date); ps2.setString(5, objawy); ps2.setString(6, diagnoza); ps2.setString(7, leczenie); ps2.setString(8, uwagi); ps2.executeUpdate(); } catch (Exception e) { JOptionPane.showMessageDialog(null, "Wyst¹pi³ b³¹d programu. Operacja nie powiod³a siê."+e.toString(), "B³¹d", JOptionPane.ERROR_MESSAGE); } }
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: JAVA ORACLE INSERT
cze mam jedna tabele z kolumnami typu date, char, number, varchar. uzyskuje polaczenie i wykonuje insert:
Statement stmt = null; stmt = con.createStatement(); stmt.executeQuery("SELECT * FROM raw.drt"); stmt.executeUpdate("Insert into raw.drt values (" + sqlDate + "," + ch + "," + licz + "," + kom + ")"); gdzie: Date date = new Date(); java.sql.Date sqlDate; sqlDate = new java.sql.Date(date.getTime()); char ch = 'g'; int licz = 122; String kom = "¹¥ÌĂĂŞĂ³£ùĂóÓœŒŸ¿¯"; i otrzymuje taki exception: java.sql.SQLException: ORA-00984: w tym miejscu, kolumna jest niedozwolona     at oracle.jdbc.driver.DatabaseError.throwSqlException (DatabaseError.java:137)     at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:304)     at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:271)     at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:625)     at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:112)     at oracle.jdbc.driver.T4CStatement.execute_for_rows (T4CStatement.java:481)     at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout (OracleStatement.java:1101)     at oracle.jdbc.driver.OracleStatement.executeUpdate (OracleStatement.java:1552) co robie zle?? dzieki z gory za udzielona pomoc i wskazowki. pozdro jimmie.
skolei kiedy to robie za pomoca PreparedStatment: con.setAutoCommit(false); PreparedStatement stmt = con.prepareStatement("INSERT INTO raw.drt VALUES (?,?,?,?)"); stmt.setDate(1, sqlDate); stmt.setString(2, ch); stmt.setInt(3, licz); stmt.setString(4, kom); stmt.execute(); tu znak ch zamieniam na string.(wlasnie jak mozna char wlazyc do bazy za pomoca PreparedStatement??) to otrzymuje takie cóÂś: java.sql.SQLException: ORA-02290: naruszono wiĂŞzy kontrolne at oracle.jdbc.driver.DatabaseError.throwSqlException (DatabaseError.java:137) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:304) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:271) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:625) at oracle.jdbc.driver.T4CPreparedStatement.doOall8 (T4CPreparedStatement.java:181) at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows (T4CPreparedStatement.java:791) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout (OracleStatement.java:1101) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal (OraclePreparedStatement.java:2901) at oracle.jdbc.driver.OraclePreparedStatement.execute (OraclePreparedStatement.java:2992) ponownie dziekuje z gory za pomoc jak i ponownie pozdrawiam. jimmie.
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: POmocy dla początkującego!!
Witam wszystkich, Może trochę nie w temat tu piszę ale może znajdzie się ktoś, kto zna ASP. Mam taki raport: trzy pola z tego raportu tekst, data i liczba mają być wprowadzane do bazy SQL Server se stronki i chciałbym zrobić sprawdzanie czy wszystkie pola są wypełnione i czy ktoś wpisał sensowne dane: napisałem coś takiego: <html <head <titleFormularz</title </head <body bgcolor="#B0C4DE" <p<font face="Courier"<bWypełnij poniższy formularz i naciśnij "Dopisz dane"</b</font<br</p <%If Request.Form("LICZBA") <"" or Request.Form("DATA") <"" or Request.Form("TEKST") <"" then % <form action="form.asp" method="POST" <table <tr <td<font face="Courier"<bDATA:</bw formacie rrrr-mm-dd</font</td<br <td<input type="date" size="10" name="DATA"</font</td </tr <p</p <p</p <tr <td<font face="Courier"<bTEKST:</b</font</td<br <td<input type="text" size="80" name="TEKST"</font</td </tr <p</p <p</p <tr <td<font face="Courier"<bLICZBA:<b/</font</td<br <td<input type="decimall" size="10,2" name="LICZBA"</font</td </tr <p</p <p</p <tr <td colspan="2"<input type="submit" size="5" name="zapisz2" value="Dopisz dane"</font</td </tr </table </form <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "provider=SQLOLEDB;network=DBMSSOCN;UID=test;PWD=test;server=127.0.0.1;datab ase=asp" SQL = "INSERT INTO asp.dbo.asptest (Data, Opis, Wartosc) " SQL = SQL & "VALUES (" SQL = SQL & "'" & Request.Form("DATA") & "', " SQL = SQL & "'" & Request.Form("TEKST") & "', " SQL = SQL & Request.Form("LICZBA") & ")" Conn.Execute(SQL) else If Request.from("LICZBA") = "" or Request.Form("DATA") = "" or Request.Form("TEKST") = "" then Request.Write("Wprowadź wszystkie wartości") else If Err.Number = 0 Then % <A HREF="form.asp"Wprowadź właściwy typ danych</A <%Else% <p<aDane zostały wprowadzone</a</p <%End If% <%End If% <%End If% </body </html Otrzymuję błąd: "Obiekt nie obsługuje tej właściwości lub metody.: 'Request.from'" wskazujący na linię 51 czyli If Request.from("LICZBA") = "" or Request.Form("DATA") = "" or Request.Form("TEKST") = "" then Będę wdzięczny za wszelki uwagi
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Frormularz w ASP?
Mam taki problem: robię formularz, który ma wprowadzać dane do SQL Servera - i wprowadzał w uproszczonej postać, ale teraz chciałbym żeby mi sprawdzał czy wszystkie pola są wypełnione i czy wpisałem włąściwe dane (typy danych: tekst, liczbę i datę) - jak wpsze się niewłaściwe dane to SQL Server tego i tak nie łyknie ale chodzi mi o to żeby wywalał jakiś sensowny komunikat. Zrobiłem to w dwóch plikach formularz w *.htm i ładowanie danych z komunikatami w *.asp Tu jest kod pliku htm: WYWALA MI BŁĄD W FUNKCJI SPRAWDZ- debuger mówi że oczekiwano obiektu ')' ???? Jak go ominę to po naciśnięciu "Dopisz Dane" powinno być sprawdzanie czy pola są puste ale wtedy wskazuje na błąd w sprawdzaniu i wskazuje na: onsubmit="JavaScript: return sprawdz();"Może problem jest lamerski dla kogoś co już trochę programuje ale ja dopiero zaczynam WYROZUMIAŁOŚCI!! Niżej jest kod tego pliku.asp do którego się odwołuję może ktoś podpowie jak to wszystko poukładać w casłość żeby chodziło Z góry DZIĘKI! <HTML <HEAD <SCRIPT LANGUAGE="JavaScript" <!-- function sprawdz(){ if((Request.Form("LICZBA") = "") or (Request.Form("DATA") = "") or (Request.Form("TEKST") = "")){ alert("Wypełnij wszystkie pola!"); return(false); } return(true); } //-- </SCRIPT </HEAD <BODY <p<font face="Courier"<bWypełnij poniższy formularz i naciśnij "Dopisz dane"</b</font<br</p <form action="zapisz2.asp" method="POST" onsubmit="JavaScript: return sprawdz();" <table <tr <td<font face="Courier"<bDATA:</bw formacie rrrr-mm-dd</font</td<br <td<input type="date" size="10" name="DATA"</font</td </tr <tr <td<font face="Courier"<bTEKST:</b</font</td<br <td<input type="text" size="80" name="TEKST"</font</td </tr <tr <td<font face="Courier"<bLICZBA:<b/</font</td<br <td<input type="decimall" size="10,2" name="LICZBA"</font</td </tr <tr <td colspan="2"<input type="submit" size="5" name="zapisz2" value="Dopisz dane"</font</td </tr </table </form </BODY </HTML *********** plik ASP*********** <html <head <titleFormularz</title </head <body <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "provider=SQLOLEDB;network=DBMSSOCN;UID=test;PWD=haslo;server=127.0.0.1;data base=asp" SQL = "INSERT INTO asp.dbo.asptest (Data, Opis, Wartosc) " SQL = SQL & "VALUES (" SQL = SQL & "'" & Request.Form("DATA") & "', " SQL = SQL & "'" & Request.Form("TEKST") & "', " SQL = SQL & Request.Form("LICZBA") & ")" Conn.Execute(SQL) % <% If Err.Number = 0 Then % <A HREF="http://numerek_IP/testasp/jacek.htm"Informacje zostaly dopisane do bazy danych</A <%Else% <font face="Courier"Blad dopisywania informacje do bazy danych : <br <small<%=Err.Description%</small </font <%End If% </body </html
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: Delphi, Interbase, select
Najlepszym podrecznikiem jest podrecznik z pakietu zarowno papierowy (od wersji proffesional wzwyz) jak rowniez elektroniczny (dokladnie to samo w formie acrobat reader). Wyciaganie znakow z kolumny moze sie odbyc poprzez pascala lub w normalnym serwerze w procedurze wbudowanej (nie ma tego w lokalnym). Jedyne co mozna osiagnac to select wybierajacy wiersze spelniajace warunek (np. za pomoca wilcardow _ i %). Mozna rowniez uzyc roznych metod porownania. Fragment podrecznika: All SQL data manipulation statements support SQL expressions, SQL syntax for comparing and evaluating columns, constants, and host-language variables to produce a single value. In the SELECT statement, for example, the WHERE clause is used to specify a search condition that determines if a row qualifies for retrieval. That search condition is an SQL expression. DELETE and UPDATE also support search condition expressions. Typically, when an expression is used as a search condition, the expression evaluates to a Boolean value that is True, False, or Unknown. SQL expressions can also appear in the INSERT statement VALUE clause and the UPDATE statement SET clause to specify or calculate values to insert into a column. When inserting or updating a numeric value via an expression, the expression is usually arithmetic, such as multiplying one number by another to produce a new number which is then inserted or updated in a column. When inserting or updating a string value, the expression may concatenate, or combine, two strings to produce a single string for insertion or updating. The following table describes the elements that can be used in expressions: Element Description Column names Columns from specified tables, against which to search or compare values, or from which to calculate values. Host-language variables Program variables containing changeable values. Host- language variables must be preceded by a colon (:). Constants Hard-coded numbers or quoted strings, like 507 or Tokyo . Concatenation operator ||, used to combine character strings. Arithmetic operators +, -, *, and /, used to calculate and evaluate values. Logical operators Keywords, NOT, AND, and OR, used within simple search conditions, or to combine simple search conditions to make complex searches. A logical operation evaluates to true or false. Usually used only in search conditions. Comparison operators <, , <=, =, =, and <, used to compare a value on the left side of the operator to another on the right. A comparative operation evaluates to true or false.Other, more specialized comparison operators include ALL, ANY, BETWEEN, CONTAINING, EXISTS, IN, IS, LIKE, NULL, SINGULAR, SOME, and STARTING WITH. These operators can evaluate to True, False, or Unknown.Usually used only in search conditions. COLLATE clause Comparisons of CHAR and VARCHAR values can sometimes take advantage of a COLLATE clause to force the way text values are compared. Stored procedures Reusable SQL statement blocks that can receive and return parameters, and that are stored as part of a database s metadata. Subqueries A SELECT statement, usually nested within the WHERE clause to return or calculate values against which rows searched by the main SELECT statement are compared Parentheses Group related parts of expressions that should be processed separately to produce a single value which is then used within the expression. Parenthetical expressions can be nested. Complex expressions can be constructed by combining simple expressions in different ways. For example the following WHERE clause uses a column name, three constants, three comparison operators, and a set of grouping parentheses to retrieve only those rows for employees with salaries between $60,000 and $120,000: WHERE DEPARTMENT = "Publications" AND (SALARY 60000 AND SALRAY < 120000) As another example, search conditions in WHERE clauses often contain nested SELECT statements, or subqueries. In the following query, the WHERE clause contains a subquery that uses the aggregate function, AVG(), to retrieve a list of all departments with bigger than average salaries: EXEC SQL DECLARE WELL_PAID CURSOR FOR SELECT DEPT_NO INTO :wellpaid FROM DEPARTMENT WHERE SALARY (SELECT AVG(SALARY) FROM DEPARTMENT); Zbyszek Zarzycki Borland Support Center Polska supp@bsc.com.pl Krzysztof Murkowski <mu@ml.put.poznan.plnapisał(a) w artykule <32F6ED96.5@ml.put.poznan.pl... Jak w Delphi (model Interbase) napisac selecta wyciagajacego np, pierwsze 3 znaki z wierszy jakiejs kolumny, albo jeszcze lepiej znaki od 4 do 8, albo najlepiej znaki zawarte pomiedzy ograncznikami ? Czy ktos zna jakis dobry dokument n/t DSQL'a (SQL w Delphi - model Interbase), najlepiej w wersji elektronicznej ? Czy ktos moglby podrzucic jakies przyklady skomplikowanych selectow w Delphi ? -- Krzysztof Murkowski mailto:mu@ml.put.poznan.pl http://www.ml.put.poznan.pl/~murek
Przeczytaj wszystkie wypowiedzi z tego tematu
Temat: PHP & MySQL ( upload plikow binarnych )
Witam Wszystkich !!! Od jakiego czasu próbuje ( nieskutecznie ) zmusić PHP i MySQL do zapisywania plików binarnych ( konkretnie graficznych ) do bazy w polu typu blob. Znalazłem w necie skrypt autorstwa Joao Prado Maia , z założenie skrypt służy wła nie do uploadu binariów do MySQL - sęk w tym , że niezbyt chce działać. Poniżej zamieszczam tenże skrypt ( podzielony na trzy pliki ), u mnie działa następująco : - wybieram plik, submit - potwierdza że plik zassał do bazy - wypisuje stan bazy + linki do plików, poprzez które można je ciągnąć - wybieram dowolny - und puste okno W phpmyadmin widać iż utworzył jakie rekordy, jednak nie mogę ich podejrzeć. Pytanie: Czy skrypt rzeczywi cie pakuje pliki do bazy ? Jeżeli tak, to dlaczego echo $data nie wy wietla jego zawarto ci ( tzn. obrazka ), bąd też nie wywala okna do zapisu pliku ?? Z góry dziękuje za wszelkie wskazówki. Pozdrawiam Lopezzz Lope@softhome.net ps. Sorry za wielko ć postu, ale z pokrojonego niewiele by wynikało - a sprawa jest b.pilna. *********** Struktura bazy : CREATE DATABASE binary_files; CREATE TABLE tbl_Files ( id_files tinyint(3) unsigned NOT NULL auto_increment, bin_data longblob NOT NULL, description tinytext NOT NULL, filename varchar(50) NOT NULL, filesize varchar(50) NOT NULL, filetype varchar(50) NOT NULL, PRIMARY KEY (id_files) ); ************** Połączenie z bazą : open_db.inc <?php $db = mysql_connect("localhost", "binary_user", "binary_password"); mysql_select_db("binary_files", $db) or die(mysql_errno() . ": " . mysql_error() . "<br"); ? Pobranie plików : add.php <?php if ($action == "upload") { // ok, let's get the uploaded data and insert it into the db now include "open_db.inc"; if (isset($binFile) && $binFile != "none") { $data = addslashes(fread(fopen($binFile, "r"), filesize($binFile))); $strDescription = addslashes(nl2br($txtDescription)); $sql = "INSERT INTO tbl_Files "; $sql .= "(description, bin_data, filename, filesize, filetype) "; $sql .= "VALUES ('$strDescription', '$data', "; $sql .= "'$binFile_name', '$binFile_size', '$binFile_type')"; $result = mysql_query($sql); //, $db); //mysql_free_result($result); // it's always nice to clean up! echo "Thank you. The new file was successfully added to our database.<br<br"; echo "<a href='main.php'Continue</a"; } mysql_close(); } else {
? <HTML <BODY <FORM METHOD="post" ACTION="add.php" ENCTYPE="multipart/form-data" <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="1000000" <INPUT TYPE="hidden" NAME="action" VALUE="upload" <TABLE BORDER="1" <TR <TDDescription: </TD <TD<TEXTAREA NAME="txtDescription" ROWS="10" COLS="50"</TEXTAREA</TD </TR <TR <TDFile: </TD <TD<INPUT TYPE="file" NAME="binFile"</TD </TR <TR <TD COLSPAN="2"<INPUT TYPE="submit" VALUE="Upload"</TD </TR </TABLE </FORM </BODY </HTML <?php }
?
******** Stan bazy : main.php <?php include "open_db.inc"; $sql = "SELECT * FROM tbl_Files "; $sql .= "ORDER BY filename ASC"; $result = mysql_query($sql, $db); $rows = mysql_num_rows($result); echo "<table
"; echo " <tr
"; echo " <tdFilename</td
"; echo " <tdType</td
"; echo " <tdSize</td
"; echo " <tdDescription</td
"; echo " <td</td
"; echo " </tr
"; for ($i = 0; $i < $rows; $i++) { $data = mysql_fetch_object($result); // since our script is very small, i'm not going to escape out to html mode here echo " <tr
"; echo " <td$data-filename</td
"; echo " <td$data-filetype</td
"; echo " <td$data-filesize</td
"; echo " <td" . stripslashes($data-description) . "</td
"; echo " <td( <a href='download.php?id=$data-id_files'Download</a)</td
"; echo " </tr
"; }
mysql_free_result($result); mysql_close($db); ? ******************* Download plików z bazy : download.php <?php if ($id_files) { include "open_db.inc"; $sql = "SELECT bin_data, filetype, filename, filesize FROM tbl_Files WHERE id_files=$id_files"; $result = @mysql_query($sql); //, $db); $data = mysql_result($result, 1, "bin_data"); $name = mysql_result($result, 1, "filename"); $size = mysql_result($result, 1, "filesize"); $type = mysql_result($result, 1, "filetype"); //echo "type=$type size=$size name=$name <br<br"; header("Content-type: $type"); header("Content-length: $size"); header("Content-Disposition: attachment; filename=$name"); header("Content-Description: PHP Generated Data"); echo $data; echo "type=$type size=$size name=$name <br<br"; }
? ... that's all
Przeczytaj wszystkie wypowiedzi z tego tematu
zanotowane.pldoc.pisz.plpdf.pisz.pljakub791.xlx.pl
Strona 3 z 3 • Wyszukano 194 rezultatw • 1, 2, 3
|